Share via


Specifica dell'ordine di registrazione automatica

Si noti che non è possibile specificare l'ordine in cui il programma di installazione registra o annulla la registrazione automatica delle DLL usando le azioni SelfRegModules e SelfUnRegModules . Queste azioni registrano tutti i moduli elencati nella tabella SelfReg. Il programma di installazione non registra automaticamente i file .exe.

Per specificare l'ordine in cui il programma di installazione registra o annulla la registrazione dei moduli, è necessario usare due azioni personalizzate per ogni modulo. Un'azione personalizzata per DllRegisterServer e un secondo per DllUnregisterServer. Queste azioni personalizzate devono quindi essere create nella tabella InstallExecuteSequence nel punto della sequenza in cui la DLL deve essere registrata o non registrata.

Nell'esempio seguente viene illustrato come creare il database per pianificare la registrazione automatica di una DLL in un determinato punto della sequenza di azioni.

Tabella file (parziale)

File Componente_ FileName Sequenza
mydll myComponent Mydll.dll 13

 

Tabella componente (parziale)

Componente Componentid Directory_ KeyPath
myComponent {a GUID} myFolder mydll

 

Tabella directory

Directory Directory_Parent DefaultDir
TARGETDIR SourceDir
myFolder TARGETDIR myFolder| Cartella personale

 

Tabella CustomAction

Azione Tipo Source (Sorgente) Destinazione
mydllREG 3170 myFolder "[SystemFolder]msiexec" /y "[#mydll]"
mydllUNREG 3170 myFolder "[SystemFolder]msiexec" /z "[#mydll]"

 

Tabella InstallExecuteSequence (parziale)

Azione Condizione Sequenza
SelfUnregModules 2200
mydllUNREG $myComponent=2 2201
RemoveFiles 3500
InstallFiles 4000
SelfRegModules 6500
mydllREG >$myComponent 2 6501