【发布时间】:2010-11-03 09:02:14
【问题描述】:
我有基于 DirectShow 的屏幕捕捉软件。它在内部调用 CopyScreenToBitmap 函数来抓取屏幕。然后图片被ffdshow压缩。 它作为桌面应用程序运行良好,但作为窗口服务,在某些计算机上它不起作用(黑色图片)。我已设置“允许服务与桌面交互”并在当前用户帐户上运行该服务。 有什么想法可能是错的吗?
我在 Windows XP 上对其进行了测试,但预计它也可以在 Vista 和 7 上运行。
是的,它在所有计算机上都可以作为桌面应用程序运行,但在其中一些(大多数)计算机上,它作为服务失败。
【问题讨论】:
-
您的服务无法正常运行的计算机上正在运行哪些操作系统?
-
@bezieur:“预计会奏效”!=“会奏效”,甚至“有可能会奏效”。你不应该用“它应该工作”来操作,你应该测试它。 Win32 服务模型在 Vista 及更高版本中发生了显着变化。
-
@Mihai:当然,你是对的!我的意思是它现在必须在 XP 上运行,但在未来(很短的一个)要求将是在更新的 ms os 系统上运行:-)。
-
@bezieur:现在的化身更好,谢谢:)
-
来自stackoverflow.com/questions/1832384/…,看来Vista不允许“服务与桌面交互”
标签: c# c++ windows-services screen-capture