C# IntPtr.Zero在System.Drawing.Graphics中的含义是什么

C# IntPtr.Zero在System.Drawing.Graphics中的含义是什么,c#,.net,winapi,intptr,word-addins,C#,.net,Winapi,Intptr,Word Addins,我需要在下面的函数中得到IntPtr.Zero的确切含义。 我使用此函数将word文档文本范围位置像素值转换为WPF单位值 Graphics g = Graphics.FromHwnd(IntPtr.Zero) 这通常表示传递句柄,但我没有得到它。Graphics。FromHwnd方法用于从窗口的指定处理程序创建Graphics对象 当您将IntPtr.Zero作为参数传递时,您正在从windows桌面创建一个图形,允许您直接在屏幕中绘制。IntPtr是一种平台特定的表示句柄或指针的方式。在3

我需要在下面的函数中得到IntPtr.Zero的确切含义。 我使用此函数将word文档文本范围位置像素值转换为WPF单位值

Graphics g = Graphics.FromHwnd(IntPtr.Zero)

这通常表示传递句柄,但我没有得到它。

Graphics。FromHwnd
方法用于从窗口的指定处理程序创建
Graphics
对象


当您将
IntPtr.Zero
作为参数传递时,您正在从windows桌面创建一个
图形
,允许您直接在屏幕中绘制。

IntPtr
是一种平台特定的表示句柄或指针的方式。在32位系统上,指针为32位宽,而在64位系统上,指针为64位宽。此类型的存在是为了向您隐藏这些差异

表示值为0(基本为空)的句柄或指针。您可以在API需要Windows API样式句柄的地方使用它,例如在示例中的
FromHwnd
调用中。在Windows API中,HWND是一个窗口句柄,其中null表示“无窗口”。要通过C#传递此信息,请使用。

“在Windows API中,HWND是一个窗口句柄,其中null表示“无窗口”。-Windows API中没有此类约定。只要
HWND
参数是可选的,它就带有特定的语义。由于
System.Graphics.Drawing
包装了GDI+,它是根据GDI实现的,因此我假设这会检索表示整个屏幕的对象,尽管没有具体的文档记录。