2010-10-24 2 views

Répondre

3

L'exécution ne tentera pas de référencer la DLL jusqu'à ce que vous appeliez la fonction. Si votre programme n'appelle jamais la méthode qui référence la DLL manquante, il n'y aura pas d'erreur.

+0

Est-ce un comportement par contrat ou juste un détail d'implémentation de la version d'exécution actuelle? – CodesInChaos

+0

Je suppose que c'est par contrat. Imaginez si le runtime devait, au démarrage du programme, essayer de résoudre toutes les méthodes externes qui pourraient être appelées par le programme. Cela prendrait beaucoup de temps, même pour un petit programme. Le compilateur JIT compile le code au premier appel, donc si vous n'appelez pas de méthode, aucun code n'est généré pour cela. S'il n'y a pas de code généré pour cela, alors il ne peut pas causer d'erreur. –