我想编写一个应用程序,允许用户在公司网络中输入他们的机器登录凭证,然后将它们连接到该机器。显然,远程桌面连接的登录凭据不再保存在Windows7(和Vista?)的* .RDP文件中,因此this approach不起作用。我知道我可以使用rundll32 keymgr.dll,KRShowKeyMgr
查看保存的凭据,但不知道如何以编程方式向此存储添加凭据。任何指针或甚至代码示例(最好在C#中,但任何事情都会发生)将不胜感激。使用C#/ Windows7连接并登录到远程桌面
0
A
回答
2
您仍然可以将密码放在.rdp文件中,它仍然会遵守它们 - 除非有明确忽略它的组策略设置。
编辑:
对于它的价值,这文章是有点过杀人。在所有那些混乱的P/Invoke业务中都有一个托管包装。如果您使用.NET 2.0使用ProtectedData
类,则有更简单的方法。 (首先添加对System.Security程序集的引用)。
一旦你得到了补充参考,你可以这样做:
public string Encrypt(string toEncrypt)
{
var userData = Encoding.Unicode.GetBytes(toEncrypt ?? String.Empty);
return "password 51:b:" + ToHexString(ProtectedData.Protect(userData, new byte[0], DataProtectionScope.CurrentUser));
}
private static string ToHexString(byte[] bytes)
{
if (bytes == null)
{
return String.Empty;
}
return bytes.Aggregate(new StringBuilder(), (sb, b) => sb.AppendFormat("{0:x2}", b)).ToString();
}
就是这样。
+0
谢谢,非常有帮助! – Matthias
相关问题
- 1. 使用MSTSCLib登录到远程桌面
- 2. 远程桌面连接
- 3. C#中的远程桌面连接#
- 4. 连接到远程计算机 - 桌面
- 5. 可能使用PHP连接到远程桌面?
- 6. Lync和远程桌面连接
- 7. UIAutomation和远程桌面连接
- 8. 远程桌面连接保持超时
- 9. 远程桌面连接难题
- 10. 自动化远程桌面连接
- 11. 检测远程桌面从服务在登录时连接(W7/32)
- 12. 远程桌面连接监视器
- 13. 检测远程桌面连接
- 14. 远程桌面连接 - 对话框
- 15. 无法远程登录窗口天青远程桌面
- 16. SSH使用iPhone SDK连接到Mac以进行远程登录
- 17. sql server 2008远程连接登录
- 18. 桌面编程语言连接到远程MySQL
- 19. 远程桌面连接以编程方式模拟windows C++
- 20. 在远程桌面连接上使用pip安装mysqldb
- 21. 使用IOS通过平板电脑使用IOS远程桌面连接到PC
- 22. 远程桌面卡住“保护远程连接”
- 23. C#自动登录使用桌面应用程序的网站
- 24. Django的 - 登录远程登录页面
- 25. Windows/Linux上的多用户登录和远程桌面?
- 26. 如何将Django从桌面连接到远程Mysql Server?
- 27. 连接到远程计算机上的Windows桌面搜索
- 28. 如何使用C++通过互联网建立与远程桌面的连接
- 29. 无法连接到天青虚拟机上的远程桌面
- 30. 如何通过远程桌面连接连接到本地服务器?
您仍然可以将密码放在.rdp文件中,它仍然会遵守它们 - 除非有明确忽略它的组策略设置。 – vcsjones
你是完全正确的。您是否将您的评论重新发布为我可以接受的答案? – Matthias
答案补充一点。 – vcsjones