Another good approach I think would be is pay people who report people that he knows is downloading pirated copies.
For example, if you know someone who downloaded a pirated copy of Windows, you get 100 dollars.
This 100 dollar eventually is paid by the person who is paying a big fine to microsoft about stealing it's software.
I use Microsoft as example, but that doesn't neccisary mean that it should be the only company doing this. I mean, with the above mentioned way, the question still remains on how they find out. And with enqruiption becomming more normal these days, it's getting more diffecult and diffecult.
With just people, friends or people you know tell on you, the problem is solved within months. Or at least a bit part of it.
I know it's more diffecult then I say above, but I think such approach will do more use against piracy, and is also usefull for those people who purchase things like it should be, because they can earn some little extra's.
Just a thought...