关于word的HOOK(_WwG种)
关于word的HOOK(_WwG类)
我使用hook找到了word的内容窗口(类名是 _WwG ),但我无法获取到word里面的内容?请问我应该怎么去获取呢?请具体一点。。。com对我来说比较深奥。。。
谢谢先了
------解决方案--------------------
你想做什么,这问题有意思
------解决方案--------------------
你想操作word?
------解决方案--------------------
以前写过一个程序获得记事本中输入区(其实就是个Edit)的内容,我没有用HOOK,用的是EnumWindows来实现的,在它的回调中处理。
比如你的这个需求里面,Word是一个特殊的类,这样改一下不知道好不好用,因为Word的编辑区并不是一个简单的Edit。
我使用hook找到了word的内容窗口(类名是 _WwG ),但我无法获取到word里面的内容?请问我应该怎么去获取呢?请具体一点。。。com对我来说比较深奥。。。
谢谢先了
------解决方案--------------------
你想做什么,这问题有意思
------解决方案--------------------
你想操作word?
------解决方案--------------------
以前写过一个程序获得记事本中输入区(其实就是个Edit)的内容,我没有用HOOK,用的是EnumWindows来实现的,在它的回调中处理。
比如你的这个需求里面,Word是一个特殊的类,这样改一下不知道好不好用,因为Word的编辑区并不是一个简单的Edit。
- C/C++ code
BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam) { VERBOSE(DLLTEXT("EnumWindowsProc in\r\n")); TCHAR wndClassName[200]; memset(wndClassName,0,200); GetClassName(hwnd,wndClassName,200); if (_tcscmp(wndClassName,_T("_WwG")) != 0) { return TRUE; } TCHAR tmpWindowName[1024]; //这里改改,用Office定义的接口函数试试能不能得到内容。HWND是输入区的句柄。 // GetWindowText(hwnd,tmpWindowName,1024); // OutputDebugString(tmpWindowName); return TRUE; } ………… { …… EnumWindows(EnumWindowsProc,NULL); …… }