我想知道是否有可能获得桌面的表格。我试图从桌面获取hWnd并使用Form.FromHandle来获取表单。但它总是返回null。所以我认为这是不可能的;如果有可能,有人可以给我看一个示例代码。 以下代码不起作用:
hWnd = GetDesktopWindow();
desktop = Form.FromHandle(hWnd) as Form;
System.Diagnostics.Debugger.Break();
P.S。有人也可以解释我在这里做错了什么。
答案 0 :(得分:6)
您无法执行此操作,因为桌面窗口不是Form
。 FromHandle()
尝试查找与给定窗口句柄对应的托管Control
(在本例中为Form
)。由于不存在此类Control
,因此会返回null
。