VB6.0でコマンドプロンプトのコマンドを実行する(SHELL関数) | ミニミニ管理者(システム管理者/社内SE/CIO)の独り言

[ ミニミニ管理者の独り言プログラム開発(VB6) > VB6.0でコマンドプロンプトのコマンドを実行する(SHELL関数) ]
スポンサードリンク

VB6.0でコマンドプロンプトのコマンドを実行する(SHELL関数)

ソニーストア

VB6.0でコマンドプロンプトのコマンドを実行できると楽に処理できることが多いです。
今回は、「SHELL関数を利用してコマンドプロンプトのコマンドを実行させる方法 」を紹介します。

まず、VB6.0のSHELL関数の文法を記載すると
   Shell "pathname"[,windowstyle]
   ※[ ]内はオプショナルのため、省略可能です。

となっており、「pathname」のところでフルパス(ファイルパス+ファイル名)を指定します。また、「windowstyle」のところでは下記の値の何れかを指定する事ができます。

1)vbHideまたは、0
 フォーカスを持ち、非表示にされるウィンドウ
2)vbNormalFocusまたは、1
 フォーカスを持ち、元のサイズと位置に復元されるウィンドウ
3)vbMinimizedFocusまたは、2
 フォーカスを持ち、最小化表示されるウィンドウ
4)vbMaximizedFocusまたは、3
 フォーカスを持ち、最大化表示されるウィンドウ
5)vbNormalNoFocusまたは、4
 最後にウィンドウを閉じたときのサイズと位置に復元されるフォーカスを持たないウィンドウ。現在アクティブなウィンドウは、アクティブのままです。
6)vbMinimizedNoFocusまたは、6
 最小化表示されるフォーカスを持たないウィンドウ。現在アクティブなウィンドウは、アクティブのままです。


ここで参考例を示すと
  Shell "C:¥WINNT¥CALC.EXE", vbNormalFocus

となりますが、コマンドの引数を指定すると正しく動作しないことがあります。
例えば
  Shell "C:¥WINNT¥System32¥ipconfig /all > c:¥ipconfig.log", vbHide

と実行しても「C:¥ipconfig.log」ファイルは作成されません。
この場合は、コマンドプロンプトを指定してコマンドを実行するとうまくいきます。

コマンドプロンプトを利用 してコマンドを実行する場合を紹介します。
  Shell "cmd.exe /c ipconfig /all > c:¥ipconfig.log", vbHide

解説すると、初めの「cmd.exe /c」では、「コマンドプロンプトを起動して実行する」ことを指定して、引数「/c」にて「コマンド実行後、コマンドプロンプトを終了する」様にしています。次に「ipconfig /all」では「ネットワークの設定を全て表示する」様にしています。最後に「> c:¥ipconfig.log」では、「ipconfigの実行結果を指定したファイルに出力する」様にしています。

◆検証環境
・Windows2000Pro
Visual Basic 6.0

システム管理者必見!DOSの活用事例

◆VisualBasic6.0 バックナンバー◆
VB6.0でコンソールアプリケーションを作る!
 VB6.0でコンソールアプリケーション(フォームの無いプログラム)を作成する方法を解説しています。
VB6.0でコマンドプロンプトのコマンドを実行する(SHELL関数)
 VB6.0の「SHELL関数」の使い方について解説しています。
VB6.0でSHELL関数の実行終了を待つ方法
 VB6.0でSHELL関数を使用した時に発生する処理モレの解決するサンプルプログラムです。



ポイントサイトで効率的に稼ぐ方法を紹介!



               最新記事へ     トップページ



スポンサードリンク


■Blog Ranking■
1. ←←サーバー構築・運用ブログあり お奨め:★★★★★
2. (ブログランキング ドット ネット)
3.にほんブログ村 IT技術ブログへにほんブログ村
4.BS blog Ranking
ブログランキングに挑戦中です。あなたもブログランキングに挑戦してみよう!
サーバー構築・運用ブログなんかもありますのでシステム管理者の方にもお奨めのサイトがあり!
ソニーストア
ボーズ・インイヤーヘッドホン

コメント
コメント投稿フォーム:
 上の情報を次回も利用する

トラックバック
トラックバックURL:
※ クリックで選択できます。
トラックバック一覧: