Hmm, sometimes certain programs actually require a hardware 'dongle' to be connected to a port. Not sure how common this is these days, but they used to do it with programs like Autosketch and Cubase. This can be pretty difficult to combat; generally, like everyone here has already said, you need to pick the program apart and see if you can figure out where it checks if it's authorised and patch it so it always thinks it is.
Often, this is just not worth the hassle. For many types of program you'll probably find there's a free alternative (see
http://freshmeat.net/ for example).