J'essaie de faire fonctionner un de nos anciens jeux pour pouvoir le relancer. Il fonctionne autre que le fait que lorsque je lance d'abord l'exécutable, je reçois le message d'erreur suivant:DLL avec un chemin PDB non valide
«Il n'y a pas de disque dans le lecteur S'il vous plaît insérez un disque dans le lecteur \ Device \ Harddisk4 \ DR4 »
Ensuite, quand je clique sur "Annuler" ou "Continuer", il continue à charger le jeu et fonctionne bien.
J'ai donc chargé l'exe dans un désassembleur, et il s'avère être en essayant de charger les symboles pour granny2.dll. Voici le callstack:
callstack image http://www.dracan.co.uk/temp/grannybugcallstack.png
Il essaie de charger granny2.pdb (qui fera partie de la bibliothèque Granny 3D) à partir d'un lecteur/répertoire Je n'ai pas.
Dans notre répertoire de jeu, il y a granny2.dll. Alors j'ai couru que grâce à l'utilitaire dumpbin de Visual Studio, et ce chemin est fait référence dans ce:
Debug Directories
Time Type Size RVA Pointer
-------- ------ -------- -------- --------
40493D28 cv 37 00000000 5A400 Format: NB10, 3FF4AC61, 32, h:\build\granny\release\rt\granny2.pdb
Je pris quelques versions de cette DLL à partir de diverses sources en ligne, et ils semblent tous avoir le même chemin PDB dans le DLL
Quelqu'un peut-il penser à contourner ce message d'erreur?
Je cours Windows7. Un collègue exécute Vista et vient juste de commencer à le voir mais l'a exécuté la semaine dernière sans avoir l'erreur. Malheureusement, il ne peut pas penser à tout ce qui a changé sur son ordinateur depuis. Un autre collègue qui exécute XP n'a pas cette erreur du tout
Merci pour toute aide avec ceci,
Dan.
Je ne comprends pas. Cette pile d'appels est tout au sujet de la bibliothèque d'aide de débogage; Est-ce que cela n'arrive que quand il est débogué? – Luke
Non, cela arrive aussi du débogueur. Je l'ai juste chargé dans un désassembleur pour découvrir ce que le code appelait pour faire apparaître cette boîte de message. Une fois cette boîte de message apparue, j'ai appuyé sur le bouton de désassemblage, et c'est la callstack que ça m'a donné. Peut-être que c'est un harcèlement rouge - mais c'est le même message d'erreur dans ou hors du débogueur cependant. – Dan
Donc le jeu lui-même essaie de charger ses propres symboles de débogage? Cela me semble un peu étrange. Quel code fait cela - le jeu lui-même ou la bibliothèque Granny 3D? – Luke