毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> net技术 >> 正文

调用C的Dll 在C#中的写法

更新时间:2013-1-5:  来源:毕业论文

调用C的Dll 在C#中的写法
#ifdef __cplusplus extern "C" { #endif /*     参数:     char *pStrIn[in]             long lLenIn[in]                 char *pStrOut[out]     long *lLenOut[in,out]     */CS_BASEEN_API int BaseEn(char *pStrIn, long lLenIn, char *pStrOut, long *lLenOut);

    [DllImport(@"BaseEn.dll")]     protected static extern int BaseEn(string pStrIn, int BaudRate, ref string pStrOut, ref int lLenOut);

都是提示错误:尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
试试
  [DllImport(@"BaseEn.dll",CallingConvention= CallingConvention.Cdecl)]         protected static extern int BaseEn(string pStrIn, long BaudRate, string pStrOut, ref long lLenOut);

尝试读取或写入受保护的内存。这通常指示其他内存已损坏是参数传递错误
试试BaseEn(byte[],int,byte[],ref int)

[DllImport(@"BaseEn.dll")]
    protected static extern int BaseEn(string pStrIn, int BaudRate, ref stringbuilder pStrOut, ref int lLenOut);

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。