I think that this is about all that you can do in C++ that you can't do in VB

Handle Messages from a different Program.

Run your own code in another Program.

Set a Global Hook.

I'm working on the first 2, and I think I'm getting somewhere, but writing a C++ dll is probably easier.

There's been talk of MFC which some people object to, in VB you are using MFC without even knowing it (some of you probably had an inkling) if you try to use GetBitmapDimesionEx on a stdPicture bitmap in VB, it won't work, it's a fake bitmap in there, I hate it I want a real Bitmap. But VB is so simple to use, Trying to do COM in C++ is a nightmare whereas in VB you can set up a COM object in seconds, again withouut even knowing you're doing it. Which would you prefer in a fight, a machine gun or a MIG Fighter Jet, I'd prefer the gun because I have no Idea how to work the MIG.