Utilisation d’assemblys côte à côte en tant que ressource
Vous pouvez ajouter un manifeste à une application en tant que ressource dans le fichier d’en-tête exécutable binaire de l’application. La valeur du MANIFEST_RESOURCE_ID détermine comment les dépendances d’assembly côte à côte décrites dans le manifeste sont utilisées par le chargeur.
Si vous définissez le MANIFEST_RESOURCE_ID sur 1, le chargeur utilise les dépendances d’assembly côte à côte spécifiées dans le manifeste comme processus par défaut. Tous les plug-ins utilisent également ce processus par défaut.
Le tableau suivant récapitule la façon dont le chargeur utilise le manifeste pour différentes valeurs de MANIFEST_RESOURCE_ID lorsque l’application est compilée avec l’indicateur -DISOLATION_AWARE_ENABLED. Notez que les valeurs 1 à 16 sont réservées pour une utilisation par Windows XP. Un développeur peut utiliser d’autres valeurs s’il souhaite gérer les contextes d’activation à l’aide des fonctions décrites dans la référence du contexte d’activation.
Valeur de MANIFEST_RESOURCE_ID | Le manifeste spécifie la valeur par défaut du processus ? | Utilisez-vous pour les importations statiques ? | Vous utilisez pour un EXE ? | Utilisez-vous pour une DLL ? | Utilise la version côte à côte des assemblys s’ils sont compilés avec -DISOLATION_AWARE_ENABLED ? |
---|---|---|---|---|---|
1 | Oui | Oui | Oui | Non | Oui |
2 | Non | Oui | Oui | Oui | Oui |
3 | Non | Non | Oui | Oui | Oui |
MANIFEST_RESOURCE_ID 1 doit être utilisé pour les applications qui n’hébergent pas de plug-ins. Utilisez MANIFEST_RESOURCE_ID 1 lorsque toutes les parties de l’application doivent utiliser la version de l’assembly côte à côte spécifié dans le manifeste. Pour plus d’informations, consultez Activation d’un assembly dans une application sans extensions.
MANIFEST_RESOURCE_ID 2 doit être utilisé pour les applications qui hébergent des contrôles ou des plug-ins tiers. Dans ce cas, le manifeste affecte tous les assemblys côte à côte chargés par le chargement statique, les appels à DllMain et les appels redirigés par -DISOLATION_AWARE_ENABLED. Pour plus d’informations, consultez Activation d’un assembly dans une application hébergeant une DLL, une extension ou un Panneau de configuration.
MANIFEST_RESOURCE_ID 3 doit être utilisé pour rediriger les appels par -DISOLATION_AWARE_ENABLED uniquement. Le chargement par d’autres méthodes n’est pas affecté.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour