
No.2ベストアンサー
- 回答日時:
こんな感じ。
' // 使い方サンプル
Private Sub Command1_Click()
Dim sBuffer As String
If ExecCmd(Text1.Text, sBuffer) = True Then
MsgBox sBuffer, vbInformation, "成功時"
Else
MsgBox sBuffer, vbCritical, "エラー時"
End If
End Sub
' // Dos コマンドを実行する
Public Function ExecCmd( _
ByVal Command As String, _
ByRef Buffer As String _
) As Boolean
' @引 数:Command 実行する Dos コマンド
' @引 数:Buffer 実行結果またはエラーメッセージを受ける
' @戻り値:成功時 True / エラー時 False
' @備 考:一瞬 Dos 窓が開きます
Dim WSH As Object
ExecCmd = False
If Len(Command) > 0 Then
Set WSH = CreateObject("WScript.Shell")
With WSH.Exec("%ComSpec% /c " & Command)
Do While .Status = 0
DoEvents
Loop
' Return
If Not .StdErr.AtEndOfStream Then
Buffer = .StdErr.ReadAll
Else
ExecCmd = True
Buffer = .StdOut.ReadAll
End If
End With
Set WSH = Nothing
End If
End Function
回答ありがとうございます。
感動しました。
ちなみにこのプログラムはXP以外にも2000,me,98,95でも動作するのでしょうか?
その辺も教えてくださいよろしくお願いします。
大変ありがとうございました。
No.3
- 回答日時:
> ちなみにこのプログラムはXP以外にも2000,me,98,95でも動作するのでしょうか?
WSH (Windows Scripting Host)を使ってます。したがって、動作環境は、
Windows98 以降、または Internet Explorer 4 以上がインストール
されていること
になると思います。要は WSH が動けば OK です。ただし、
・Windows95 での動作は難しいかもしれません。実際に確認はしてません
ので、確信はありません。
・セキュリティ対策が非常に厳しい会社では、WSH がアンインストール
されているかもしれません。この場合も動きません。
したがって、
「多くの環境で利用できる」とは言えますが、
「Windows OS なら環境を選ばない」とは言えません。
No.1
- 回答日時:
Shell()関数でできると思います。
内部コマンドだと"cmd.exe /c コマンド"という形になりますが。
http://www.bcap.co.jp/hanafusa/VBHLP/tap_shell.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Visual Basic(VBA) VBA 登録ボタンを省略してエンターキーで作業 4 2022/07/09 22:29
- その他(OS) DOSコマンド『dir』の『/o』オプション 3 2023/03/10 09:29
- UNIX・Linux ubuntuに外部侵入できるか 2 2022/04/09 12:48
- その他(プログラミング・Web制作) 複数のテキストファイルの結合方法 2 2022/05/14 23:58
- オープンソース コマンドプロンプトのコードの実行方法を教えて欲しい 2 2022/11/26 20:45
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Excel(エクセル) パスワード付きExcelブックについて 4 2022/06/02 21:34
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
ttlで戻り値を取得する方法
-
コマンドプロンプトで表示が多...
-
入力待ち状態になるexeファイル...
-
【Teratermマクロ】文字列の一...
-
Tera Term Proに関する質問です。
-
(コマンドプロンプト)コマンド...
-
バッチファイルでキー操作を行う。
-
エクセル コマンドボタンでリセ...
-
pythonのコマンドと競合する問題
-
system関数でのシェル起動について
-
vbaで座標を指定してコマンドプ...
-
別のユーザーフォームのコマン...
-
"伴われる"は正しい日本語ですか?
-
ImageMagickを使って画像の特定...
-
PowerShell実行結果をデスクト...
-
makeコマンドのエラー
-
コマンドキーがないんですけど...
-
EEPROMのデータの初期化について
-
ルーターにつながっている全て...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
コマンドプロンプトで表示が多...
-
ttlで戻り値を取得する方法
-
Tera Term Proに関する質問です。
-
バッチファイルでキー操作を行う。
-
別のユーザーフォームのコマン...
-
VBA でshell関数を使ってコマン...
-
VBユーザーフォームで時間入力
-
【Teratermマクロ】文字列の一...
-
文字の点滅はどうやるのですか?
-
system関数でのシェル起動について
-
EEPROMのデータの初期化について
-
PowerShell実行結果をデスクト...
-
VBでDosコマンドを動かすには
-
ディスクの空き容量を取得する...
-
コンボボックス(最終行取得)
-
"伴われる"は正しい日本語ですか?
-
コマンドキーがないんですけど...
-
CreateProcessでの実行ファイル...
-
DOSコマンドでポートから受信
おすすめ情報