Why don't you add a key to "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce" that will execute a function in your DLL, like: rundll32.exe yourdllpath.dll,YourFunc_RunDLL YourFunc_RunDLL must be declared in your DLL like this: int YourFunc_RunDLL(HWND parent, HINSTANCE hinst, LPCTSTR params) { return 0; } You may need to tell the user to restart his computer for this to work. I know there is a system function you can call to make the OS execute the RunOnce entries, but don't have that in my mind right now! My homepage is down cos' I violated their Terms and Conditions.