
No.1ベストアンサー
- 回答日時:
キーフックを使って作るのが王道のようですが、
どうもややこしそうなので思いついたソースだけ記述します。
質問者さんの思っている動きとは違うかもしれませんが、、。
以下ソースをVBで実行後、
Windows標準のメモ帳を起動し1を入力してみてください
'--------------以下貼り付けてください-----------------
Private Declare Function FindWindowA Lib "user32" (ByVal cnm As String, ByVal cap As String) As Long
Private Declare Function FindWindowExA Lib "user32" (ByVal hpar As Long, ByVal hchi As Long, ByVal cnm As String, ByVal cap As String) As Long
Private Declare Function SendMessageA Lib "user32" (ByVal hwd As Long, ByVal Msg As Long, ByVal wpara As Long, ByVal lParam As Any) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const WM_GETTEXT = &HD
Const WM_SETTEXT = &HC
Private Sub Form_Load()
Dim hwd As Long, hwd_c As Long
Dim cap As String, ret As Long
cap = Space$(200)
Do
'メモ帳のハンドル取得
hwd = FindWindowA(vbNullString, "無題 - メモ帳")
'メモ帳のテキストハンドル取得
hwd_c = FindWindowExA(hwd, 0, "Edit", "")
'メモ帳のテキストを取得
ret = SendMessageA(hwd_c, WM_GETTEXT, 200, cap)
'メモ帳のテキストを検索
If InStr(1, cap, "1", vbTextCompare) > 0 Then
'1が入力されているなら置き換えて送信
Call SendMessageA(hwd_c, WM_SETTEXT, 0, "おはよう" & vbCrLf)
End If
DoEvents
Sleep (1000)
Loop
End Sub
'---------------------------------------------
'以下参考にしたURLです
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd …
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?p …
この回答へのお礼
お礼日時:2007/06/02 10:41
早速のお返事とコードありがとうございます。
なんとなく、わかったような気がしました。
参考URLも使っていろいろ研究してみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA セル間のリンク修正につい...
-
VBAでCOPYを繰り返すと、処理が...
-
複数のExcelファイルをマージす...
-
【マクロ】並び替えの範囲が、...
-
Excelのマクロについて教えてく...
-
VBA 最終行の取得がうまくいか...
-
Vba Array関数について教えてく...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】開いているブックの...
-
【ExcelVBA】値を変更しながら...
-
vba textboxへの入力について教...
-
改行文字「vbCrLf」とは
-
VB.net 文字列から日付型へ変更...
-
WindowsのOutlook を VBA から...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
Excelのマクロについて教えてく...
-
VBAの質問(Msgboxについて)です
-
エクセルのVBAについて教えてく...
-
Vba 型が一致しません(エラー1...
-
VBAで特定の文字が入った行をコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
変数に256文字以上のテキストを...
-
テキストボックスの中身をリセ...
-
テキストボックスにセルの値を...
-
テキストエリア内の文字列にリ...
-
VB6.0 でメニューを作りたいん...
-
スキャン後、追記したいのですが、
-
ホームぺージ制作で間違って重...
-
別のアプリケーションのテキス...
-
エクセルのオートシェイプをマ...
-
HTMLのtextbox類に文字を残す
-
全てのテキストボックスをセル...
-
RPG(AS400)の本、サイトってあ...
-
VB.NETで数十行のプログラムを...
-
jQueryで入力テキスト付きのモ...
-
エクセルの図形挿入のVBAにて
-
HTML版とは・・
-
POIでのテキストボックス作成に...
-
フォームのテキストの入力数字...
-
テキストエリアにあわせた文字...
-
VBAからPDFのテキストフィールド
おすすめ情報