Je veux savoir Quels sont les exact
des différences entre les deux .NET dll et un normal dll.
Première question, ce qui est "normal DLL" appelé? J'utilise le mot "normal". Mais il ne semble pas l'droit?
Parce que les deux suivent le format PE. Ouais, je suis d'accord que .NET DLL a une section supplémentaire. Autre que celui de toute autre chose est le même.
Je sais aussi que dans .NET code est converti en CIL/MSIL alors qu'est-ce que rempli en .texte de la section de fichier PE? MSIL? car il n'y a pas de code binaire. Mais si ils ont mis MSIL dans .section de texte. Chargeur suppose que c'est un code binaire et permet de l'exécuter. Ce qui n'est pas le cas. Ce qui me manque?
Je suis surpris de savoir que
Même la DLL d'extension de fichier est artificielle. Vous pouvez avoir les Dll avec entièrement différentes extensions-pour exemple .Contrôles OCX et de Contrôle Panneau applets (.Le CPL fichiers) sont des Dll.
Quoi d'autre extensions sont utilisées pour les fichiers DLL?
Mais je peux comprendre la raison de l'utilisation de différentes extensions. Pourquoi n'ont-ils pas suivre faire la même chose dans le cas d' .NET DLL? ils pourraient bien servir une nouvelle extension pour la différencier de la "normale" de la DLL. Ils ont même un nom différent (ASSEMBLY
) pour les dll dans .NET, mais ne pouvait pas changer l'extension. hein?
Une autre question: qu'est-Ce que l'enregistrement de DLL? ils utilisent regsvr32.exe pour cela. droit? Je l'ai remarqué quand j'ai installé Windows XP SP3. Après l'installation et avant le redémarrage de windows, j'ai vérifié liste de démarrage et trouvé beaucoup d' regsvr32.exe
des entrées avec beaucoup de Dll.
N'hésitez pas à plonger dans autant de profondeur que vous le souhaitez. J'apprends sur les linkers,des chargeurs,des formats binaires. Je suis familier avec le PE, le format de fichier également.