2016-08-17 17 views
0

からPythonスクリプトを実行します。これは、ビルド後のプログラムのフォルダです私はPythonスクリプトを実行して、私のCコードの一部として、C

getcwd(directory); 
ret_value = ShellExecute(NULL,NULL,"myScript.py",NULL,directory,0); 

(.dllファイルの1のスクリプトを実行します)。

フォルダから.exeを実行すると、すべてのものが機能します。

バグ: フォルダ外のプログラム.exeを検索して実行すると、スクリプトは実行されません。

msgVbug.png

検索: 私はここからそれを実行するとスクリプトが実行されません。 Capturesearch.png

+4

現在の作業ディレクトリ*のスクリプトを探していますが、これは明らかにあなたが思うものではありません。絶対パスを使用するか、絶対パスをプログラムで別の方法で検索してみてください。 –

+0

@Joachim Pileborgありがとう、実行時に絶対パスを見つけるにはどうしたらいいですか?ハードコードできないので動作しません.. – David

+0

@David **質問に答えを編集しないでください**。代わりに*独自の*答えを投稿してください(おそらく "この関数を使う"よりも完全です)。 – Bakuriu

答えて

1

GetModuleFileNameW()関数は、指定されたモジュールを含むファイルの完全修飾パスを取得します。 この方法で.dllの絶対パスを検索し、_chdirを使用して現在の作業ディレクトリをそのパスに変更できます。

関連する問題