Tag: 窗口句柄

C#列出当前打开的文件和程序

有没有办法可以获得所有打开的应用程序列表和所有打开文件的列表? 对于文件我只需要打开的文件(文档等)而不是OS的开放系统文件。 应用程序也是如此(仅限浏览器,文档处理器等)。 我已经尝试过像EnumWindows这样的Windows API中的各种function,但我无法得到我想要的function。 我最终目标的一个例子是拥有这样的列表: 应用 Microsoft Word,记事本,Mozilla Firefox 档 foo.txt,foo.mp3,foo.doc 我需要的只是名字,我不需要句柄等(即使我确定我必须使用它们来得到我想要的)

C#窗口定位

使用Windows窗体我想将窗口定位到特定的坐标。 我认为它可以用一种简单的方式完成,但是下面的代码根本不起作用: public Form1() { InitializeComponent(); this.Top = 0; this.Left = 0; } 但是,当只获得该窗口的句柄时,它运行良好: public Form1() { InitializeComponent(); IntPtr hwnd = this.Handle; this.Top = 0; this.Left = 0; } 您可以看到我根本不使用该指针。 我在MSDN上发现以下声明: Handle属性的值是Windows HWND。 如果尚未创建句柄,则引用此属性将强制创建句柄。 这是否意味着我们只能在创建句柄后设置窗口位置? 是否在内部使用此手柄设置了顶部/左侧? 谢谢你的澄清。

获取进程的所有窗口句柄

使用Microsoft Spy ++,我可以看到以下属于某个进程的窗口: 处理XYZ窗口句柄,以树forms显示,就像Spy ++一样,它给了我: A B C D E F G H I J K 我可以得到进程,MainWindowHandle属性指向窗口F的句柄。如果我使用枚举子窗口我可以得到G到K的窗口句柄列表,但我无法弄清楚如何找到窗口A到D的句柄。如何枚举不是Process对象的MainWindowHandle指定的句柄的子窗口? 要枚举我正在使用win32调用: [System.Runtime.InteropServices.DllImport(strUSER32DLL)] public static extern int EnumChildWindows(IntPtr hWnd, WindowCallBack pEnumWindowCallback, int iLParam);