【问题标题】:Visual Studio remote upload and debugging on other computerVisual Studio 远程上传和在其他计算机上调试
【发布时间】:2012-08-09 01:20:52
【问题描述】:

有没有办法在另一台电脑上远程上传、运行和调试应用程序?

我知道您可以将 Visual Studio 远程调试器附加到在远程计算机上运行的应用程序,但我正在寻找一种完全自动化的方法。

我正在构建一个家庭自动化系统,如果我可以在 Visual Studio 中获得某种插件,让我在 VS 中按 F5,然后应用程序将正常构建并发送到我的服务器 PC 并在那里运行(附带远程调试)。

问题是我的笔记本电脑没有我的服务器 PC 拥有的所有硬件。我可以手动将它连接到我的笔记本电脑,但老实说,这样做 2 到 3 次后会变得很无聊......此外,两台计算机之间的串行端口名称和其他一些与硬件相关的东西是不同的。这意味着我对每个系统都有不同的配置。

最后但并非最不重要的一点,我几乎会称之为最重要的事情哈哈: 我不想躺在床上写代码,或者坐在客厅里吃披萨,同时调试我的家庭自动化。现在我被 3 根 USB 线、一根音频线和一根连接电视的 HDMI 线绑在我的桌子上……这有点搞砸了。

远程调试存在...我们上传文件至少10年了...我们之前有程序运行其他程序...请告诉我有人发明了这个系统!!!强>

顺便说一句。我可以通过 Teamviewer 与应用程序进行交互。我只是不想经历“F5 -> Teamviewer -> 在本地电脑上做事 -> 在远程电脑上做事 -> 测试软件 -> 查找错误 -> 重复”过程。

如果我可以登录并且程序已经启动并运行,那就太好了。此外,如果我可以让 STOP 按钮停止远程 PC 上的软件,那就太棒了,我什至可以考虑将六瓶装的啤酒送给使这成为可能的人哈哈。

【问题讨论】:

    标签: visual-studio-2010 remote-debugging


    【解决方案1】:

    我不知道存在这样的产品但是你可以做很多事情来让平凡的任务变得更容易。

    1) 将您的开始操作从 Start Project 更改为 Start External Program

    run_remote_process.bat 中添加脚本

    a) 将二进制文件复制到远程/服务器 PC
    b) 使用remcom 在远程机器上启动你的进程

    现在是编码位:将其添加到您的 Main 入口方法中:

    public static void Main(string[] args)
    {
        if(args.Any(arg=>arg=="debug"))
        {
            while (!Debugger.IsAttached)
            {
                Thread.Sleep(100);
            }
            Debugger.Break(); 
        }
    }
    

    确保在启动进程时传递 debug 参数。这将挂起您的进程,直到您附加到它为止。

    所以现在您要做的就是使用 Visual Studio 附加到进程。您可以使用键盘快捷键快速完成此操作:

    Alt-D, P(按回车键)然后按您的进程的字母滚动到它(回车键)

    你走吧!

    不理想,但比许多手动步骤要好得多。

    【讨论】:

    • 谢谢!我想我会做某种服务器/客户端,它可以执行任务,然后让它按照你的描述运行。有点奇怪,这不存在。可以想象很多场景,对于开发人员来说,在他们自己的开发人员机器上在实际目标机器上执行整个“代码->运行->调试-重复”循环会很棒。
    猜你喜欢
    • 2021-06-20
    • 1970-01-01
    • 1970-01-01
    • 2020-08-26
    • 2012-11-13
    • 2019-12-01
    • 2013-10-30
    • 1970-01-01
    • 2020-11-20
    相关资源
    最近更新 更多