远程控制/调试.NET应用程序的最佳方法是什么?

时间:2011-04-25 12:13:44

标签: .net vb.net remote-debugging remote-access

我每天24小时都在专用机器上运行VB.NET应用程序。我希望能够接收状态更新,并远程控制/调试应用程序(即通过互联网从另一台计算机)。

如果通信是轻量级的(就发送和接收的字节数而言)将是一个优势,所以我可以控制事物而无需快速的互联网连接。此外,我现在正在IDE中运行应用程序,因为有一些未处理的异常,并且以这种方式调试更容易。如果我不必编译它并捕获所有错误,那将是很好的。

设置此类内容的最简单方法是什么?在安全性方面我需要注意什么?

任何有关进一步阅读的想法或指示都将受到赞赏。

更新

澄清我需要给应用程序提供什么输入 - 理论上,没有。如果一切都按计划进行,我只需关闭应用程序并阅读某种日志即可。问题是它不稳定(主要是因为它调用的是非常不稳定的Web服务并返回各种奇怪的东西),因此我似乎需要不断的输入。

我的想法是,我能够远程进行这种调试的唯一方法是捕获每一个错误,读取日志,并以某种方式指示应用程序在将来正常运行。

3 个答案:

答案 0 :(得分:2)

这里有很多开放的目标,但这是我的想法:

通过IDE运行应用程序以进行调试这一事实表明,当应用程序死亡时,您没有获得足够的调试信息。在尝试通过try/catch处理相应位置之前解决此问题,并将relevant info记录到EventLog。然后可以从remote machine读取日志。

对于远程监控和控制,如果没有关于您的应用的更多信息,很难说什么是最简单的解决方案。需要通过界面做什么,你有什么访问限制,......?

基于有限的信息,我建议编写一个小型Web应用程序来控制您的应用程序 - 嵌入在应用程序中或作为通过其他方式控制它的小型服务。这样您就可以从Web技术和安全设置众所周知的事实中受益。

修改 根据您的更新判断,您似乎正在寻找remote debugger

答案 1 :(得分:1)

嗯......我认为你不需要开发解决方案......这听起来就像在服务器上运行的winapp。

您是否考虑在目标计算机上安装teamviewer,或者只是使用Windows RDC?

答案 2 :(得分:1)

如果您正在使用log4net或nlog等日志框架(如果您进行日志记录,则可以使用),您可以轻松使用远程appender。例如,log4net提供了一个远程appender,它通过tcp将日志条目发送到远程服务器,在远程服务器上你可以编写一个小型看门狗类型应用来监控你的系统。

如果您需要更简单的解决方案,可以使用电子邮件附加程序将所有错误邮寄给您。