visual studio 2013远程调试监视器找不到指定的文件

时间:2014-07-06 15:03:42

标签: visual-studio-2013 remote-debugging visual-studio-debugging

我的Win7 x64桌面上有VS2013 Universal Update2,我正在尝试调试需要在服务器上运行的进程,因此在我的Windows 2008 R2 x64服​​务器上安装了visual studio 2013远程调试监视器(x64 Update2版本)。然后修改本地VS2013项目以使用远程调试指定远程计算机名称和C:\ RemoteDebug工作目录文件夹。令我感到惊讶的是,本地机器上实际上需要工作目录文件夹,否则我得到了它丢失的投诉,现在,我收到了错误

"Error while trying to run the project: Unable to start the program '<MyLocalTfsPath>\<MyProgram>.exe'. The system cannot find the file specified."

我的本​​地可执行文件位于提到的路径上。远程监视器已启动并告诉我已连接每个调试尝试,因此这不是连接问题。在我看来,本地与远程文件夹位置与我对此新更新(方案1)的期望相反。我知道旧的远程调试(场景2)使用&#34;启动外部程序&#34;它链接到本地​​机器上的文件,但似乎VS2013 Update 2增强了这个和这个文档

http://msdn.microsoft.com/en-us/library/8x6by8d2.aspx#BKMK_Set_up_a_Visual_C__Visual_Basic_project

意味着它将在远程计算机上发布文件并执行&#34;启动项目&#34;像往常一样。目前我无法测试方案2,因为我使用OpenVPN进行连接,而我的服务器没有直接看到我的本地桌面。所以我希望让场景1在VS2013进行某种发布的地方工作。使用VS2013 Update 2,哪些文件和文件夹放在哪里,我或VS2013将它们放在那里?我是否了解VS2013 Update 2在远程调试方面提供的内容?

1 个答案:

答案 0 :(得分:7)

我遇到了同样的错误,但情况略有不同。我的开发机器(假设它的名称为DEVMACHINE正在运行VS2012而我正在尝试在Surface Pro 2上调试应用程序(假设它的名称为REMOTEMACHINENAME。我会让您快速了解我遵循的步骤:

  1. 在Surface
  2. 上安装“Visual Studio 2012 Update 4的远程工具”
  3. 安装完成后,从开始菜单运行“Remote Debugger”。在第一次运行时,我给出了一个配置防火墙等的对话框。有关详细信息,请参阅here
  4. 现在应该启动远程调试器,你应该在其中看到一条消息"Vsvsmon started a new server named 'REMOTEMACHINENAME:4016'. Waiting for new connections."
  5. 在您的开发机器上,打开VS2012。右键单击您的项目,然后选择Properties
  6. 在属性窗口中,选择Debug标签。勾选Use remote machine并在旁边的字段中输入远程计算机的名称(在我的情况下为REMOTEMACHINENAME
  7. 现在转到Build标签,将Output path更改为您的开发计算机的网络路径。就我而言,这是\\DEVMACHINE\c$\projects\myapp\project\bin\x86\Debug\
  8. 的内容
  9. 保存属性
  10. 现在开始调试
  11. 当我遇到与您相同的错误时,我没有放入第6步,因此当我尝试远程调试时,它一定是在远程计算机上寻找C:\路径。通过我的开发机器的网络路径,它工作正常。

    另一个快速注意事项是,在尝试调试时,我有时会遇到问题VS2012会将访问被拒绝的错误抛给我的exe的调试路径。这是因为即使我关闭了远程计算机上的应用程序并在VS2012中停止调试,远程计算机上的进程也未能停止。只是另一件可能会让你感到厌烦的事情。