繁体   English   中英

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

[英]What is the best method of remotely controlling/debugging a .NET application?

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

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

设置这样的东西的最简单方法是什么?在安全性方面我需要注意什么?

任何想要或进一步阅读的指示将不胜感激。

更新

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

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

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

您通过IDE运行应用程序以进行调试这一事实表明您在应用程序死亡时没有获得足够的调试信息。 在尝试通过try / catch -ing在适当的位置解决它之前,请考虑解决此问题,并将相关信息记录到EventLog 然后可以从远程计算机读取日志。

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

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

编辑:根据您的更新判断,您似乎正在寻找远程调试器

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

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM