8
A
回答
0
我找到了,我需要设置计划任务运行在常规设置最高权限的应用程序。
9
我只是尝试使用:
Process p = new Process();
p.StartInfo.Verb = "runas";
,如果我跑我的程序作为管理员这工作得很好,但是当计划任务运行它,它不走“运行方式”中考虑我想。
+0
Yepaaah。好的解决方案感谢分享。你让我今天一整天都感觉很好! – Nasenbaer 2011-10-27 15:40:22
2
如果您正在使用计划任务,则可以设置要在其下运行的任务的用户和密码。
在任务上使用管理员凭据,你会没事的。
随着Process.Start
,您需要提供UserName
和Password
为ProcessStartInfo
:
Process p = new Process("pathto.exe");
p.StartInfo.UserName = "Administrator";
p.StartInfo.Password = "password";
p.Start();
4
使用登录名和密码运行进程的更安全的选项是使用SecureString类来加密密码。这里是一个代码示例:
string pass = "yourpass";
string name ="login";
SecureString str;
ProcessStartInfo startInfo = new ProcessStartInfo();
char[] chArray = pass.ToCharArray();
fixed (char* chRef = chArray)
{
str = new SecureString(chRef, chArray.Length);
}
startInfo.Password = str;
startInfo.UserName = name;
Process.Start(startInfo);
您必须在您的项目属性中允许不安全的代码。
希望得到这个帮助。
1
请注意,只要有人可以仔细阅读应用程序并查看其中的内容,以明文形式在程序中存储密码永远不会安全。使用SecureString将存储的密码转换为SecureString密码不会使其更安全,因为明文密码仍然存在。
使用SecureString的最佳方式是一次只传递一个字符进行转换,而不需要在内存中或硬盘上的任何位置拥有完整的未加密密码。在该角色被转换之后,程序应该忘记它,然后继续下一个。
这可以做,我认为只有通过传递字符进行翻译,因为他们正在输入到控制台由用户。
相关问题
- 1. Python:如何用管理员权限启动进程?
- 2. IntelliJ是否以管理员权限启动进程?
- 3. C++降管理员权限
- 4. 在C#中使用管理员权限启动IISExpress
- 5. 使用管理员权限启动应用程序vC++
- 6. 管理员权限
- 7. 启动时无法以管理员权限启动WebMatrix
- 8. 如何在程序启动时请求管理员权限?
- 9. 启动具有管理权限的C#应用程序
- 10. 如何从管理员powershell启动非管理员进程
- 11. 以账户管理员身份启动程序,无需输入密码即可进入管理员权限
- 12. 启动进程作为管理员
- 13. 在Vista上启动具有管理员权限的Java运行时进程
- 14. 如何在没有管理员权限的情况下启动进程
- 15. c#从UAC管理员级别的权限降低启动过程
- 16. 如何启动具有管理权限的进程
- 17. 问管理员权限C++窗口
- 18. 如何检查管理员权限C#
- 19. C#.NET:获取管理员权限?
- 20. C#管理员权限 - 检查
- 21. Android设备管理员权限活动未启动
- 22. 没有管理员权限
- 23. 管理员权限错误
- 24. 保持管理员权限
- 25. Vb2012管理员权限
- 26. 管理员权限在php
- 27. TFS/MSTest管理员权限
- 28. 管理员权限与笨
- 29. 如何使用C#中的管理权限从具有父进程的管理权限跨越子进程?
- 30. 问题让程序管理员权限?
问题在哪里? – 2010-11-05 14:11:33