问题标签 [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.

0 投票
1 回答
860 浏览

winapi - Win32:如何使 HWND 对点击透明?

我想要一个对点击透明的 HWND(即将它们传递到下面的窗口)。

起初我尝试了 WS_EX_TRANSPARENT ,但这有各种各样的重绘问题。下面的 Windows 最终会覆盖我的 HWND。

我做了一些搜索,发现了一个通过返回 HTTRANSPARENT 来响应 WM_NCHITTEST 的建议。这似乎有效,但 MSDN 声明它仅在下面的窗口位于同一线程中时才能正常工作。搜索 HTTTRANSPARENT 出现了一些问题(http://www.virtualdub.org/blog/pivot/entry.php?id=147

那么……还有其他想法吗?

0 投票
4 回答
3890 浏览

mfc - 从 CWnd::FromHandle 获得的 CWnd 的生命周期是多少?

根据msdn,当我使用 CWnd::FromHandle 获得 CWnd* 时,

指针可能是临时的,不应存储以供以后使用。

我不清楚“以后使用”是什么意思。它只是当前方法的范围吗?据我所知,Win32是没有GC的!

0 投票
1 回答
3259 浏览

wpf - XP 上的 WPF 内存泄漏(CMilChannel,HWND)

我的 WPF 应用程序以大约 4kb/s 的速度泄漏内存。任务管理器中的内存使用量不断攀升,直到应用程序因“内存不足”异常而崩溃。

通过我自己的研究,我发现这里讨论了这个问题:Track down memory leak in WPF and #8 here: http://blogs.msdn.com/jgoldb/archive/2008/02/04/finding-memory-泄漏-在-wpf-based-applications.aspx

所描述的问题是: 这是 WPF 中存在的漏洞,存在于 .NET 3.5 SP1 之前的框架版本中。这是因为 WPF 选择使用哪个 HWND 将消息从呈现线程发送到 UI 线程的方式。此示例销毁创建的第一个 HWND 并在新窗口中启动动画。这会导致从渲染线程发送的消息堆积而不被处理,从而有效地泄漏内存。

提供的解决方案是: 解决方法是首先在您的 App 类构造函数中创建一个新的 HwndSource。这必须在 WPF 创建任何其他 HWND 之前创建。只需创建这个 HwndSource,WPF 就会使用它来将消息从渲染线程发送到 UI 线程。这确保了所有消息都将被处理,并且不会泄漏。

但我不明白解决方案! 我有一个正在使用的 Application 子类,我尝试在该构造函数中创建一个窗口,但这并没有解决问题。

按照字面上给出的说明,看起来我只需要将其添加到我的 Application 构造函数中:

0 投票
3 回答
2627 浏览

c# - HWND 是否可见?

那些该死的用户和他们最小化的窗口。

在 C# 中,如果我有一个窗口的 HWND,有没有办法判断它是否在桌面上可见?

0 投票
2 回答
594 浏览

windows - 进程句柄的重用频率

当我使用 shell 函数打开它时,我注意到一个应用程序句柄。然后我稍后使用该句柄关闭应用程序。但是,用户也可以自己关闭该其他应用程序。然后该句柄是否可以被 Windows 重用,以便在我使用该句柄时关闭另一个进程。如果有可能,有可能吗?

0 投票
4 回答
11559 浏览

c++ - 带有 WIN32 API 的全局热键?

我已经能够像这样设置本地热键

如何将热键设置为全局?即使我的窗口被隐藏,我也希望它在那里。

0 投票
1 回答
1744 浏览

ms-access - 我如何知道单击了多选 Microsoft Access 列表框中的哪个项目?

我在 Microsoft Access 表单中有一个列表框。MultiSelect 属性设置为简单。

我想知道单击了列表框中的哪个项目。请记住,可以单击一个项目来选择或取消选择一个项目。

有没有一种简单的方法可以做到这一点?如果没有,是否有一种复杂的方法可以做到这一点?

我尝试使用 SendMessage windows API 但没有使用香蕉,因为访问控件不支持 hwnd 属性。

赛斯

0 投票
1 回答
1613 浏览

c# - 从工具栏获取包含 IE 窗口的 HWND

我正在为 IE 开发一个工具栏,我需要我的工具栏能够获取包含 IE 窗口的 HWND。它需要准确,以便同一窗口中的多个选项卡都将返回相同的 HWND,但与另一个 IE 窗口不同。

最好的方法是什么?我应该能够做到这一点:

但它总是返回“0”作为 HWND。

0 投票
1 回答
1833 浏览

c# - 我如何将另一个应用程序的子窗口变成选项卡?(C#)

例如,我有一个应用程序,它有一个主窗口,然后是其中的子窗口。 http://screenshots.rd.to/sn/e3hek/sapienfullwindow.png http://screenshots.rd.to/sn/e3hek/appscreen8.png 我需要的是抓取该应用程序的每个单独的子窗口,并显示它们作为我的应用程序中的选项卡或面板的句柄。

我已经有代码可以绑架应用程序并将其放入我的应用程序中,并且效果很好。

0 投票
1 回答
837 浏览

javascript - 从 Firefox 获取 HWND

我正在为 Firefox 编写扩展,我需要找出窗口的 HWND。我无法枚举正在运行的进程或类似的东西,因为它需要能够处理多个实例并区分一个实例。有没有办法通过 Firefox 中的 javascript 扩展来做到这一点?