2009-02-28 4 views

Répondre

0

A moins que le dit exécutable ne prenne des arguments de ligne de commande qui spécifieront quelle fonction utiliser, je ne pense pas que cela soit possible. Cela étant dit, si vous avez créé le fichier EXE, les arguments de la ligne de commande sont un bon moyen d'implémenter la fonctionnalité que vous recherchez.

6

À moins que votre EXE ne soit un objet COM ou n'exporte spécifiquement certaines fonctions comme une DLL, cela n'est pas possible.

Pour la méthode COM jeter un oeil à ces ressources:

Pour les fonctions exportées comme une méthode dll, s'il vous plaît utiliser le module win32 de python avec l'API Win32 LoadLibrary et fonctions connexes.

Si vous avez accès au code source de EXE:

Si vous avez accès au code source de ce EXE cependant, vous devez définir des arguments de ligne de commande et une cravate qui en appelant la fonction que vous voulez appeler . Dans ce cas, vous pouvez utiliser l'appel python os.system pour démarrer votre application ou subprocess.call().

+0

Le module de sous-processus est très préféré à os.system. Je sais, c'est une plainte triviale, mais je suis une personne de trivialités. –

+0

Le module ctypes peut également être utilisé pour appeler des fonctions à partir d'une DLL, c'est facile, crossplateforme et c'est dans la bibliothèque standard. –

1

Vous ne savez pas si c'est pour Windows. Mais vous pouvez traiter un exe comme une DLL (si les fonctions sont exportées). Et ils peuvent être utilisés par d'autres programmes.

Questions connexes