
No.4ベストアンサー
- 回答日時:
回答番号:No.1の続きになりますが(こんなレスの付け方でいいのか?)
1. 標準入力から読み込んだ文字列を指定WindowへSendMessageで送信するプロセスを作成。
2. VBAのユーザフォームをサブクラス化してハンドラ作成。(受信文字列をテキストボックスへ追加)
3. VBAから実行するコマンド文字列を、送信プロセスにリダイレクトするように作成して実行。
で、できるような気がしますが、どこがわかりませんか?
回答3にもあるように、
>VBAでやる範疇ではないでしょう。
が全てのような。
No.3
- 回答日時:
VBAでやる範疇ではないでしょう。
良くわかった人が、APIなど使えば出来るのかもしれないが、そんな回答を丸写ししてでも、課題を達成したいですか。
APIの関連するレベルの質問は本質問コーナーの範囲を超えているーー
方法論に注文(Dosコマンド利用)つけず、全般的にやりたいことを質問に表現して見ては。
あるいは、ひょっとしてVBScriptなどでやれる場合かも知れない。
ーー
質問者の場合と言うのではないが、十分な技量がないのに、「他ソフトとの連携」などの質問が結構有るが、概して難しいものだと思う。
本やWEBで情報も少なく、自分が長期に渉って情報を漁り、背景・基礎知識も含めて、勉強する類のものと思う。
No.2
- 回答日時:
WSHを使っていいならば
Dim oWShell as Object, oWExec as Object
dim ss as String
Set oWShell = CreateObject("WScript.Shell")
Set oWExec = oWShell.Exec( "実行するコマンド" )
do
ss = oWExec.StdOut.ReadLine()
TextBox1.Text = TextBox1.Text & ss & vbCrLf
Loop while oWExec.StdOut.AtEndOfStream <> True
set oWExec = Nothing
Set oWShell = Nothing
といった具合で出来そうです
ただし oWShell.Execで起動したDOS窓側の出力はされませんが ・・・
DOS窓側へも出力したいとなると パイプ処理などが必要になりそうです
No.1
- 回答日時:
CreatePipe, CreateProcessのWin32APIを使って、cmdの標準出力のパイプをReadするようにすれば取得できると思いますが、リアルタイムを非同期で動かすにはVBAではちょっと・・・
標準入力を指定WindowsへSend/Postするプロセスを別に作って、cmdの標準出力のパイプをそのプロセスの入力に繋いで起動するのがいいような気がす。
この回答へのお礼
お礼日時:2009/06/04 21:14
回答ありがとうございます。
しかし内容がちょっと高度すぎますね。
もう少し噛み砕いて(具体的に)説明いただけるとうれしいのですが。。。
お手数ですがご教授願えませんか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトで表示が多...
-
コマンドプロンプトが実行中か...
-
バッチファイルでキー操作を行う。
-
別のユーザーフォームのコマン...
-
ttlで戻り値を取得する方法
-
コマンドキーがないんですけど...
-
Tera Term Proに関する質問です。
-
"伴われる"は正しい日本語ですか?
-
VBユーザーフォームで時間入力
-
EEPROMのデータの初期化について
-
【Teratermマクロ】文字列の一...
-
エクセル コマンドボタンでリセ...
-
viの行削除コマンドを教えて下...
-
ローマ字入力で「トゥ」を入力...
-
1点の辻の字に変換したいがエク...
-
word の文字入力 文字が青色に...
-
けさ、ツイッター(X)を開いたら
-
「T」「H」「C」などだけが入力...
-
Excelでエラー(#N/Aなど)値を...
-
SUM関数の範囲に#N/Aが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
コマンドプロンプトで表示が多...
-
ttlで戻り値を取得する方法
-
Tera Term Proに関する質問です。
-
バッチファイルでキー操作を行う。
-
別のユーザーフォームのコマン...
-
コマンドキーがないんですけど...
-
【Teratermマクロ】文字列の一...
-
VBユーザーフォームで時間入力
-
mountのDOSコマンド
-
文字の点滅はどうやるのですか?
-
DOSコマンドでポートから受信
-
RTX1100の削除コマンド
-
EEPROMのデータの初期化について
-
VBでDosコマンドを動かすには
-
makeコマンドのエラー
-
コマンドプロンプトですべてのU...
-
デフォルトのショートカットキ...
-
ディスクの空き容量を取得する...
-
JP1起動バッチについて
おすすめ情報