If my impact won't remove it, I use a chain wrench to hold the pulley from turning. Since they're usually overtorqued when I do it this way, it leaves dents in the grooves of the pulley, so you have to file them smooth again, but that's trivial really.
http://buy1.snapon.com/catalog/item....re&dir=catalog
that's a small version of what I use. I got one that has a handle almost 3 ft long, so it's easy to brace it against the floor or a motor mount when loosening the crank bolt, and against the radiator support (or floor) when tightening. mine cost about $15 at harbor freight but for some reason i can't find it on their website.