[英]Remote debugging C# application in VS2010
我尝试远程调试C#应用程序(WinXP(32位)下的远程PC,VS在Win7(64位)下运行,我收到一条错误消息:
Error while trying to run project: Unable to start debugging. Logon failure: unknown user name or bad password. See help for more information.
在两台机器上,我设置了具有相同名称/密码的用户帐户,并且这两台计算机都位于LAN中的同一工作组中。
当我在WinXP上启用登录审核时,我在事件日志中看到奇怪的记录,常识是: login forbidden for user SYSTEM
,但是我用另一个用户名运行VS和远程调试moniton。
有人可以解释我如何击败这个奇怪的错误?
Upd:我尝试使用命令运行VS2010作为远程用户: runas /user:pc_name\\user_name path_to_vs_ide
然后传递密码。 IDE成功启动,但是当我选择“附加到进程...”并在限定符字段中写入pc_name
时,我得到了与上面相同的错误: Logon failure: unknown user name or bad password.
所以我的问题仍然存在。 如何远程调试C#应用程序?
Upd2: 安装WinXP的新纯副本后问题解决了。
假设您有两台计算机,C1和C2。 您在两者上创建用户Alex,并且每个Alex副本都具有相同的密码。 相同的用户,对吗?
这些用户登录不一样。 每个都有不同的唯一标识符(UID)。
如果您尝试使用“Alex”作为用户名从C2登录C1,则您使用的用户是来自C2的Alex,而不是C1中的Alex,这是远程系统用于进行身份验证的主体。 但远程系统不知道C2中的Alex是谁。
尝试将远程凭据更改为等效的“C1 \\ Alex”:远程计算机名称, \\
和用户名。
您可以在此处查看有关如何设置远程工具的更多信息: http : //msdn.microsoft.com/en-us/library/bt727f1t.aspx Gregg的博客对帐户要求非常有用: http://blogs.msdn。 COM / b / greggm /存档/ 2008/05/15 /视觉工作室远程调试器服务的用户帐户requirements.aspx
您确实需要两个本地用户帐户,一个在主机和远程主机上,具有相同的用户名和密码(使Visual Studio使用与远程帐户(用户名和密码)匹配的本地帐户进行身份验证,该帐户已获得msvsmon中的调试权限。可执行程序)
Windows缓存凭据 - 如果您访问了资源并选中了“记住我”,则Windows缓存该资源的凭据。 如果您曾尝试使用登录到本地计算机的当前用户附加到进程,Visual Studio将获取这些缓存的凭据并尝试将其用作远程调试的身份验证。 因此,您需要清除这些凭据(控制userpasswords2,高级选项卡,管理密码,删除该远程主机的凭据)
现在,您可以尝试使用不同的凭据访问资源(如共享)并将其存储,也可以运行Visual Studio作为您要调试的用户,该用户对应于远程用户。
Alex,您可能需要更改Windows XP计算机上的本地安全策略设置,这里有更多详细信息: http : //msdn.microsoft.com/en-us/library/ek2256kk(v = vs.100).aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.