[2008-04-09 10:22]visual studio 2005下命令行编译、连接生成dll

    技术2022-05-11  16

     

    (1)首先设置环境变量

    我的visual studio 2005的安装目录为E:/program/Microsoft Visual Studio 8, 所以设置include, lib, path的.bat文件为 :

    @echo off

    set include=E:/program/Microsoft Visual Studio 8/VC/PlatformSDK/Include;

    E:/program/Microsoft Visual Studio 8/VC/Include

    set lib=E:/program/Microsoft Visual Studio 8/VC/PlatformSDK/Lib;

    E:/program/Microsoft Visual Studio 8/VC/Lib

    set path=E:/program/Microsoft Visual Studio 8/VC/bin; %path%

    echo on

    (可以为include 和 lib 设置多个路径)

    仅仅设置好环境变量还是不够的,否则,ml编译的时候会弹出“无法找到组建”的错误对话框,错误的信息是:”没有找到mspdb80.dll,.....”。 mspdb80.dll位于E:/program/Microsoft Visual Studio 8/Common7/IDE和E:/program/Microsoft Visual Studio 8/Team Tools/Performance Tools目录下,注意,这时即使把这两个目录加入Path 中,系统仍找不到mspdb80.dll,并弹出同样的错误对话框,这可能是vs2005自身的bug。所以,只能将mspdb80.dll拷贝到 E:/program/Microsoft Visual Studio 8/VC/bin下。

    (2)编译、连接

    环境变量设置好了,编译和连接的命令是很简单的。

    编译命令:ml /c dllname.cpp  (也可以加 /coff ,编译成coff格式的.obj文件)

    我是用.def文件导出函数,所以连接的命令是:

    link /dll /dllname.obj /def:defname.def

    其中,dllname为dll的名字,defname同理。

    生成dll后,下面就是编写程序调用了。


    最新回复(0)