从CLRProfiler运行应用程序时出现UnauthorizedAccessException

问题描述 投票:0回答:1

我有一个应用程序,我试图用CLRProfiler配置,用.NET 4.0和WPF编写,在.NET Framework 4 Client Profile上运行。应用程序在启动后不久加载一个数据文件,其位置在app.config中(因此在程序运行时不会以交互方式选择它)。从Visual Studio或Windows资源管理器启动应用程序时,一切正常。

但是,从CLRProfiler启动应用程序时,应用程序崩溃时会尝试加载文件的UnauthorizedAccessException

尝试修复此问题,我向自己,域用户和所有人提供了对所述文件的完全控制权限,但问题仍在继续。监视任务管理器时,显示的短暂进程已在我的用户ID下启动。

有谁知道如何使用CLRProfiler解决此问题?

c# performance clrprofiler
1个回答
0
投票

最终,这结果是两个问题的组合:

  1. 不以管理员身份运行。
  2. 上面引用的数据文件具有在配置文件中指定的路径,但路径是相对的。当CLRProfiler启动应用程序时,工作目录仍然是分析器的工作目录,而不是切换到正在分析的应用程序。由于我没有特权,因此打开数据文件的失败实际上表现为UnauthorizedException,因为应用程序没有权限在安装了探查器的文件夹中进行root操作。

在纠正了这两个(第一个通过以管理员身份运行第二个,通过更改配置文件以使用绝对路径)后,问题就消失了。

© www.soinside.com 2019 - 2024. All rights reserved.