使用VC编程过程中无法调用USER32.DLL中的GetNextWindow函数

我使用的是64位W7系统,不过我换了台32位的XP系统的电脑,同样出现找不到函数入口点的错误[DllImport("user32.dll",EntryPoint="Get... 我使用的是64位W7系统,不过我换了台32位的XP系统的电脑,同样出现找不到函数入口点的错误
[DllImport("user32.dll", EntryPoint = "GetTopWindow")] public static extern int gettopwindow(IntPtr hwnd);
我能够使用GetTopWindow却不能使用GetNextWindow函数,
[DllImport("user32.dll", EntryPoint = "GetNextWindow")] public static extern int GetNextWindow(IntPtr tophwnd, uint gw_next);
错误提示说在USER32.DLL中无法找到GetNextWindow的入口点
我在网上搜索过,没有人提到过,调用这个GETNEXT..函数需要什么特别的方法啊,
而且GETTOP..函数和GETNEXT..函数应该是在一起的啊,
能调用前者却不能使用后者这是怎么回事呢?
=-=,这句话,敢不敢翻成中文.....
Using this function is the same as calling the GetWindow function
with the GW_HWNDNEXT or GW_HWNDPREV flag set.
展开
 我来答
任明星Ming
2013-07-24 · TA获得超过798个赞
知道小有建树答主
回答量:1061
采纳率:100%
帮助的人:1147万
展开全部
你用dll接口枚举工具查查接口有没有?
在DOS命令行下,cd到想查看.dll文件所在目录下。比如想查看user32.dll文件,cd C:\windows\system32。接着敲如下命令:dumpbin -exports user32.dll > D:\info.txt或者link -dump -exports user32.dll > D:\info.txt即可。注:> D:\info.txt是为了将信息重定向到文件,user32.dll提供的函数太多,共732个,不重定向的话前边的会看不到。
更多追问追答
追问
=-=,没看懂,你就直接给我个命令吧...
我就想知道,我的电脑里USER32.DLL文件里有没有GETNEXTWINDOW这个函数,或者它叫另一个名字
我不能用这个函数,是因为我写错了函数名字呢还是我写错了参数或是我调用它的方法不对..
追答
我用一个开发工具labview看了user32.dll所有接口,里面的确没有GetNextWindow函数名,MSDN说GetWindow的功能是和他一样的,所以再查了查,发现MFC的CWinAPP实现了GetNextWindow,所以说GetNextWindow不在user32.dll里面。

最后查了下winuser.h这个头文件,发现了个哭笑不得的定义,现在你就明白了:
#define GetNextWindow(hWnd, wCmd)GetWindow(hWnd, wCmd)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式