![]() |
1
5
我已经为此斗争了一个多星期,在阅读了很多关于这个问题的信息之后,终于找到了解决这个问题的方法… 您必须使用这样的createProcessAsUser函数:
大部分代码都是从 here 您还可以在其中找到要与此函数一起使用的WindowsAPI。 我仍在努力寻找是否可以避免蝙蝠文件,但至少是一个非常体面的解决方案。 编辑: 要避免使用外部*.bat文件来执行代码,只需编辑WindowsAPI类并用以下命令替换CreateProcessAsUser和ADVAPI32.dll导入部分:
现在,您可以使用StringBuilder作为createProcessAsuser函数的第三个参数(comandline),并将第二个参数(applicationName)设置为“Nothing”,如下所示:
它会起作用的!!!!! 当做, AP |
![]() |
2
2
你想做的是被微软主动阻止——如果你真的让它工作了,它会利用一个很快就会被关闭的漏洞。 但你能做的是 Friar Tuck/Robin Hood 解决方案-让两个程序运行并相互监控。当其中一个被杀死时,另一个会检测到这一点并重新启动它(或者,根据您希望的严重程度,只需将当前用户注销作为惩罚)。 |
![]() |
3
1
另一个不好的解决方案(但不存在向用户界面应用程序发送信号的缺点)是安装另一个服务来与桌面交互,桌面的任务是监听信号来锁定桌面。 我同意,使用本地系统凭据运行不是很好,但是如果所有服务都锁定桌面,那么需要保护的内存占用空间非常小。 |
![]() |
4
0
您可以尝试从自动锁定工作站的Windows服务启动屏幕保护程序。 |
![]() |
5
0
我对我的回答并不完全满意,但窗户的安全让我别无选择。任何打开的bu服务(通过进程、shell等)都不能访问桌面。我理解微软所造成的限制背后的原因,但仍然令人沮丧! 我的服务使用工控机告诉我的用户界面锁定计算机。下面是一个基本的链接: http://anoriginalidea.wordpress.com/2007/08/09/simple-inter-process-communication-in-vbnet/ 有关其他数据,请参阅他的参考链接。 然而,这仍然不太管用。另请参阅此链接,了解如何在不访问被拒绝消息的情况下执行此操作: 确保您的URI是正确的。服务器端的portname属性是getobject方法调用中IPC路径的第一部分。第二部分映射到服务器端的registerwellknowservicetype调用的第二个参数。 显然,在服务器端和客户机端,portname属性必须是不同的。 如果您“未能连接到IPC端口:系统找不到指定的文件”。在您的客户机上,服务器还没有启动,因此没有听到您的尖叫声。 |
![]() |
A B · C#Excel自动调整列避免长文本时出错 5 月前 |
|
pseudodev · 失败的测试仅显示堆栈跟踪,不显示完整日志 6 月前 |
![]() |
CactusCake · if语句中应有分号 7 月前 |
![]() |
Bin4ry · 子文件夹中的应用程序设置 7 月前 |