¿Cuál es la diferencia entre los parámetros / n y / i de RegSvr32.exe?

Para registrar un servidor COM, ejecutamos algo así como en modo elevado:

regsvr32.exe com.dll

Para realizar el registro por usuario, ejecute en cuenta de usuario:

regsvr32.exe /n /i:user com.dll

regsvr32.exe soporta estos parámetros:

/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)

Cuando creamos un servidor COM en Delphi, estos métodos fueron exportados:

exports
  DllGetClassObject,
  DllCanUnloadNow,
  DllRegisterServer,
  DllUnregisterServer,
  DllInstall;

Me doy cuenta de que esto sucederá:

"regsvr32.exe com.dll" invoke DllRegisterServer."regsvr32.exe / u com.dll" invoke DllUnregisterServer."regsvr32.exe / n / i: user com.dll" invoke DllInstall."regsvr32.exe / u / n / i: user com.dll" invoke DllInstall.

Estoy confundido con los parámetros / n y / i, así como DllUnregisterServer y DllInstall. ¿Hay algo diferente?

Además, ¿por qué "/ u / n / i: user" invoca Dllinstall? Noté que se eliminó la entrada de registro correspondiente en "HKEY_CURRENT_USER \ Software \ Classes".

Respuestas a la pregunta(2)

Su respuesta a la pregunta