Windows 服务中的 GDI 句柄与交互式应用程序
GDI Handles in Windows Service vs Interactive Application
我有一个在 Winforms 应用程序中使用的代码。相同的代码也用于 Windows 服务(exe 运行 作为 Windows 服务)。该代码获取图标的句柄。但我发现,在任务管理器(和 GDI 视图)中,当我 运行 Winforms 应用程序时,该应用程序显示 GDI 计数。但是当我通过 Windows 服务 运行 代码时,任务管理器中的服务实例没有显示任何 GDI 计数。那么,这是否意味着 Windows 服务永远无法持有 GDI 句柄?如果是这样,代码是如何工作的,即在句柄上运行的代码实际上在 Windows 服务中如何工作。
服务实际上能够以与普通应用程序完全相同的方式创建和使用 GDI 句柄,只是显示表面对用户不可见。
但是,任务管理器只能为 are in the same session that it is running in, and services always run in a separate session.
的进程查询此信息
所以,基本上,只是虚惊一场。 :-)
我有一个在 Winforms 应用程序中使用的代码。相同的代码也用于 Windows 服务(exe 运行 作为 Windows 服务)。该代码获取图标的句柄。但我发现,在任务管理器(和 GDI 视图)中,当我 运行 Winforms 应用程序时,该应用程序显示 GDI 计数。但是当我通过 Windows 服务 运行 代码时,任务管理器中的服务实例没有显示任何 GDI 计数。那么,这是否意味着 Windows 服务永远无法持有 GDI 句柄?如果是这样,代码是如何工作的,即在句柄上运行的代码实际上在 Windows 服务中如何工作。
服务实际上能够以与普通应用程序完全相同的方式创建和使用 GDI 句柄,只是显示表面对用户不可见。
但是,任务管理器只能为 are in the same session that it is running in, and services always run in a separate session.
的进程查询此信息所以,基本上,只是虚惊一场。 :-)