Share via


Uso di assembly side-by-side come risorsa

È possibile aggiungere un manifesto a un'applicazione come risorsa nel file di intestazione eseguibile binario dell'applicazione. Il valore della MANIFEST_RESOURCE_ID determina la modalità di utilizzo delle dipendenze dell'assembly side-by-side descritte nel manifesto dal caricatore.

Se si imposta il MANIFEST_RESOURCE_ID su 1, il caricatore usa le dipendenze dell'assembly side-by-side specificate nel manifesto come impostazione predefinita del processo. Tutti i plug-in usano anche questo processo predefinito.

Nella tabella seguente viene riepilogato il modo in cui il caricatore usa il manifesto per valori diversi di MANIFEST_RESOURCE_ID quando l'applicazione viene compilata con il flag -DISOLATION_AWARE_ENABLED. Si noti che i valori 1-16 sono riservati per l'uso da parte di Windows XP. Uno sviluppatore può usare altri valori se vogliono gestire i contesti di attivazione usando le funzioni descritte in Riferimento al contesto di attivazione.

Valore di MANIFEST_RESOURCE_ID Manifesto specifica il valore predefinito del processo? Usare per le importazioni statiche? Usare per un file EXE? Usare per una DLL? Usa la versione side-by-side degli assembly se compilata con -DISOLATION_AWARE_ENABLED?
1 No
2 No
3 No No

 

MANIFEST_RESOURCE_ID 1 deve essere usato per le applicazioni che non ospitano plug-in. Usare MANIFEST_RESOURCE_ID 1 quando tutte le parti dell'applicazione devono usare la versione dell'assembly side-by-side specificato nel manifesto. Per altre informazioni, vedere Abilitazione di un assembly in un'applicazione senza estensioni.

MANIFEST_RESOURCE_ID 2 deve essere usato per le applicazioni che ospitano controlli o plug-in di terze parti. In questo caso, il manifesto influisce su tutti gli assembly side-by-side caricati da caricamento statico, chiamate a DllMain e chiamate reindirizzate da -DISOLATION_AWARE_ENABLED. Per altre informazioni, vedere Abilitazione di un assembly in un'applicazione che ospita una DLL, un'estensione o Pannello di controllo.

MANIFEST_RESOURCE_ID 3 deve essere usato solo per il reindirizzamento delle chiamate da -DISOLATION_AWARE_ENABLED. Il caricamento da parte di altri metodi non è interessato.