别人写的一大堆用c写的程序,有*.c,*.h请问问题一:我怎么把这些文件生成dll文件,
问题二:然后我可以在c#调用这些文件,谢谢

解决方案 »

  1.   

    问题一:
    ++++++++++++++++++++++++++++
    使用vc.net编译。问题二:
    ++++++++++++++++++++++++++++
    using System.Text;
    using System.Runtime.InteropServices;[DllImport("VC.DLL", EntryPoint="GetName")]
    public static extern int GetName(    
        int intPara1,
        out intPara2,
        ref intPara3,
        string strPara4,
        out string strPara5,
        ref string strPara6,
        StringBuilder strPara7);
    部分参数对照表:
    C++                I/O     C# 
    char path[255]     O       StringBuilder
    KCA_DIR            I       int
    LPCSTR             I       string
    int                I       int
    LPSTR              O       StringBuilder
    int*               O       out int
    DWORD              I       int
    DWORD*             O       out int
    BOOL               I       bool
    long*              O       out long另:StringBuilder在使用时,必须指定大小:
    StringBuilder strPara = new StringBuilder(255);