- - PR -
ブラウザから引数付でアプリケーションを起動したい
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-11-22 14:23
初めて投稿いたします。どうぞよろしくお願いいたします。
イントラネットサイトにポータルのような機能を持たせるため、ブラウザ上で別アプリケーションを開くようなリンクを作成しています。 VBScriptで以下のようなコードを記述し、引数なしのアプリケーションの起動はできました。 <SCRIPT type="text/vbscript" LANGUAGE="VBScript"> Sub NoteRun_OnClick Set Shell = CreateObject("WScript.Shell") Shell.Run """C:\\WINNT\\notepad.exe""" End Sub </SCRIPT> <BODY> <input type="button" value="メモ帳起動" id="NoteRun"> </BODY> ただ、この方式であると引数の受け渡しができません。どなたか、引数を受け渡す方法をご存知ないでしょうか。JavaScript/VBScriptで実現できればと思っています。 よろしくお願いいたします。 | ||||
|
投稿日時: 2005-11-22 14:31
http://www.microsoft.com/japan/msdn/library/ja/script56/html/wsMthRun.asp
| ||||
|
投稿日時: 2005-11-22 15:08
早速のご返答、ありがとうございます。感謝いたします。
引数をそのまま渡した場合、「ファイルが見つかりません」のエラーになっていましたが、"&"で渡した場合、引数である事を認識してくれました。 Shell.Run "C:\\Program Files\\Notes\\???.exe" & " /N=C:\\Program Files\\Notes\\???.ini" ただ、困ったことに、引数のファイルが"C:\\Program Files"の下にあり、フォルダ名に空白が含まれると、"C:\\Program"までしか認識してくれません。空白を含むフォルダ名は引渡し不可能でしょうか・・・ | ||||
|
投稿日時: 2005-11-22 15:13
二重引用符で括ってもダメですか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-11-22 15:57
コメントありがとうございます。二重引用符で囲ってみましたが、駄目でした・・・
実際には、以下のように記述すると、->以降のエラーがでます。 Shell.Run """C:\\Program Files\\Notes\\???.exe """ & """/N=C:\\Program Files\\Notes\\???.ini""" ->引数で指定している「c:\\program」が見つかりません。引数の指定を無視します。 Shell.Run """C:\\Program Files\\Notes\\???.exe """ & """/N='C:\\Program Files\\Notes\\???.ini'""" ->ファイル名または番号が不正です。 Shell.Run """C:\\Program Files\\Notes\\???.exe """ & """/N=C:\\Program%20Files\\Notes\\???.ini""" ->引数で指定している「c:\\program%20files\\Notes\\???.ini」が見つかりません。引数の指定を無視します。 Shell.Run """C:\\Program Files\\Notes\\schedule.exe """ & """/N="""C:\\Program Files\\Notes\\notes.ini"""""" ->ステートメントの末尾が不正です。となって、ページが表示できない。 | ||||
|
投稿日時: 2005-11-22 16:04
スペースを「%20」に置き換えてもダメでしょうか?
_________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-11-22 16:21
exeのパスと引数との間に空白がないのでは?
| ||||
|
投稿日時: 2005-11-22 17:41
いろいろありがとうございます。%20も駄目のようです。空白に置き換わりませんでした。exeの後には空白を入れています・・・
前半の"C:\\Program Files\\Notes\\???.exe"の空白はちゃんと認識できるのに、後半の"N=C:\\Program Files\\Notes\\???.ini"の空白は引数の区切りと思ってしまうのですね。 また、DOSでは、"C:\Program Files\Notes\???.exe" /N=C:\Progra~1\Notes\???.ini で実行できるのに、Webでは、駄目でした・・・ |