修改了一个atl写的com的dll,在debug版本的时候可以顺利得编译连接;但是改成release版本之后,编译没有问题,但是在连接的时候出现一下问题:
--------------------Configuration: SafeIE - Win32 Release MinSize--------------------
Compiling...
FiltrateIE.cpp
Linking...
Creating library ReleaseMinSize/SafeIE.lib and object ReleaseMinSize/SafeIE.exp
LIBCMT.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
ReleaseMinSize/SafeIE.dll : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.SafeIE.dll - 2 error(s), 0 warning(s)
我在自己添加的代码中逐行注销进行连接,发现当源文件出现tolower函数会出现上面的错误,fopen函数也会导致相同的错误。我把这两个函数注销掉就不会有上面的问题。不知道这是什么原因引起的,别人告诉我库版本不对,但是我还是不知怎么改,还望有哪位高手指点一下,小弟不胜感激!
--------------------Configuration: SafeIE - Win32 Release MinSize--------------------
Compiling...
FiltrateIE.cpp
Linking...
Creating library ReleaseMinSize/SafeIE.lib and object ReleaseMinSize/SafeIE.exp
LIBCMT.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
ReleaseMinSize/SafeIE.dll : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.SafeIE.dll - 2 error(s), 0 warning(s)
我在自己添加的代码中逐行注销进行连接,发现当源文件出现tolower函数会出现上面的错误,fopen函数也会导致相同的错误。我把这两个函数注销掉就不会有上面的问题。不知道这是什么原因引起的,别人告诉我库版本不对,但是我还是不知怎么改,还望有哪位高手指点一下,小弟不胜感激!
D:\安装\Microsoft Visual Studio\VC98\ATL\INCLUDE\atlimpl.cpp(143) : warning C4273: 'calloc' : inconsistent dll linkage. dllexport assumed.
D:\安装\Microsoft Visual Studio\VC98\ATL\INCLUDE\atlimpl.cpp(148) : warning C4273: 'realloc' : inconsistent dll linkage. dllexport assumed.
D:\安装\Microsoft Visual Studio\VC98\ATL\INCLUDE\atlimpl.cpp(166) : warning
楼上给的方法没有问题,在此谢过。不过能解释一下吗