Developers or publishers need to invest a little into figuring out WHY people pirate, do some research about it, and then when they know the reasons, they can act on that. So instead of dumping money into the bottomless pits known as SecuROM and the like, they should use it to better understand the problem.
If you figure out what portion of pirates do so because they can't afford to pay full price, maybe you could figure out an alternative way for them to pay. And if you figure out what portion of pirates do so out of sheer spite, and what is the cause of this spite, maybe you can react to that too. If you conclude it's worth it.
Or just go the evil way and do what Shamus Young wrote about: clicky [http://www.escapistmagazine.com/articles/view/columns/experienced-points/7467-Experienced-Points-Impossible-to-beat-DRM]. Sure, players would be outraged, but the dust would eventually settle and we will accept it and move on. Surely, if Blizzard did such a thing, no one would even mind. I've already read that they plan on making Starcraft 2 use a similar approach to Ubi's 'must be online' thing. I'm positive no one would dare say a thing about it.