DOBON.NET DOBON.NETプログラミング掲示板過去ログ

他のアプリケーションの操作

環境/言語:[vb.net]
分類:[.NET]


手書き文字取込ツールがあるのですが、そのツールの
コピー機能(Ctrl+C)を使ってクリップボードにコピーしたいんです。

このツールがいつもアクティブだと仮定して、一定の間隔置きに自動的にクリップボードへページをコピーするアプリを作りたいんですが、Visual Basic から他のアプリケーションのフォームを操作(ファイルメニューのコピー)できますか?

よろしくお願いいたします。
SendKeysを使用して、

SendKeys.Send("^C");

ではいかがでしょうか?
管理人様、ありがとうございます。
ご指導のとおり、SendKeys.Send("^C")のメソッドを使って試して見たんです。
Formにテキストボックスを作り、それに入力した文字や数字はコピーされ、クリップボードで確認できます。
でも、今使っている手書き文字取込ツールに書かれたのはまだ、解決できませんでした。

とりあえず、これから解決したいと思いますが、
(http://dobon.net/vb/dotnet/form/activate.html これを参照)
Public Shared Sub ActivateWindow(ByVal winTitle As String)
Dim hWnd As IntPtr = FindWindow(Nothing, winTitle)
If Not hWnd.Equals(IntPtr.Zero) Then
SetForegroundWindow(hWnd)
End If
End Sub

上のActivateWindowのメソッドを見ると、別のアプリケーションのウィンドウをアクティブにする時に、アクティブにするウィンドウのタイトルを引数にするんですが、アクティブにするウィンドウのタイトル(winTitle )はどうすれば(手書き文字取込ツールのウィンドウタイトル)調べられますか?

どうぞ、よろしくお願いいたします。
「書き込みのマナーについて」にあるように、この掲示板では一つのスレッドに1つの質問しかできない約束になっています。今後は「書き込みのマナーについて」をお読みいただいた上でご投稿いただけますように、お願いいたします。

> 上のActivateWindowのメソッドを見ると、別のアプリケーションのウィンドウをアクティブにする時に、アクティブにするウィンドウのタイトルを引数にするんですが、アクティブにするウィンドウのタイトル(winTitle )はどうすれば(手書き文字取込ツールのウィンドウタイトル)調べられますか?

「手書き文字取込ツール」というものを知りませんのでなんともいえませんが、簡単な方法であれば、以下のURL先をご覧ください。

http://dobon.net/vb/dotnet/process/finduiprocess.html

DOBON.NET | プログラミング道 | プログラミング掲示板