亲爱的Embarcadero用户,
我正在尝试将VS 2017项目迁移到Embarcadero,但到目前为止没有成功。您应该链接到“ https://social.msdn.microsoft.com/Forums/vstudio/en-US/607c7811-6c85-45f5-afd7-eb74c0f55d31/unable-to-compile-a-release-version-on-visual-studio-2017?forum=vssetup#bbe96e62-7a42-4501-9565-0a661165ac5a”以了解为什么我要迁移到Embarcadero。根据Darran Rowe的说法,我通过Visual Studio编译器对本地变量的零初始化(未正确初始化)构建的调试成功完成。我发布的版本也成功了,但是却通过解决6.000个数学highschool(+)练习而使我的测试(始终执行)失败了。 Darran Rowe表示,在构建的发行版中,代码的行为将是随机的。因此,错误的解决方案甚至运行时错误都将很丰富。但是我无法调试此发布版本。因此,我尝试了Embarcadero并成功编译了无错误的调试程序,但最终在链接时收到了下一条消息: 1. [ilink32错误]错误:从C:\ PROGRAM FILES(X86)\ EMBARCADERO \ STUDIO \ 19.0 \ LIB \ WIN32 \ RELEASE \ C0X32W.OBJ引用了无法解析的外部'_wmain' 2. [ilink32错误]错误:从F:\ BORLAND \ LST \ WIN32 \ DEBUG \ LST_MAIN.OBJ引用了无法解析的外部'HtmlHelpW' 3. [ilink32错误]错误:无法执行链接 这些错误使我当然无法成功构建!我在VS 2017中编译的代码足以运行我的程序。完全没有MFC,SDI和MDI!因此,我创建了所有窗口,菜单,工具栏等!当然,我不能完全知道C0C32W.OBJ是什么,但它可能是预编译的源代码/包含代码文件。我当然检查了一些示例,并且我检测到的唯一常见问题是带有以下几行:Appplication-> Initialize()和Application-> Run(),而这两个都在我的VS 2017 [w] WinMain()函数中丢失。 1. Embarcadero链接器似乎怀疑有MSDOS main()函数,但我打算使用Windows [w] WinMain()函数!我不知道如何说服链接程序,我的尝试应该与Windows项目有关!我当然检测到C0X32W.OBJ路径的“ WIN32 \ RELEASE \”部分! 2.我的代码仍然包含Visual Studio对Windows API HtmlHelp()的调用! 3.当然,Embarcadero链接器将停止尝试链接。而且Embarcadero将仍然无法帮助我创建Embarcadero可执行文件!这可能会留下我的问题“是否可以将VS程序迁移到Embarcadero?”未解决,既不确认也不拒绝!谁可以帮助我? 也许Embarcadero也采用了与Microsoft相同的想法,即对未初始化/未正确初始化的局部变量(在构建的调试程序中)进行零初始化,但我不希望如此,这会让我感到惊讶!但是,如果是这样,请告诉我,以便我完成任务!另外,我希望只有MainWindow可能是Embarcadero可执行文件中的问题!甚至可能不止一个:我自己和Embarcadero的MainWindow!
Ton Epskamp。