可执行文件在 ILDASM 文件浏览器中不可用

Executable Not Available in ILDASM File Browser

当我导航到 C:\Windows\System32 时,我可以看到它包含 Query.exe

但是,如果我使用 IL DASM 并转到相同的位置,即使我选择了 Any Types[,Query.exe 和一些其他文件也会丢失=28=] 文件类型

起初我认为可能是因为 query.exe 无法反编译,但我可以看到其中的其他 .exe 也无法通过 IL DASM(例如 calc.exe

为什么 IL DASM 会这样?

时刻提防file system redirector。您是 运行 ildasm.exe 的 32 位版本,因此它被重定向到 32 位可执行文件的主页,c:\windows\syswow64.

一个简单的解决方法是导航到 c:\windows\sysnative。或者使用 64 位版本的 ildasm.exe,比如 C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\ildasm.exe。或者配置 Visual Studio 命令提示符(又名 vcvarsall),如果你使用它,传递 "x64" 参数。

Query.exe 不是 .NET 程序集,因此没什么可看的。