J'ai un problème avec notre exécutable. J'exécute cet exécutable C ++ 32 bits sur ma boîte de développement Windows 7 64 bits qui contient également toutes ces applications Microsoft (Visual Studio 2008 + 2010, TFS, SDK, Microsoft Office) ... Et il fonctionne toujours très bien.
Maintenant, j'ai obtenu l'installation client du même programme et on m'a demandé de le tester avec une installation propre de Windows 7. J'ai donc obtenu un VMware Windows 7 64 bits et l'ai mis à jour vers Windows 7 SP 1 (la même version que ma boîte de développeur est en train de régler). Mais alors que sur ma boîte de développeur tout va bien, le programme ne fonctionne pas avec la boîte VMware (essai de 30 jours).
Le x86 Dependency Walker me dit que les fichiers DLL suivants sont manquants:
- API-MS-WIN-CORE-COM-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
- API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
- API-MS-WIN-SHCORE-SCALING-L1-1-0.DLL
- DCOMP.DLL
- GPSVC.DLL
- IESHIMS.DLL
J'ai recherché ces fichiers DLL API-MS-WIN -... sur Google et j'ai constaté qu'ils devraient en fait déjà faire partie de Windows 7 (certains sites prétendant cependant appartenir à Windows 8 et Windows Server 2012).
J'ai déjà essayé les correctifs suggérés que j'ai trouvés, qui sont:
- exécution de 'sfc / scannow'
- installation des exécutables d'exécution de Visual Studio 2008 SP1
Mais cela n'a rien résolu. :-(
Note latérale: ma boîte de développement ne les a pas non plus et ne semble pas en avoir besoin. Par exemple, le user32.dll sur ma boîte n'est pas lié à l'un d'eux, contrairement à l'installation sur le VMware.
Une idée sur la façon de résoudre ce problème? J'ai essayé de trouver un téléchargement / correctif approprié sur les pages Microsoft, mais j'ai échoué.
Après avoir résolu mon problème, je voulais rapporter ce que j'ai découvert et je ne peux pas poster ceci comme réponse car la question a été fermée.
En fait, tous les fichiers DLL signalés manquants par l'outil Dependency Walker, à savoir ceux
* API-MS-WIN-CORE-...
les fichiers DLL de type ne faisaient pas partie du problème réel.
Dans mon cas, l'enregistrement de trois fichiers OCX était manquant et après cela, tout allait bien, mais l'outil Dependency Walker répertoriait toujours tous les mêmes fichiers DLL qu'avant même lorsque le programme fonctionnait bien maintenant.
L'essentiel: comme quelqu'un l'a dit ailleurs, l'outil est un peu daté et ne fonctionne pas toujours correctement avec un système d'exploitation plus récent. Gardez donc l'œil ouvert et ne vous trompez pas en manquant 'API-MS-WIN-CORE-COM-L1-1-0.DLL', ... le problème réside probablement entièrement ailleurs.