- ベストアンサー
PowerShell1.0での外部プログラム実行方法
すいません、初歩的な質問で恐縮です。 以下のようなコマンドを実行したいのですが Powershell1.0の場合どのようにしたらよい のでしょうか? C:\hoge.exe -A100 -B200 -C300 -D400 D:\hoge.raw コマンドプロンプトですと普通に実行可能なのですが Powershellで上のをタイプしても The raw file is being acquired - .4 と表示されるだけで、C:\hoge.exeが実行できてない みたいです。また、 C:\hoge.exe D:\hoge.raw の場合はPowershellでも実行できるのですが、 C:\hoge.exeの引数である-A100とかをつけると ダメみたいです。よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
引数を表示するだけのhoge.exeを作り、c:\に置いて試してみました。 >C:\hoge.exe -A100 -B200 -C300 -D400 D:\hoge.raw コマンドプロンプトでもPowerShellでも上記を実行すると下の表示になりました。全ての引数がhoge.exeに渡っていて問題はなさそうです。 --------------------------- hoge --------------------------- -A100 -B200 -C300 -D400 D:\hoge.raw --------------------------- OK --------------------------- Windows XP SP3, Vista SP1 + Delphi2007で試しました。 WSH JScript c:\hoge.jsでも問題はなさそうです。 質問に書かれたのは実際の引数とは違うと思われますが、実際の引数に何かPowerShellに影響を与える文字が含まれているとか…。
お礼
ありがとうございました。SHIMAPEE様の検証により自己解決に至りました。 プログラムの引数が実際には以下のように実数になってまして >C:\hoge.exe -A100.4 -B200.2 -C300 -D400 D:\hoge.raw この少数点が動作しない原因だったようです。 >C:\hoge.exe "-A100.4" "-B200.2" -C300 -D400 D:\hoge.raw このようにしたら無事に動作しました。 大変助かりました。どうもありがとうございました。