首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >C#:FindWindowEx未按预期工作

C#:FindWindowEx未按预期工作
EN

Stack Overflow用户
提问于 2018-01-20 16:26:43
回答 1查看 509关注 0票数 0

首先,我是C#的新手,所以这可能是非常简单的事情,我只是在Google/SO中找不到答案。

我有一个试图使用FindWindowEx的类,然而,Visual Studio不允许我使用'null‘参数,我不确定为什么。

到目前为止,这个类有这样的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    [DllImport("user32.dll")]
    public static extern IntPtr FindWindowEx(IntPtr handleParent, IntPtr handleChild, string className, string WindowName);

    [DllImport("user32.dll")]
    public static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);

    public void SomeWindow()
    {

        String someHwnd = FindWindowEx(IntPtr.Zero, IntPtr.Zero, "SomeWindowClass", NULL);

    }

正如它所写的,它告诉我'NULL‘在当前上下文中不存在。我也试过这样写:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
FindWindowEx(null, null, "SomeWindowClass", null)

这会给前两个'null‘错误:“参数#:无法从'null’转换为'IntPtr'”(‘null’实际上有<和>括起来,尽管它没有和它们一起显示)

Windows开发人员中心说我应该能够像现在这样使用它,它在这里:https://msdn.microsoft.com/en-us/library/windows/desktop/ms633500(v=vs.85).aspx

就像我说的,这可能是非常简单的事情,我只是在C#上没有足够的经验来解决它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-20 16:33:37

字符串返回类型为IntPtr,而您正在尝试将其赋给FindWindow。

尝尝这个。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
IntPtr wnd = FindWindowEx(IntPtr.Zero, IntPtr.Zero, "SomeWindowClass", null);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48358420

复制
相关文章

相似问题

领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文