Jaka jest różnica między parametrami / n i / i RegSvr32.exe?
Aby zarejestrować serwer COM, uruchamiamy coś w trybie podwyższonym:
regsvr32.exe com.dll
Aby przeprowadzić rejestrację na użytkownika, wykonaj na koncie użytkownika:
regsvr32.exe /n /i:user com.dll
regsvr32.exe obsługuje następujące parametry:
/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)
Podczas tworzenia serwera COM w Delphi metody te zostały wyeksportowane:
exports
DllGetClassObject,
DllCanUnloadNow,
DllRegisterServer,
DllUnregisterServer,
DllInstall;
Zauważam, że tak się stanie:
„regsvr32.exe com.dll” wywołuje DllRegisterServer.„regsvr32.exe / u com.dll” wywołuje DllUnregisterServer.„regsvr32.exe / n / i: user com.dll” wywołuje DllInstall.„regsvr32.exe / u / n / i: user com.dll” wywołuje DllInstall.Jestem mylony z parametrami / n i / i oraz DllUnregisterServer i DllInstall. Czy jest coś innego?
Ponadto, dlaczego „/ u / n / i: użytkownik” wywołuje Dllinstall? Zauważam, że odpowiedni wpis rejestru w „HKEY_CURRENT_USER Software Classes” został usunięty.