/DELAY (Retarder les paramètres d’importation de chargement)

Options de l’éditeur de liens pour contrôler le chargement différé des DLL au moment de l’exécution.

Syntaxe

/DELAY:UNLOAD
/DELAY:NOBIND

Notes

L’option /DELAY contrôle le chargement différé des DLL :

  • Le /DELAY:UNLOAD qualificateur indique à la fonction d’assistance de delay-load de prendre en charge le déchargement explicite de la DLL. La table IAT (Import Address Table) est réinitialisée à sa forme d'origine, ce qui invalide les pointeurs IAT et entraîne leur remplacement.

    Si vous ne sélectionnez /DELAY:UNLOADpas, un appel à __FUnloadDelayLoadedDLL échouera.

  • Le /DELAY:NOBIND qualificateur indique à l’éditeur de liens de ne pas inclure d’IAT pouvant être lié dans l’image finale. L'option par défaut consiste à créer la table IAT pouvant être liée pour les DLL chargées en différé. L’image résultante ne peut pas être liée statiquement. (Les images avec des IAT pouvant être liées de manière statique avant l’exécution.) Pour plus d’informations, consultez /BIND.

    Si la DLL est liée, la fonction d’assistance tente d’utiliser les informations liées au lieu d’appeler GetProcAddress sur chacune des importations référencées. Si l’horodatage ou l’adresse préférée ne correspond pas à celles de la DLL chargée, la fonction d’assistance suppose que l’IAT lié est obsolète. Il continue comme si l’IAT lié n’existe pas.

    /DELAY:NOBIND fait en sorte que votre image de programme soit plus grande, mais peut accélérer le temps de chargement de la DLL. Si vous n’avez jamais l’intention de lier la DLL, /DELAY:NOBIND empêche la génération de l’IAT lié.

Pour spécifier des DLL pour retarder le chargement, utilisez l’option /DELAYLOAD .

Pour définir cette option de l'éditeur de liens dans l'environnement de développement Visual Studio

  1. Ouvrez la boîte de dialogue Pages de propriétés du projet. Pour plus d’informations, consultez Définir les propriétés du compilateur et de la génération.

  2. Sélectionnez la page de propriétés Avancées de l’Éditeur >de propriétés>de configuration.

  3. Modifiez la propriété DLL chargée du délai de déchargement ou la propriété DLL chargée de retard unbind. Choisissez OK ou Appliquer pour enregistrer vos modifications.

Pour définir cette option de l'éditeur de liens par programmation

Voir aussi

Informations de référence sur l’éditeur de liens MSVC
Options de l’éditeur de liens MSVC