Renommer l'exécutable provoque une erreur lors de l'exécution
-
06-07-2019 - |
Question
J'ai créé un petit démon (essentiellement une application console qui masque la console et s'exécute).
Je dois l'envoyer à un utilisateur et j'ai essayé de renommer l'exécutable avec une extension différente, en l'envoyant par courrier électronique à l'utilisateur et en lui demandant de le renommer avec le nom correct.
Cela semble fonctionner lorsque je l’envoie par mail pour le tester. Toutefois, lorsque l'utilisateur essaie d'exécuter le fichier exécutable, il génère le message d'erreur suivant:
Le démarrage de cette application a échoué car sa configuration est incorrecte. La réinstallation de l'application peut résoudre le problème.
Qu'est-ce que je fais mal?
La solution
Il vous manque des dlls.
Vous pouvez déterminer lesquels avec l'aide de Walker Dependance Walker .
Vous pouvez également installer le Package Visual Studio redistribuable (x86) ou Package Visual Studio redistribuable (x64) et qui corrigera probablement votre problème également.
Autres conseils
C'est un peu drôle ... Je viens de frapper cette erreur pour la première fois il y a quelques minutes au travail. Dans notre cas, nous utilisions une application C ++ et essayions d'exécuter l'exécutable résultant sur un autre ordinateur du réseau. Vous avez besoin de la Visual C ++ Redistender / a>.
Je suppose ici que vous utilisez Visual Studio 2008 - si vous utilisez une version différente, vous en aurez peut-être besoin. Alternativement, vous pouvez simplement copier les DLL avec l'exécutable et il fonctionnera comme ça.
Faites-moi savoir si cela ne s'applique pas ...
Demandez à l'utilisateur de vérifier que le hachage de l'exécutable est identique à celui que vous avez envoyé. Il n’est pas totalement inhabituel pour un antivirus ou d’autres programmes de modifier les exécutables de manière à déstabiliser les logiciels malveillants, mais aussi à détruire des logiciels parfaitement innocents.
Assurez-vous également qu'ils ont installé toutes les bibliothèques requises, telles que le package redistribuable VC ++ (y compris le shenaniganry msvcrt * .dll habituel).