我正在尝试使用 NGen 来查看我的应用程序的本机映像是否比 .NET 运行得更好。但是,我在弄清楚该怎么做时遇到了一些麻烦。
我的应用程序名为MyApp.exe,它有几个依赖 DLL。
我打开 VS 2010 命令提示符并运行:
ngen install MyApp.exe /Profile
命令输出未表明遇到任何问题。
然后我去 C:\Windows\assembly 尝试运行 EXE,但在那里找不到它(我在 Windows 7 上)。一点点挖掘告诉我使用命令提示符浏览到 C:\Windows\assembly\NativeImages_v4.0.30319_32。我最终能够在那里找到我的 MyApp.ni.exe,但当然无法在资源管理器中打开包含文件夹。
我试图运行程序,它告诉我:
“C:\Windows\assembly\NativeImages_v4.0.30319_32...\MyApp.ni.exe 不是有效的 Win32 应用程序。”
命令输出说访问被拒绝。
我有两个问题:
- 我怎样才能运行这个程序,以便我可以执行本机版本。
- 我将如何分析它?看起来我无法从 VS2010 分析器中找到该文件夹,因为它在资源管理器中看不到。
谢谢。