Winapi 检查a.exe以了解使用哪个版本的Visual C++;它是建造的 有没有方法检查VisualC++使用什么版本来构建给定的.exe?< /p> 我知道如果.exe使用CRT的动态链接是很容易的:我可以使用依赖性Walk,并读取MSVCRX.DLL版本,例如对MVCR90.DLL的依赖性意味着.exe是用Visual C++ 2008构建的,即VC9;但是使用CRT进行静态链接的情况如何?
可以检查Depends.exe中的链接器版本,它与VisualC++版本几乎相同Winapi 检查a.exe以了解使用哪个版本的Visual C++;它是建造的 有没有方法检查VisualC++使用什么版本来构建给定的.exe?< /p> 我知道如果.exe使用CRT的动态链接是很容易的:我可以使用依赖性Walk,并读取MSVCRX.DLL版本,例如对MVCR90.DLL的依赖性意味着.exe是用Visual C++ 2008构建的,即VC9;但是使用CRT进行静态链接的情况如何?,winapi,visual-c++,Winapi,Visual C++,可以检查Depends.exe中的链接器版本,它与VisualC++版本几乎相同 在Dependency Walker的下方视图中,选择列链接器版本可以检查Dependency.exe中的链接器版本,与VisualC++版本几乎相同 在Dependency Walker的下方视图中,选择列Linker Ver我在Matt Pietrek的MSDN上找到了这篇有趣的文章: 感兴趣的领域是IMAGE\u OPTIONAL\u HEADER32/64::MajorLinkerVersion和Mino
在Dependency Walker的下方视图中,选择列链接器版本可以检查Dependency.exe中的链接器版本,与VisualC++版本几乎相同
在Dependency Walker的下方视图中,选择列Linker Ver我在Matt Pietrek的MSDN上找到了这篇有趣的文章: 感兴趣的领域是
IMAGE\u OPTIONAL\u HEADER32/64::MajorLinkerVersion
和MinorLinkerVersion
。它们几乎与Visual C++版本(例如VC10)“10”和“0”相同。
(我认为这些是Dependency Walker在其用户界面中用于Linker Ver列的字段。)我在Matt Pietrek的MSDN上找到了这篇有趣的文章: 感兴趣的领域是
IMAGE\u OPTIONAL\u HEADER32/64::MajorLinkerVersion
和MinorLinkerVersion
。它们几乎与Visual C++版本(例如VC10)“10”和“0”相同。
(我认为这些是Dependency Walker在其用户界面中用于Linker Ver列的字段。)正确,但按照规定()这些字段是可选的。这些只是信息标志,仅此而已。Windows加载程序不关心这些字段。正确,但按照指定()这些字段是可选的。这些只是信息标志,仅此而已。Windows加载程序不关心这些字段。