oSIP协议栈的安装
vc6.0下的osip2(在libosip2.3.0.1)的编译基本步骤如下:
(1) 创建动态链接库工程,编译生成osipparser2.dll文件
1、在d盘上新建一个osip文件夹d:\osip;
2、把libosip2.3.0.1文件夹下的include文件夹整个拷到新建的d:\osip文件夹里;
3、新建vc6.0工程,选择win32 dynamic-link library,project name命名为osipparser,location为d:\osip。选择一个空的dll project。
4、然后Tools->options->Directories->include files设置如下:
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\INCLUDE
<wbr>C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE</wbr>
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
D:\OSIP\INCLUDE(需要添加)
5、project->settings->preprocessor difinitions中末尾添加“,osip_mt,_mt”,不要忘了逗号。把category选为code generation,然后设置Use run-time library选为Debug Multithreaded DL。
6、进入libosip2.3.0.1文件夹,把libosip2.3.0.1\src\osip2\里面所有*.c和*.h文件拷到D:\osip\osipparser目录下,<wbr> 即和*.dsw和*.dsp文件放一起;然后把.libosip2.3.0.1\platform\vsnet\osipparser2.def也放到这里。</wbr>
7、然后Project->Add to Project->Files,按住shift键把所有的*.c、*.def和*.h文件导入工程,然后编译即可。
<wbr></wbr>
(2) 创建静态链接库工程,编译生成osip2.lib文件
1、新建VC6.0工程,选择Win32 Dynamic-Link Library,Project name命名为osip2,Location为D:\OSIP。选择一个空的DLL project。
2、然后Tools->options->Directories->include files设置如下:
<wbr> C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\INCLUDE</wbr>
<wbr> C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE</wbr>
<wbr> C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE</wbr>
<wbr> C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE</wbr>
D:\OSIP\INCLUDE(需要添加)
3、然后Project->Settings->Preprocessor difinitions中末尾添加“,OSIP_MT,_MT”,不要忘了逗号。把category选为code generation,然后设置Use run-time library选为Debug Multithreaded DL。
4、进入libosip2.3.0.1文件夹,把libosip2.3.0.1\src\osip2\里面所有*.c和*.h文件拷到D:\osip\osip2\目录下,<wbr> 即和*.dsw和*.dsp文件放一起;然后把.libosip2.3.0.1\platform\vsnet\osip2.def也放到这里。</wbr>
5.把osipparser2.lib拷到D:\osip\osip2目录下面,在project选项中选择setting,然后在link中添加osipparser2.lib
6、然后Project->Add to Project->Files,按住shift键把所有的*.c、*.def和*.h文件导入工程,然后编译即可。
<wbr></wbr>
☆ osipparser2.lib静态文件库的生成方法
1.在vc下建立一个新项目,项目类型选择win32 static library
2.然后Project->Settings->C/C++->Preprocessor difinitions中末尾添加“,OSIP_MT,_MT”(不要忘了逗号)。同时把Category选为Code Generation,然后Use run-time library选为Debug Multithreaded DLL(多线程)。
3.把osip\src\osipparser2里面所有*.c和*.h文件拷到D:\myosip1\osipparser2目录下,即和*.dsw和*.dsp文件放一起;把osip\platform\vsnet\osipparser2.def也放到这里;
4.然后Project->Add to Project->Files,按住shift键把所有的*.c、*.def和*.h文件导入工程,然后编译即可生成osipparser2.lib文件。
※oSIP协议栈的使用
1.新建一个工程TEST
2. 把osipparser2.lib,osip2.lib两个静态链接库文件和osip2.dll拷到TEST目录下
3. 在project选项中选择setting,然后在link中添加osipparser2.lib,osip2.lib
4. Tools->options->Directories->include files设置如下:
<wbr> C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\INCLUDE</wbr>
<wbr> C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE</wbr>
<wbr> C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE</wbr>
<wbr> C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE</wbr>
D:\OSIP\INCLUDE(需要添加)
5.头文件为winsock2.h和osip.h
6.编译即可通过。
<wbr></wbr>
有可能出现重复定义的情况:
例如……readly defined in libcd.lib
原因及解决方法如下:主程序的库与 LIBCD库链接方式不一致造成的。本例中LIBCD是用动态链接的。所以可以设置:project->setting-> Generation->Use MFC in a shared DLL