Liaison vers le CRT dans votre projet ATL
Les bibliothèques au moment de l’exécution (CRT) C fournissent de nombreuses fonctions utiles qui peuvent faciliter la programmation pendant le développement ATL. Tous les projets ATL sont liés à la bibliothèque CRT. Vous pouvez voir les avantages et les inconvénients de la méthode de liaison dans avantages et compromis de la méthode utilisée pour lier au CRT.
Effets de la liaison au CRT sur votre image de programme
Si vous créez un lien statique vers le CRT, le code du CRT est placé dans votre image exécutable et vous n’avez pas besoin que la DLL CRT soit présente sur un système pour exécuter votre image. Si vous liez dynamiquement au CRT, les références au code de la DLL CRT sont placées dans votre image, mais pas dans le code lui-même. Pour que votre image s’exécute sur un système donné, la DLL CRT doit être présente sur ce système. Même lorsque vous liez dynamiquement au CRT, vous pouvez constater que du code peut être lié de manière statique (par exemple, DllMainCRTStartup
).
Lorsque vous liez votre image, vous spécifiez explicitement ou implicitement un point d’entrée que le système d’exploitation appelle après le chargement de l’image. Pour une DLL, le point d’entrée par défaut est DllMainCRTStartup
. Pour un EXE, c’est WinMainCRTStartup
. Vous pouvez remplacer la valeur par défaut par l’option /ENTRY Linker. Le CRT fournit une implémentation pour DllMainCRTStartup
, WinMainCRTStartup
et wWinMainCRTStartup
(point d’entrée Unicode pour un EXE). Ces constructeurs d’appels de points d’entrée fournis par CRT sur des objets globaux et initialisent d’autres structures de données utilisées par certaines fonctions CRT. Ce code de démarrage ajoute environ 25 Ko à votre image si elle est liée statiquement. S’il est lié dynamiquement, la plupart du code se trouve dans la DLL, de sorte que la taille de votre image reste petite.
Pour plus d’informations, consultez la rubrique de l’éditeur de liens /ENTRY (symbole de point d’entrée).
Options d’optimisation
L’utilisation de l’option éditeur de liens /OPT :NOWIN98 peut réduire davantage un contrôle ATL par défaut de 10 000, au détriment de l’augmentation du temps de chargement sur les systèmes Windows 98. Pour plus d’informations sur les options de liaison, consultez /OPT (Optimisations).
Voir aussi
Programmation avec ATL et le code C Run-Time
DLL et comportement de la bibliothèque runtime Visual C++