获取另一个程序中第一个textbox的值怎么做?

另一个程序(也是c#程序)叫abc.exe,我想获取他的其中一个textbox的值,怎么做呢?帮忙写段代码吧

http://bbs.csdn.net/topics/390544950

 SendMessage(hwnd, WM_GETTEXT, 100000, ptr);

发送消息来获取

$('#id').text()

  • 1.用
HWND WINAPI FindWindow(
  _In_opt_ LPCTSTR lpClassName,
  _In_opt_ LPCTSTR lpWindowName
);

来查找你的程序的主窗口。

  • 2.用
HWND WINAPI FindWindowEx(
  _In_opt_ HWND    hwndParent,
  _In_opt_ HWND    hwndChildAfter,
  _In_opt_ LPCTSTR lpszClass,
  _In_opt_ LPCTSTR lpszWindow
);

来查找你要获取的textbox.

  • 3.用
int WINAPI GetWindowText(
  _In_  HWND   hWnd,
  _Out_ LPTSTR lpString,
  _In_  int    nMaxCount
);

来获取文本框的内容.这个函数相当于WM_GETTEXT消息,对API接触不多的话直接用函数估计会好理解一点.

额,首先第一步,就是要获得Edit的句柄,然后就直接发送WM_GetText的消息就行了,不过如果他们的Edit不是标准的Edit,而是别人自己模拟的话,那么这个消息
可能会被屏蔽到从而导致获取不到,你可以先用Spy++直接查看一下,如果Spy++能够获取到Edit的内容的话,你就可以写程序获得