问题标签 [hwnd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - “SendMessage”到 C++ 中的 3 个不同进程
我想将击键发送到多个进程。例如,如果我按“1”,那么我想将“1”发送到 3 个“记事本窗口”。首先我想尝试向记事本发送击键,但在 HWND 上失败:
但是“FindWindow”方法对我的程序来说还不够好。也没有办法获得 3 个具有相同名称的不同进程。那么如何为 3 个同名的不同进程创建 3 个句柄呢?以及如何将密钥发送到流程?
c++ - 如果带有 HWND 的窗口仍然存在,我该如何阻止
可能重复:
使用 Win32 API 验证 HWND
如果 HWND 的窗口仍然存在,我该如何阻止?我有一个窗口的 HWND。该窗口存在于另一个进程中。我想知道 Window 是否还“活着”。做这个的最好方式是什么?
c - WinMain中hPrevInstance的作用是什么
的定义WinMain
是:
我的理解是:
hInstance
是应用程序实例的句柄,当不是 DLL 时,可以使用GetModuleHandle(NULL)
szCmdLine
是命令行参数,可以重试GetCommandLine()
nCmdShow
通常是SW_SHOW
但是,我从来没有遇到过 的任何用法,即使是在1990 年代hPrevInstance
后期的书中。那么,如果有的话,它的用途是什么,它到底是什么?hPrevInstance
python - 使用 Boost.Python 包装和传递 HWND
我为 C++ 遗留类创建了一个 Boost.Python 包装器(使用 Py++),该类在其构造函数中采用 HWND 窗口句柄。但是,当我尝试使用它时将模块导出到 python 后,我收到类型不匹配错误。
这是我要包装的 C++ 类:
Py++ 输出:
生成的包装器:
在 python 中,我得到不匹配错误:
如何纠正这个问题,以便能够将 Python 中的窗口句柄(来自 win32gui)传递给 C++ 类,并与之交互?
环境:Visual Studio 2008、Boost 1.44、gcc-xml 0.9.0、py++ 1.0.0、pygccxml 1.1.0
c# - 从 IntPtr Handle 获取 Control/Form 对象
我尝试使用以下代码从显示的 Word 应用程序窗口中获取托管控件:
不幸的是 wordControl 始终为空...据我所知,如果没有找到与句柄相关的控件,FromHandle 将返回空。但实际上我猜应该有一个相关的控件,因为我可以在我的屏幕上看到窗口。
因此我的问题是,如果我在尝试获取手柄或控件时做错了什么。或者,也许我的一般方法不适用于某些基于 .NET / Windows 环境中某处的目前未知的原因。
hwnd - FindWindow() 找不到我的窗口 [C++]
这不是一个复杂的问题。我无法找到属于 iTunes 的句柄。但是,尽管 iTunes 在后台运行,但它一直告诉我它找不到窗口。所以我继续检查我是否错过了输入窗口名称,但 spy++ 指出我使用了正确的窗口名称和类名(见下文)。我确定这是一个小错误,但我似乎找不到它。有没有人有见识?提前致谢。
multithreading - 非窗口类中的自定义消息 - 需要默认处理程序吗?
有了一个类(TObject),我有:
在哪里TH_MYMESSAGE = WM_USER + 1
在类构造函数中:
唯一接收到引用的对象FHwnd
是私有自定义 TThread(在此类中创建),它发布的唯一消息是TH_MYMESSAGE
. 我的理解是message
过程声明中的指令将其处理限制为仅TH_MYMESSAGE
.
这在测试中运行良好,但在集成到更大的应用程序后,我收到的反馈HandleMyMessage
也会触发其他消息(具有明显的不良结果)。
if Message.Msg <> TH_MYMESSAGE then Exit;
这很容易通过添加来纠正HandleMyMessage
。我的问题是:为什么会这样?
我最好的猜测是,尽管它有指令,但它AllocateHWND
已经HandleMyMessage
相当于 a 。有没有正确的方法来实现我所缺少的?DefWndProc
message
c - 在 C 中使用 ShellExecute() 打开 .txt 的正确方法是什么
好的,所以我需要打开一个 .txt 文件,该文件将在与程序相同的文件中创建。
我想使用 ShellExecute(); 要做到这一点,我已经做了很多研究,但我似乎无法正确获取语法,主要是因为我不知道如何处理参数“HWND”
我在这里寻找答案并获得了所有信息,除了放入 HWND 的内容
这是我需要使用的代码的方式:
如果您不确定我在说什么,请提前感谢您的帮助!:)
这是我用来测试功能的程序:
view_debug(); 是包含 ShellExecute 的函数
这是 log_debug();
该文件由函数 log_debug() 创建;它确实有效,但必须手动打开,因为 ShellExecute 不起作用。
完整来源在这里。
c++ - 使用 FindWindowEx 函数找不到子窗口
我正在开发一个小程序,以便在使用 Microsoft 远程协助 (msra.exe) 时让我的生活更轻松。使用 c++,我可以打开 msra.exe,然后找到窗口句柄。然后我想找到子窗口(按钮),并与它们进行交互。问题似乎是,我找不到我想要的按钮。Spy++ 显示按钮具有以下文本:
窗口 004902F4“邀请您信任的人帮助您”按钮。
我的程序返回搜索此字符串时,该按钮不存在。有人有想法么?这是代码:
编辑:
这是 spy++ 显示的图像。
winapi - 在 Windows 中,HANDLE 是进程 VAS 中的地址还是其他东西的独立索引?
简单地说,如果我要调用一些返回句柄的 API,例如 GetActiveWindow(),它会给我一个 HWND 类型的句柄,我会得到什么?它是进程 VAS 中的唯一地址,还是某个操作系统结构的唯一索引?或者是其他东西?