J'ai écrit un petit script Python qui enveloppe notre compilateur binaire (cl.exe
, le compilateur Microsoft Visual Studio C++). J'ai ensuite créé un nouveau fichier batch cl.bat
qui rend ce script Python accessible afin que je puisse exécuter cl
comme avant et il appellera silencieusement mon script wrapper au lieu du vrai programme. Pour ce que ça vaut la peine, voici mon fichier batch cl.bat
:Comment puis-je faire un script Python un drop-in pour un exécutable Windows?
@python %~dp0\wrapcl.py %*
Cela fonctionne très bien - sauf dans un cas:
Nous avons des scripts existants qui font quelque chose comme
cl >NUL 2>&1 && GOTO CL
pour déterminer si le compilateur Microsoft Visual Studio C++ est disponible. Cela casse si cl
appelle réellement mon fichier de commandes cl.bat
puisque l'appel à cl.bat
ne retourne jamais. Nous devrions utiliser call cl >NUL ...
pour cela.
Est-il possible que je peux faire mon wrapcl.py
script Python regarder comme cl.exe
pour les appelants afin que je puisse éviter de toucher nos scripts existants qui attendent cl && foo
à travailler?