我注意到在VC ++控制台项目的默认链接器设置中,“入口点”保留为空。在生成的可执行文件上使用dumpbin我看到了
entry point (004110FF) @ILT+250(_mainCRTStartup)
我还检查了项目属性的命令行选项,并且没有给出“/ ENTRY”链接器选项。
那么链接器如何确定生成的可执行文件的入口点?我可以想到两个选项:
1)在CRT中有一些“#pragma comment(links,”/ enty:_mainCRTStartup“) 源代码。但我没有找到它。
2)链接器本身从“/ SUBSYSTEM:CONSOLE”选项中获取此信息。 因此,Visual Studio中的选项只会覆盖 link.exe所做的选择
你有什么想法吗?
答案 0 :(得分:0)
第二个猜测是正确的。链接器本身从给定的其他设置(例如/ subsystem:console)中获取此信息。见MSDN link。因此,只有在想要提供_mainCRTStartup以外的入口点时才需要项目属性中的选项。