C言語でDOSコマンド



 ◇-?C言語でDOSコマンド-友喜-PC不慣れ-11/04-20:45(212)-No.428140
   ┣?!Re:C言語でDOSコマンド...-なまず-11/04-21:16(211)-No.428142
   ┗?!Re:C言語でDOSコマンド...-jtaka[BJCB]-11/06-04:34(180)-No.428336
     ┗?!?Re:C言語でDOSコマンド...-友喜-11/06-21:13(163)-No.428429
       ┗?!?!Re:C言語でDOSコマンド...-jtaka[BJCB]-11/06-21:33(163)-No.428434

▲このページのトップに戻る
428140C言語でDOSコマンド友喜-PC不慣れ 2007/11/04-20:45

メーカー名:自作PC 作ってもらった
OS名:WindowsXp HomeEdition
パソコン名:???
--
コンソールアプリケーションはコマンドプロンプト上で動くのにDOSコマンド
は使えないんですか?

command("dir");

とかないのでしょうか?
またwindowsアプリケーションでは使えないでしょうか?

▲このページのトップに戻る
428142Re:C言語でDOSコマンドなまず 2007/11/04-21:16

記事番号428140へのコメント
友喜-PC不慣れさんは No.428140「C言語でDOSコマンド」で書きました。

system のことかな?

int system(const char *string);


▲このページのトップに戻る
428336Re:C言語でDOSコマンドjtaka[BJCB] 2007/11/06-04:34

記事番号428140へのコメント
WindowsAPIを使うんだったらShellExecuteで"open"というverbを使って指定したプログラムを
実行するようにするんだろうけど。
[ShellExecute @MSDN Library]
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpshell/html/_win32_shellexecute.asp

dirを実行するためにはcmdを引数として
/k dir
とか
/c dir
として実行のかな。/kオプションはコマンドプロンプトが開いたまんまで入力待ち状態になり、
/cオプションの場合はdirが実行したらすぐ閉じることになる。

▲このページのトップに戻る
428429Re:C言語でDOSコマンド友喜 2007/11/06-21:13

記事番号428336へのコメント
jtaka[BJCB]さんは No.428336「Re:C言語でDOSコマンド」で書きました。
リンクのサイトをみてみましたが lpVerb にはあの五つしか指定できないのですか?
もしかして
>dirを実行するためにはcmdを引数として
は lpVerb に "cmd /c dir /b >dir.txt" とか出来ると言うことですか?
あと ShellExecute とかを使うには何をダウンロードすればいいのでしょうか?

▲このページのトップに戻る
428434Re:C言語でDOSコマンドjtaka[BJCB] 2007/11/06-21:33

記事番号428429へのコメント
> lpVerb にはあの五つしか指定できないのですか?
そうだとおもいます。

>>dirを実行するためにはcmdを引数として
操作対象のファイル(lpFile)をcmd.exeにしてopenで開くということになるということです。
cmdの引数としてlpParametersに文字列を与えるということになると思いますが。

ただ、この場合はリダイレクトを行うことは難しいかも知れません。
やってみないとわかりませんけど。
バッチファイルの中にリダイレクトを含めた記述を行って、ShellExecuteでそのバッチファイルを
開くという手があるかも知れません。さしあたりやったことはありませんけど。

>あと ShellExecute とかを使うには何をダウンロードすればいいのでしょうか?
Windowsのプログラムを記述することができるC処理系ならば、WindowsAPIを呼び出すための
道具立てはさしあたりそろっているはずですが。

まぁ、PlatformSDKをダウンロードすればヘッダやライブラリは付いてきますけどね。
[Download details: Windows® Server 2003 R2 Platform SDK Full Download]
http://www.microsoft.com/downloads/details.aspx?FamilyID=484269e2-3b89-47e3-8eb7-1f2be6d7123a&DisplayLang=en
[ダウンロードの詳細 : Microsoft Windows SDK for Windows Vista]
http://www.microsoft.com/downloads/details.aspx?FamilyID=7614fe22-8a64-4dfb-aa0c-db53035f40a0&DisplayLang=ja
後者の方がドキュメントが日本語だけど、Vistaに特化されている部分も多いと思われるので、
WindowsXP以前を対象にしたい場合は前者のものを使った方がいいのかも知れない。

A1.本ページは参考になりましたか? 又はアドバイスがありますか?
解決 参考になった 参考にならなかった アドバイスする

A2.何度目の訪問ですか?
初めて来た   数度目(2〜4) 5回以上来ている   管理人:

A3.何か一言どうぞ(アドレスは書くことができません)

A4.アドレスがあればどうぞ(1つまで)


↑↑↑↑よろしければ押してください↑↑↑↑

何か一言(本ページで参考になったならないを含めて残してあります)
◎:解決 ○:参考になった ×:参考にならなかった !:アドバイスあり

参考回数投稿日時何か一言