2011-09-30 90 views
0

我有一個特定的應用程序(someprogram.exe)我希望使用sendkeys命令來執行CTRL + C我在vb.net中建立應用程序。我不需要將數據帶入我的應用程序,只需將它複製到Windows剪貼板即可。如何使用sendkeys從外部應用程序複製文本

在此先感謝!

+0

你好,請提供關於「someprogram.exe」的更多信息?基本上它是什麼類型的應用程序? (winform,控制檯等)你想從哪種類型的控件獲取數據? (文本框,控制檯窗口等)您試圖進入剪貼板的數據是什麼類型? (圖片,文字等)在您指定這些問題後,也許別人或我將能夠多一點幫助。 –

+0

我認爲應用程序是用.NET編寫的(c#)。我試圖讓一個文本框(最好選擇)複製到剪貼板(文本)。 – gfuller40

回答

0

我會建議發送消息GETTEXT來處理該控件(使用FindWindow API可能會得到句柄),然後自己將其設置到剪貼板,以避免複製錯誤的數據或只有選定的部分。

+0

這聽起來正是我想要做的。應用程序上的窗口名稱將根據用戶登錄(多用戶)排序的「應用程序 - 歡迎喬」而改變,所以我不能真正硬編碼打開窗口的名稱,我希望從中獲取文本。 – gfuller40

+0

@ gfuller40我認爲這是做到這一點的唯一方法,但您必須找到部分文本(「應用程序 - 」部分),並且可能會詢問用戶這是您正在尋找的窗口。 –

+0

@ gfuller40你知道應用程序文件名(.exe),你可以搜索該進程,並找到它的主窗口。 (進程類將處理它,屬性process.mainmodule.filename和process.mainwindowhandle) – Miharbicha

相關問題