各位大大,我原来一个解决方案里面有2个工程,一个提供lib,一个提供exe。exe依靠lib才行。程序是控制台界面的,用C语言写的。线在我想加一个windows的UI。所以我用了mfc。也就是说,旧的两个工程,我保留lib,把exe踢掉。改成mfc提供的UI来做。可线在我发现我的程序编译不起来了,总是lib的东西没法子给exe用。我已经用了依赖什么的了。搞不懂了,谁能帮我啊?
原来的两个工程的编译参数:
lib:
/Od /I "./" /I "../../src/include" /I "../../src/include/ipv4" /I "../../src/arch/msvc6/include" /D "_DEBUG" /D "WIN32" /D "_LIB" /D "IPV4" /D "LWIP_DEBUG" /D "_MBCS" /FD /EHsc /RTC1 /MLd /YX"stdafx.h" /Fp".\Debug/lwip4.pch" /Fo".\Debug/" /Fd".\Debug/" /W3 /nologo /c /ZI
exe:
/Od /I "./" /I "./apps" /I "../../src/include" /I "../../src/include/ipv4" /I "../../src/arch/msvc6/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "IPV4" /D "LWIP_DEBUG" /D "_MBCS" /FD /EHsc /RTC1 /MLd /YX"stdafx.h" /Fp".\test___Win32_Debug/test.pch" /Fo".\test___Win32_Debug/" /Fd".\test___Win32_Debug/" /W3 /nologo /c /ZI
新的工程,lib不变,用新的exe,新的exe编译参数如下:
/Od /I "./" /I "./apps" /I "../../src/include" /I "../../src/include/ipv4" /I "../../src/arch/msvc6/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "IPV4" /D "LWIP_DEBUG" /D "_MBCS" /FD /EHsc /RTC1 /MLd /YX"stdafx.h" /Fp".\Debug_matrix/Matrix.pch" /Fo".\Debug_matrix/" /Fd".\Debug_matrix/vc70.pdb" /W3 /nologo /c /ZI
原来的两个工程的编译参数:
lib:
/Od /I "./" /I "../../src/include" /I "../../src/include/ipv4" /I "../../src/arch/msvc6/include" /D "_DEBUG" /D "WIN32" /D "_LIB" /D "IPV4" /D "LWIP_DEBUG" /D "_MBCS" /FD /EHsc /RTC1 /MLd /YX"stdafx.h" /Fp".\Debug/lwip4.pch" /Fo".\Debug/" /Fd".\Debug/" /W3 /nologo /c /ZI
exe:
/Od /I "./" /I "./apps" /I "../../src/include" /I "../../src/include/ipv4" /I "../../src/arch/msvc6/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "IPV4" /D "LWIP_DEBUG" /D "_MBCS" /FD /EHsc /RTC1 /MLd /YX"stdafx.h" /Fp".\test___Win32_Debug/test.pch" /Fo".\test___Win32_Debug/" /Fd".\test___Win32_Debug/" /W3 /nologo /c /ZI
新的工程,lib不变,用新的exe,新的exe编译参数如下:
/Od /I "./" /I "./apps" /I "../../src/include" /I "../../src/include/ipv4" /I "../../src/arch/msvc6/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "IPV4" /D "LWIP_DEBUG" /D "_MBCS" /FD /EHsc /RTC1 /MLd /YX"stdafx.h" /Fp".\Debug_matrix/Matrix.pch" /Fo".\Debug_matrix/" /Fd".\Debug_matrix/vc70.pdb" /W3 /nologo /c /ZI
那用lib用什么做的?
没有相关的dll。我现在猜测可能是名字不同,lib是c编,倒出来的function name就是程序里的function name。exe是用mfc搞的,编译出来的名字和程序里的名字不一样。是不是这个可能会导致问题?
你打的编译参数给谁用的,cc?
MFC用的是cc,你的lib呢?
那个编译参数就是project->setting->c/c++->command line里面的,那个应该包含了c/c++里面的编译设定了。那个lib以前和c程序的exe可以一起工作阿。所以我觉得lib应该没有问题的to yangang000
我加了lib了,还是没有效果。总是lib的函数不能被找到。
Seting 里的lib完整路径描述
library directory里设你lib的路径。
最后一招:API LoadLibrary(),
还不行得话,来我这里喝茶算了。