Articles of hwnd

创build另一个进程的HWND的子窗口? (例如屏幕保护程序预览)

我正在用Java编写一个屏幕保护程序。 这主要是针对Windows,但我更喜欢它像便携一样实用。 根据http://support.microsoft.com/kb/182383 ,当用命令行参数/p HWND调用屏幕保护程序时,屏幕保护程序应该“将屏幕保护程序预览为窗口的子窗口”。 据推测,这是屏幕保护程序设置对话框中的小预览。 那么,在Java中,如何创build一个属于其他人的窗口的孩子的JFrame或JComponent? 我已经看到在一个JPanelembeddedHWND(窗口句柄)这是一个相反的问题:开发人员控制父窗口,并希望embedded一个子窗口。 在我的情况下,我控制一个孩子的组件,我想embedded到父母不是“我的”。 我可以使用JNA来做到这一点吗? 除了Java代码之外,我宁愿不必维护C代码。 (所以JNI不是首选。)我知道JDIC应该满足这样的需求,但是我已经读过JDIC已经基本死了。 我正在运行Windows 7,FWIW。

监视窗口的创build(HWND)

我想在C中监视窗口的创build(HWND) 我想知道是否有WINAPI提供的某种事件来处理创build窗口。

获取每个窗口的HWND?

我正在开发一个Python应用程序,我想获得每个打开的窗口的HWND 。 我需要窗口和HWND的名称来过滤列表来pipe理一些特定的窗口,移动和调整它们的大小。 我试图自己看看周围的信息,但我没有得到正确的一段代码。 我试着用这个代码,但我只得到每个窗口的标题(这是伟大的),但我也需要HWND 。 import ctypes import win32gui EnumWindows = ctypes.windll.user32.EnumWindows EnumWindowsProc = ctypes.WINFUNCTYPE(ctypes.c_bool, ctypes.POINTER(ctypes.c_int), ctypes.POINTER(ctypes.c_int)) GetWindowText = ctypes.windll.user32.GetWindowTextW GetWindowTextLength = ctypes.windll.user32.GetWindowTextLengthW IsWindowVisible = ctypes.windll.user32.IsWindowVisible titles = [] def foreach_window(hwnd, lParam): if IsWindowVisible(hwnd): length = GetWindowTextLength(hwnd) buff = ctypes.create_unicode_buffer(length + 1) GetWindowText(hwnd, buff, length + 1) titles.append((hwnd, buff.value)) return True EnumWindows(EnumWindowsProc(foreach_window), 0) for […]

我怎么知道一个窗口是否有焦点? (Win32 API)

使用Win32 API(在C中,但这是无关紧要的)我怎么知道一个给定的窗口(由HWND标识)是否有焦点? 我挂钩一个应用程序监视一个事件,当这个事件发生时,我想检查应用程序是否已经有焦点。 如果没有,我想闪动窗口,直到他们注意到它。 或者,FlashWindowEx结构标志FLASHW_TIMERNOFG闪烁,直到窗口焦点不闪,如果窗口已经有焦点? 我现在不能testing,因为我不在我的开发环境中,但是我的印象是它会闪烁,这正是我想要避免的。 编辑:此外,如果它很重要,应用程序在此窗口中使用DirectX。

EnumWindows返回句柄的顺序是否有意义?

从几个初步的testing看来, EnumWindows总是以反向实例顺序返回窗口,即最近实例化的窗口。 这是一个有效的观察? 如果是这样,所有版本的Windows都是真的吗? 这是一个可靠的假设,也就是说,行为logging在某个地方? 上下文: 我正在处理的情况是,我正在触发第三方应用程序来打开几个非模式窗口,我需要发送一些窗口消息到这些窗口打开,但我没有确定的方式确定他们的窗口类别和他们的标题不会有所不同,我也不知道他们的预期坐标。 但是,如果我可以依靠EnumWindows的上述行为,我可以简单地使用由EnumWindows返回的第一个句柄,它们的类和标题符合我的期望。 这仍然留下一些假设的循环漏洞,但我认为这将是足够好的。 不过,欢迎提供其他build议。

在C中使用ShellExecute()打开一个.txt的正确方法是什么?

好的,所以我需要打开一个.txt文件,将在与程序相同的文件中创build。 我想使用ShellExecute(); 要做到这一点,我已经做了大量的研究,我只是无法得到正确的语法主要是因为我不知道如何处理参数“HWND” 我在这里寻找答案,并得到除了在HWND中放置的所有信息 这里是我需要使用的代码: ShellExecute(0,"open","c:\\debug.txt",NULL,NULL,1); 感谢提前的帮助问你是否不确定我在说什么! 🙂 这是我用来testing函数的程序: #include "DAL.h" //DAL.h added to Testing file to make compiling easier //Created to test show_debug() int main(void) { int test1,test2,final; puts("Enter 2 numbers to add (2,2)"); scanf("%d,%d",&test1,&test2); log_debug(test1); log_debug(test2); view_debug(); final= test1+test2; printf("%d\n",final); log_debug(final); return(0); } view_debug(); 是包含ShellExecute的函数 void view_debug(void)//WIP //Opens the debug.txt in notepad { […]

如何从DLL中获取HWND?

我有一个DLL,我想用Direct Sound播放声音。 为了播放声音,我需要可执行文件的HWND。 我没有加载DLL的可执行文件的HWND。 如何在不从可执行文件传入DLL的情况下获取它?

C#显示隐藏窗口

我正在开发一个Excel的插件。 在某些时候,我可以收到asynchronous事件。 我需要能够显示Excel窗口,如果隐藏在这些事件。 我能够存储Hwnd属性,我相信它必须是一个不可变的int /引用来标识我的Excel窗口。 有人可以详细说明这个Hwnd吗? 并解释如何从C#显示一个隐藏的窗口使用它? 在此先感谢人们;) 更新:不久,这是sorting我的问题的代码片段: /// <summary>Enumeration of the different ways of showing a window using /// ShowWindow</summary> private enum WindowShowStyle : uint { /// <summary>Hides the window and activates another window.</summary> /// <remarks>See SW_HIDE</remarks> Hide = 0, /// <summary>Activates and displays a window. If the window is minimized /// or […]

HWND是否可见?

那些沉闷的用户和他们最小化的窗口。 在C#中,如果我有一个窗口的HWND,有没有办法判断它是否在桌面上可见?

我想在特定的航空窗口上禁用阴影效果

我想在特定的航空窗口上禁用阴影效果。 我所拥有的就是这个窗口的HWND,这可能吗?