• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MT4でShellExcecuteを使い外部アプリ)

MT4で外部アプリを起動する方法

このQ&Aのポイント
  • MT4でシグナル発生時に外部アプリを起動する方法がうまくいかないです。
  • ShellExecuteA関数を使って外部アプリを起動させる手法を試していますが、メモ帳が起動されません。
  • 原因はわかりませんが、コンパイル時のエラーは出ていません。

質問者が選んだベストアンサー

  • ベストアンサー
  • Saitar
  • ベストアンサー率41% (192/464)
回答No.2

では、下記をスクリプトでコピーして実行してみて下さい。 #import "shell32.dll" int ShellExecuteA(int hWnd,int Verb,string File,int Parameter,int Path,int ShowCommand); #import int start() { ShellExecuteA(0,"open","C:/Windows/notepad.exe","","",1); return(0); }

blueberry4
質問者

お礼

コピペして実行しました。 メモ帳は起動できませんでした。 ログには最終行にremovedとだけ残っていました。 dllの問題でしょうか。 色々やっていてdllが許可されていないようなエラーログが残っているのに気づきました。

blueberry4
質問者

補足

すみません、起動できました。 DLLの許可を行っていませんでした。 ご協力頂いたおかげで大分短縮して解決に至ることが出来ました。 本当にありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Saitar
  • ベストアンサー率41% (192/464)
回答No.1

とりあえず、このように書けば、望みがかないますよってことで。 (元)ShellExecuteA(0,"open","C:\Windows\notepad.exe","","",0);          ↓ (正)ShellExecuteA(0,"open","C:/Windows/notepad.exe","","",1);

blueberry4
質問者

お礼

ご回答頂きありがとうございます。 ご指摘頂いた文章をそのままコピペしたのですが、 シグナルが発生しても上手く作動しませんでした。 色々ググったりして試行錯誤してるんですがピクリとも起動しないですね・・・。

すると、全ての回答が全文表示されます。

関連するQ&A