微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C ++入口点 – > main

我正在写我自己的小用户模式debugging器的乐趣。 我知道PE头中指定的入口点不是定义main()的程序(无论如何,就微软的c ++运行时而言)

我在哪里可以find关于在这个入口点之间发生的调用的一些文档,直到实际的main()函数,以及为什么调用它们,以及它们做什么?

我应该如何在Windows上启动一个可移植的Python Tkinter应用程序而不会有任何丑陋?

如何在Linux中将PE(Portable Executable)格式转换为ELF格式

PIMAGE_EXPORT_DIRECTORY – 内存访问错误

Windows PE – 如果不在资源中,string存储在哪里以及如何存储?

PE文件中的段和数据目录之间的关系是什么?

你不能。 其实主要可能不存在。 例如:可以覆盖链接器使用的认CRT入口点,主可以内联到CRT启动功能等。

CRT的源代码随Visual Studio一起提供。 例如,对于Visual Studio 2010的认安装位置,位于:

C:Program FilesMicrosoft Visual Studio 10.0VCcrtsrc

实际的main()在crt0.c 。

不同类型的CRT(静态,DLL,MT,x86,x64等)受CRTDLL , _M_IA64等一些定义的控制。 你会看到什么时候你挖。

除了源代码本身之外,AFAIK调用代码的行为是没有记录的。

首先将光标放在main并使用调试器“run to here”。 或者在那里设置一个断点。 然后检查调用堆栈中的调用

干杯&hth。,

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐