0

我在 VS 2008 中多次使用“附加到进程”功能,但实际上从未在远程机器上使用过。现在我必须这样做,而且我已经在网上阅读了很多关于它的内容。在玩了一会儿之后,我已经到了一个我不太确定如何进行的地步。首先,这是我到目前为止所做的快速列表:

测试机(Win XP Pro SP3 x86):

  • 安装 Msvsmon
  • 将本地帐户的本地策略更改为“经典 - 本地用户以自己的身份进行身份验证”
  • 停用 Windows 防火墙(是的,这不是一个好主意,但可以避免任何端口问题)
  • 植入要调试的应用程序的副本,包括 pdb 文件
  • 创建了一个与我的开发机器上具有相同名称和密码的用户帐户
  • 确保新创建的帐户是 admin 并具有远程调试权限

VS 主机(Vista Home Premium x64 SP2、VS 2008 pro SP1)

  • 停用防火墙
  • 确保我可以通过 UNC 路径访问测试机(有效)

因此,网络通信有效。防火墙已关闭。Msvsmon 正在测试机器上运行。但是当我尝试通过“附加到进程”连接并输入测试机器的计算机名称时,我得到了这个(翻译自德语):

无法建立与名称为“TESTMACHINE”的 Visual Studio 远程调试监视器的连接。Visual Studio 远程调试器不支持该 Windows 版本。

过了一段时间,我才发现“不支持 Windows 版本”实际上是在说“身份验证错误”。

我什至尝试使用“没有身份验证的远程”而不是“标准”进行连接,即使它对我不起作用,因为我需要调试托管代码。所以我相应地调整了 Msvsmon 并且连接正常工作(我可以选择进程,但当然我不能真正调试)。所以这让我相信我遇到了身份验证问题。

所以最后,我的问题:

如何在两台机器上设置用户/身份验证,以便我可以远程调试同一工作组中的托管代码?

本地用户名相同,但如何允许“DEVMACHINE\me”在“me”实际上是“TESTMACHINE\me”的机器上进行远程调试?

谢谢 ;)

4

1 回答 1

0

我终于发现了问题所在。远程调试器似乎无法在 Vista Home Premium (!) 上运行,可以在此处阅读:

远程调试不支持 Vista Home Premium。远程调试需要支持完整 Windows 身份验证的操作系统。在 Visual Studio 的某些未来版本中,我们希望支持其他形式的身份验证。但是,我们目前与 Windows 身份验证紧密相关。目前有两种选择 - 购买商业版 Windows 或在本地调试。

就我个人而言,我认为这很荒谬——我实际上有一个 Vista 商业许可证,但 Home Premium 预装在我的开发机器上,我只是把它留在那里。

于 2009-11-18T15:03:34.313 回答