Was ist der Unterschied zwischen den Parametern / n und / i von RegSvr32.exe?
Um einen COM-Server zu registrieren, führen wir so etwas wie im erhöhten Modus aus:
regsvr32.exe com.dll
Um eine Registrierung pro Benutzer durchzuführen, führen Sie im Benutzerkonto Folgendes aus:
regsvr32.exe /n /i:user com.dll
regsvr32.exe unterstützt diese Parameter:
/u - Unregister server
/i - Call DllInstall passing it an optional [cmdline]; when used with /u calls dll uninstall
/n - do not call DllRegisterServer; this option must be used with /i
/s – Silent; display no message boxes (added with Windows XP and Windows Vista)
Beim Erstellen eines COM-Servers in Delphi wurden folgende Methoden exportiert:
exports
DllGetClassObject,
DllCanUnloadNow,
DllRegisterServer,
DllUnregisterServer,
DllInstall;
Ich merke, dass dies passieren wird:
"regsvr32.exe com.dll" ruft DllRegisterServer auf."regsvr32.exe / u com.dll" ruft DllUnregisterServer auf."regsvr32.exe / n / i: user com.dll" ruft DllInstall auf."regsvr32.exe / u / n / i: user com.dll" ruft DllInstall auf.Ich bin mit den Parametern / n und / i sowie DllUnregisterServer und DllInstall verwechselt. Gibt es etwas anderes?
Warum ruft "/ u / n / i: user" Dllinstall auf? Ich habe festgestellt, dass der entsprechende Registrierungseintrag in "HKEY_CURRENT_USER \ Software \ Classes" entfernt wurde.