分析在 RDP 上运行的 C# 应用程序

Posted

技术标签:

【中文标题】分析在 RDP 上运行的 C# 应用程序【英文标题】:Profile a C# application running on RDP 【发布时间】:2013-10-17 12:55:43 【问题描述】:

我有一个仅通过 RDP 运行缓慢的应用程序。

这是我现在所知道的:

是 InitializeComponents() 方法比较慢 只有在启用 RDP“使用本地打印机”时,应用才会变慢。

我不知道的:

如果是 InitializeComponents() 方法中的一个语句很慢,或者是多个语句。

理想情况下,我想检索方法中所有语句的列表,按使用时间最多的语句排序。理想情况下,我不想在客户服务器上安装任何软件。

有什么想法吗?

【问题讨论】:

【参考方案1】:

您可以使用Visual Studion remote debugger 附加到进程,也可以使用JetBrains dotTrace remote profiler feature。这两种方法都需要您在客户端运行“代理”。

【讨论】:

【参考方案2】:

我会建议检查您在InitializeComponents 中所做的事情。尤其是在创建非标准 Windows 窗体组件时的部件。

当然,您可以使用一些分析器(例如查看 Orsol 答案),但如果您在 InitializeComponents 中添加自己的代码以找出导致您速度变慢的部分,可能会更快。

【讨论】:

感谢您的回复。我同意你和奥索尔的看法。我可能不得不进行分析来解决这个问题。谢谢你的回复:) @AndersLindas 你不需要感谢 ***。投票有用或标记为答案就足够了。

以上是关于分析在 RDP 上运行的 C# 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

在 RDP 下运行 QML 应用程序时出现 OpenGL 问题

当管理员用户使用 Rdp 登录服务器时代码运行

Windows Servis 应用无法识别 RDP 会话上的智能卡

分析在 docker 容器上运行的 C# dot net 应用程序

RDP 连接中的组策略

作为启动 RDP 程序运行时如何停止初始形式最大化?