VC++ 6.0 Win98
カレントディレクトリに実行ファイルをいれておいて、szCommand[]="eee"とすると(eeeは実行ファイルです。)実行してくれるのですが、相対パスや絶対パスを使うと実行をしてくれません。
CreateProcessでは、相対パスや絶対パスは使えないのでしょうか?
ちなみにコマンドラインから直接(相対パスや絶対パスを使用して)に打つと実行ファイルが動作します。
あと、リダイレクトも使えないのでしょうか?(動作しなかったので・・)
STARTUPINFO si;
ZeroMemory(&si,sizeof(STARTUPINFO));
si.cb=sizeof(STARTUPINFO);
si.dwFlags=STARTF_USESTDHANDLES;
si.hStdOutput=hFile;
si.hStdError=hFile;
char szCommand[]= "C:\\\"My Documents\"\\nannka\\VC++\\Ten3\\eee";
PROCESS_INFORMATION pi;
CreateProcess(
NULL,
szCommand,//コマンド
//NULL,
NULL,NULL,
TRUE, 0,
NULL,NULL,
&si,&pi
);
よろしくお願いします。
No.2
- 回答日時:
> 相対パスが使えないのはわかるのですが、絶対パスが使えないのがわかりません。
ああ、きちんと質問を読んでなかった。
私が最初に書いたのは、第一引数のことでした。これは NULL にできますね。
であれば、空白を含むディレクトリの扱いが良くないのでしょう。
ダブルクォートで、My Documents だけをくくるのではなく、コマンド全体をくくってください。
char szCommand[] = "\"c:\\My Documents ... \\eee\"";
出来ました!ありがとうございます。
でも、なぜ、My Documentsの部分だけではダメかわかりません。コマンドライン上だったら大丈夫なのに。。
szCommandの部分がコマンドライン上の命令と一致していると考えていたのですが、微妙に違うみたいですね。
もし、お時間がありましたら部分的に囲み方法ではダメなのか教えてもらえないでしょうか?
明日には締め切りたいと思います。
ありがとうございました。
No.1
- 回答日時:
> CreateProcessでは、相対パスや絶対パスは使えないのでしょうか?
使えません。マニュアルに「フルパスで」と書いてありますね。
> あと、リダイレクトも使えないのでしょうか?(動作しなかったので・・)
">" を書いてもリダイレクトにはなりません。STARTUPINFO を利用します。
この回答への補足
回答ありがとうございます。
>使えません。マニュアルに「フルパスで」と書いてありますね。
相対パスが使えないのはわかるのですが、絶対パスが使えないのがわかりません。
フルパスは絶対パスのことじゃないんですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あるあるbotに投稿したけど採用されなかったあるある募集
あるあるbotに投稿したけど採用されなかったあるあるをこちらに投稿してください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
VC++から引数付きexeファイルの実行
C言語・C++・C#
-
CreateProcessの制御について
C言語・C++・C#
-
VC++ で.bat起動
C言語・C++・C#
-
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
[WSH|JS|VB] telnetコマンドの...
-
リプレイ機能の実現について
-
Tera Term Proに関する質問です。
-
コマンドキーがないんですけど...
-
excel-vbaで作成したマクロを別...
-
"伴われる"は正しい日本語ですか?
-
バッチファイルでキー操作を行う。
-
【Teratermマクロ】文字列の一...
-
別のユーザーフォームのコマン...
-
Borland C++ Compiler 5.5について
-
コマンドとコマンドラインとコ...
-
コマンドプロンプトで表示が多...
-
Excel VBA 変数 ワークシート...
-
ローマ字入力で「トゥ」を入力...
-
「未使用」と「不使用」ってど...
-
チケット何回もエラーは高額請求?
-
ネットカフェから、メールでき...
-
エクセルに貼りついたコンボボ...
-
1点の辻の字に変換したいがエク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
コマンドプロンプトで表示が多...
-
バッチファイルでキー操作を行う。
-
ttlで戻り値を取得する方法
-
VBユーザーフォームで時間入力
-
Tera Term Proに関する質問です。
-
別のユーザーフォームのコマン...
-
コマンドキーがないんですけど...
-
コンボボックス(最終行取得)
-
文字の点滅はどうやるのですか?
-
EEPROMのデータの初期化について
-
【Teratermマクロ】文字列の一...
-
RTX1100の削除コマンド
-
アンドロイドでも、robocopyは...
-
コマンドプロンプトについて
-
dosバッチ起動後、画面を閉じな...
-
ルーターにつながっている全て...
-
"伴われる"は正しい日本語ですか?
-
VBA でshell関数を使ってコマン...
-
PowerShell実行結果をデスクト...
おすすめ情報