C# 远程桌面空闲时间

C# 远程桌面空闲时间,c#,desktop,C#,Desktop,我们有一个需要连续运行的应用程序,但它不能作为服务运行,所以我们在Windows2003控制台会话中运行它。迁移到Windows 2008并使用会话0隔离后,GPO会在会话空闲30分钟后使会话终止 我编写了一个小小的C#应用程序,使用sendkeys.send和sendwait模拟按键,但远程桌面会话仍然可以连接。除了更改GPO之外,还有没有其他保持会话永久活动的源代码或想法,因为这在目前是不可能的?我认为有两种方法可以让您获得想要的效果 1) SrvAny.exe-这是一个由Microsoft

我们有一个需要连续运行的应用程序,但它不能作为服务运行,所以我们在Windows2003控制台会话中运行它。迁移到Windows 2008并使用会话0隔离后,GPO会在会话空闲30分钟后使会话终止


我编写了一个小小的C#应用程序,使用sendkeys.send和sendwait模拟按键,但远程桌面会话仍然可以连接。除了更改GPO之外,还有没有其他保持会话永久活动的源代码或想法,因为这在目前是不可能的?

我认为有两种方法可以让您获得想要的效果

1) SrvAny.exe-这是一个由Microsoft提供的工具,它将获取任何exe并从“服务”控制面板运行。虽然没有正式支持Server2008的版本,但在Server2003上运行的版本运行良好。我曾经用它来运行dropbox的服务

下面是一个教程,它与dropbox做了类似的事情

2) 编写一个将作为服务运行的存根应用程序,只需从供应商处启动exe即可


我意识到这不是你问persay的,但它会给你想要的效果。

我必须承认,我很好奇,为什么你不能将此应用程序作为服务运行?嗯,这闻起来。。。您真的应该找到更好的方法来运行应用程序。在任何情况下,您是否尝试过通过任务调度器运行它(可以设置为在计算机启动时启动)?该应用程序由第三方供应商提供,他们需要几个月才能将该应用程序更改为作为服务运行。该应用程序处理实时事务,因此任务计划程序不是一个选项。感谢您的帮助。最终,所有的解决方案都被拒绝,因此决定修改域GPO。