![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
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 …
早速のお返事とコードありがとうございます。
なんとなく、わかったような気がしました。
参考URLも使っていろいろ研究してみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
これ何て呼びますか Part2
あなたのお住いの地域で、これ、何て呼びますか?
-
VBAでエクセル内の情報を他のアプリケーションへ自動入力したいです
Visual Basic(VBA)
-
Excel VBAで他アプリケーションの文字列取得
Excel(エクセル)
-
ExcelVBAでAPIを使って外部ウインドウのエディットテキストを取得する方法
Visual Basic(VBA)
-
-
4
他アプリケーション’(ウィンドウ)のハンドル取得方法
Visual Basic(VBA)
-
5
Excel VBAで他アプリへのテキストデータ貼り付け
Excel(エクセル)
-
6
他のウィンドウのボタンを自動的に押したい
C言語・C++・C#
-
7
c#で他のアプリの文字入力フォームに指定の文字を入力したい
C言語・C++・C#
-
8
他のアプリケーションとの連携
Visual Basic(VBA)
-
9
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
10
VB.NETのSendMessageを教えてください
Visual Basic(VBA)
-
11
vbaから他のアプリを終了
Visual Basic(VBA)
-
12
起動中のアプリ、ソフトの取得
Visual Basic(VBA)
-
13
VB.netでFindWindowExやると・・・9222812402616107008!?
Visual Basic(VBA)
-
14
WSH or VBの質問
Visual Basic(VBA)
-
15
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
16
EXCEL VBA 他のアプリケーションからの自動貼り付け
Visual Basic(VBA)
-
17
Process.Startで起動したアプリを最大化したいです。VB.NET
Visual Basic(VBA)
-
18
VBSでブラウザ上のテキストボックスに文字列を打ち込み、ボタンを押す方法
Visual Basic(VBA)
-
19
VBAでコントロールのハンドルを取得したい
Visual Basic(VBA)
-
20
exeファイルの中身を見ることは可能ですか?
フリーソフト
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスにセルの値を...
-
全てのテキストボックスをセル...
-
基本クラスCEditViewでのテキス...
-
テキストエリア内の文字列にリ...
-
漢字入力した値のカタカナ変換...
-
ボタンを押したら、テキストに...
-
VBのチェックボックス
-
テキストフィ-ルドの文字削除 ...
-
別のアプリケーションのテキス...
-
jtextareaでの文字化け
-
コモンダイアログのshowopenに...
-
else if文の順序を変えることに...
-
【VB.NET】別Formのボタンが押...
-
ダミーウインドウ
-
pythonのグローバル変数
-
VBScriptでMsgBoxのYesNoボック...
-
【FLASH】インスタンス名の一覧...
-
【Photoshop】レイヤー効果の境...
-
python ボタンを押すと複数の関...
-
【ActionScript】Listコンポー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスの中身をリセ...
-
別のアプリケーションのテキス...
-
変数に256文字以上のテキストを...
-
RPG(AS400)の本、サイトってあ...
-
VB6.0 でメニューを作りたいん...
-
テキストボックスにセルの値を...
-
Access2000 実行時エラー '3061':
-
DirectXでの読み込みについて
-
チェックボックスのテキストを...
-
'2465'指定した式で参照してい...
-
多言語を混在できるか。
-
テキストエリア内の文字列にリ...
-
vbs 割算のあまり
-
VBSでMid関数を使ったらエラー...
-
VS2008 C# ボタンのテキストを...
-
pdfのテキスト全文コピー、テキ...
-
VBAからPDFのテキストフィールド
-
全てのテキストボックスをセル...
-
[VBS] 自分自身が改竄されてい...
-
VB.NETで数十行のプログラムを...
おすすめ情報