system()について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
あいくん

system()について

#1

投稿記事 by あいくん » 15年前

#include <stdlib.h>の
ststem関数を使って以前作成した
ツールを起動したいのですが

system("C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\tool.exe");

としたところ

'C:\Program' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

となってしまい
tool.exeを起動することができません。
どうすればよろしいですか?

Poco

Re:system()について

#2

投稿記事 by Poco » 15年前

system("\"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\tool.exe\"");
とすると、どうですか?

あいくん

Re:system()について

#3

投稿記事 by あいくん » 15年前

>ぽこさん
早速のご回答ありがとうございます。

編集してみましたが
やはり同じようになってしまいました。

Poco

Re:system()について

#4

投稿記事 by Poco » 15年前

C:\Program Files\Microsoft Visual Studio 9.0\VC\tool.exe
が本当に存在するか確認してください。

あいくん

Re:system()について

#5

投稿記事 by あいくん » 15年前

>ぽこさん
ディレクトリは存在するのは間違いありません。

なんか空白で区切られてしまってるようです。

lbfuvab

Re:system()について

#6

投稿記事 by lbfuvab » 15年前

ShellExecとかじゃダメですか?

あいくん

Re:system()について

#7

投稿記事 by あいくん » 15年前

>lbfuvabさん
ShellExecという関数を知らなかったのでググってみたのですが
わかりませんでした。

どのように使えばよろしいのでしょうか?

no

Re:system()について

#8

投稿記事 by no » 15年前

斜線が二本というのがきになるんですが、\が二つはいってません?

no

Re:system()について

#9

投稿記事 by no » 15年前

おっと失礼、「¥」←これです。

あいくん

Re:system()について

#10

投稿記事 by あいくん » 15年前

>noさん
エスケープしてます。

dic

Re:system()について

#11

投稿記事 by dic » 15年前

system("C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\tool.exe");
で / スラッシュでなく ¥¥ でフォルダ指定してみてはいかがですか?

(\\)文字化けしますね

たかぎ

Re:system()について

#12

投稿記事 by たかぎ » 15年前

> (\\)文字化けしますね

それをいうなら、本来なら¥に見えるのが文字化けでしょう。
画像

あいくん

Re:system()について

#13

投稿記事 by あいくん » 15年前

>dicさん
どういう意味でしょうか?
スラッシュにはしていません。

Ma

Re:system()について

#14

投稿記事 by Ma » 15年前

>/ スラッシュ
たしかに、スラッシュは使われていないかと。。。。

ところで、ShellExecute はどうなったの??
http://msdn.microsoft.com/ja-jp/library/cc422072.aspx
http://www11.plala.or.jp/studyhall/cpp/system.html

Ma

Re:system()について

#15

投稿記事 by Ma » 15年前

あと、コマンドプロンプト 起動
でぐぐってみると、ヒントになるようなのがいろいろありましたよー。


はい。

つsystem("start \"\" \"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\tool.exe\"");

あいくん

Re:system()について

#16

投稿記事 by あいくん » 15年前

>Maさん
system("start \"\" \"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\tool.exe\"");
これでできました。

ホントにありがとうございます。

ただなぜこうなるのかが理解できません。

Ma

Re:system()について

#17

投稿記事 by Ma » 15年前

コマンドプロンプトを開いて、
help start

とうってみてください。
start の使い方がかかれています。

いろいろなオプションがありますが、今回は最初のふたつの[/url] のみ使いました。
エスケープを除くと、例の上のコマンドは以下のようになります。

start "" "C:\Program Files\Microsoft Visual Studio 9.0\VC\tool.exe"

これと、コマンドプロンプトのヘルプから表示される start の文法を比べていただければ、title の部分があって、次にパスが指定されているのがわかるのではないでしょうか?

私はあまりMS-DOSには詳しくないので、これぐらいしかいえません(汗

閉鎖

“C言語何でも質問掲示板” へ戻る