Ich muss eine ActiveX-EXE programmgesteuert registrieren und Shell (SomeActiveX.Exe/regserver) ist nicht ausreichend. Kennt jemand ein API-Äquivalent?API-Äquivalent von running SomeActiveX.Exe/regserver
Antwort
Sie können DllRegisterServer verwenden, um eine COM-Komponente programmatisch zu registrieren, wenn es sich um ein in Bearbeitung befindliches com-Objekt handelt. Hier ist ein VB6 example on MSDN.
Um ein COM-Objekt zu registrieren, das nicht in Bearbeitung ist, wird es schwierig. Siehe Exposing ActiveX Objects. Das Hello Sample zeigt einige der Optionen. Larry Osterman blogged about this für Hintergrundinformationen.
Im Allgemeinen, wenn Sie dies zu einer EXE tun müssen, wird Shell * * .EXE/regserver wird viel einfacher.
Sie könnten versuchen, regsvr32 auch verwenden. Dies sollte ausreichend sein:
Shell(SomeActiveX.Exe /regserver)
Shell(regsvr32 SomeActiveX.Exe)
Regsvr32 funktioniert nicht mit ActiveX Exe. In diesem speziellen Fall kann ich Shell nicht verwenden. – cmsjr
Ich kann etwas falsch behandeln, aber ich dachte DLLRegisterServer könnte nur für DLL und OCX verwendet werden? – cmsjr
Wow, wenn das so gut ist, bekomme ich besser meinen Refactor-Hut raus. Danke für die Ressourcen. – cmsjr