Just run regsvr32 with the /s parameter at the start of your app. It will register the DLL if it is not already registered, otherwise it will do nothing.
Thanks .. I have been thinking about this ... and I can easily test for the existance of the .dll in the \system32 folder and do a try catch end try if my external program fails and then test the register .. something like that ...