C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

pythonとの連携での実行です。

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■93271 / inTopicNo.1)  pythonとの連携での実行です。
  
□投稿者/ ささき (1回)-(2019/12/01(Sun) 19:02:49)

分類:[VB.NET/VB2005 以降] 

コマンドプロンプト上から「C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py」を実行しますと正常に働きもするのですが、
VB上から下記のようにし実行をしようとしますと何故か「System.ComponentModel.Win32Exception: '指定されたファイルが見つかりません。」が出てもしまいます。

System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")

よろしくお願いします。

引用返信 編集キー/
■93272 / inTopicNo.2)  Re[1]: pythonとの連携での実行です。
□投稿者/ Hongliang (925回)-(2019/12/01(Sun) 19:05:59)
Process.Startの第1引数は実行するプログラムのパスです。プログラムに渡す引数はProcess.Startの第2引数として渡す必要があります。
引用返信 編集キー/
■93273 / inTopicNo.3)  Re[2]: pythonとの連携での実行です。
□投稿者/ ささき (2回)-(2019/12/01(Sun) 21:32:22)
No93272 (Hongliang さん) に返信
> Process.Startの第1引数は実行するプログラムのパスです。プログラムに渡す引数はProcess.Startの第2引数として渡す必要があります。

ありがとうございます。

自分ではそのようにしている積りなのです。

ちなみにコマンドプロンプトからの時とは書き方も違うのでしょうか?


引用返信 編集キー/
■93274 / inTopicNo.4)  Re[3]: pythonとの連携での実行です。
□投稿者/ Hongliang (926回)-(2019/12/01(Sun) 21:36:25)
> 自分ではそのようにしている積りなのです。
え?

> System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")
どう見ても、プログラムのパスもプログラムに渡す引数もまとめてProcess.Startの第1引数に渡しているようですが…?
引用返信 編集キー/
■93275 / inTopicNo.5)  Re[4]: pythonとの連携での実行です。
□投稿者/ ささき (3回)-(2019/12/01(Sun) 22:24:01)
No93274 (Hongliang さん) に返信
>>自分ではそのようにしている積りなのです。
> え?
> 
>>System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")
> どう見ても、プログラムのパスもプログラムに渡す引数もまとめてProcess.Startの第1引数に渡しているようですが…?

すみません。
意味が分かってません。

python.exeでtest.pyを実行しょうとしています。


ちなみにそのtest.pyは下記のようで、ファイルtest_w.txtに"New file"を書き込むものです。

path_w = r'C:\Users\***\Desktop\test_w.txt'
s = "New file"
with open(path_w, mode='w') as f:  
 f.write(s)


引用返信 編集キー/
■93276 / inTopicNo.6)  Re[5]: pythonとの連携での実行です。
□投稿者/ Hongliang (927回)-(2019/12/01(Sun) 22:35:07)
コマンドプロンプトで
> C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py
は、プログラム「〜〜\python.exe」に、引数「〜〜\test.py」を渡す、という意味になります。
これによって、python.exeが起動され、python.exeは引数として渡された〜〜\test.pyという文字列をファイル名と判断してファイルを読み込み、……(以下略)という処理になります。

つまり
> Process.Startの第1引数は実行するプログラムのパスです。
が〜〜\python.exeに相当し、
> プログラムに渡す引数はProcess.Startの第2引数として渡す必要があります。
が〜〜\test.pyに相当します。

以上の説明でお分かりいただけるでしょうか。
引用返信 編集キー/
■93277 / inTopicNo.7)  Re[6]: pythonとの連携での実行です。
□投稿者/ ささき (4回)-(2019/12/01(Sun) 23:29:24)
No93276 (Hongliang さん) に返信
> コマンドプロンプトで
>>C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py
> は、プログラム「〜〜\python.exe」に、引数「〜〜\test.py」を渡す、という意味になります。
> これによって、python.exeが起動され、python.exeは引数として渡された〜〜\test.pyという文字列をファイル名と判断してファイルを読み込み、……(以下略)という処理になります。
>
> つまり
>>Process.Startの第1引数は実行するプログラムのパスです。
> が〜〜\python.exeに相当し、
>>プログラムに渡す引数はProcess.Startの第2引数として渡す必要があります。
> が〜〜\test.pyに相当します。
>
> 以上の説明でお分かりいただけるでしょうか。

そこまでは分かります。
引用返信 編集キー/
■93278 / inTopicNo.8)  Re[1]: pythonとの連携での実行です。
□投稿者/ shu (1209回)-(2019/12/02(Mon) 07:35:48)
No93271 (ささき さん) に返信
> コマンドプロンプト上から「C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py」を実行しますと正常に働きもするのですが、
> VB上から下記のようにし実行をしようとしますと何故か「System.ComponentModel.Win32Exception: '指定されたファイルが見つかりません。」が出てもしまいます。
>
> System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")
>

System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe", "C:\Users\***\Desktop\test.py")
引用返信 編集キー/
■93279 / inTopicNo.9)  Re[2]: pythonとの連携での実行です。
□投稿者/ ささき (5回)-(2019/12/02(Mon) 08:18:22)
No93278 (shu さん) に返信
> ■No93271 (ささき さん) に返信
>>コマンドプロンプト上から「C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py」を実行しますと正常に働きもするのですが、
>>VB上から下記のようにし実行をしようとしますと何故か「System.ComponentModel.Win32Exception: '指定されたファイルが見つかりません。」が出てもしまいます。
>>
>>System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")
>>
>
> System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe", "C:\Users\***\Desktop\test.py")

こう言うことなんですね。

ありがとうございました。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ