读书人

!DllImport的使用!解决思路

发布时间: 2012-02-14 19:19:19 作者: rapoo

!!!!!DllImport的使用!!!!!
(C++)开发
void __stdcall Make(char* szData, long nBarType, long nPicHeight,char* szBmpFileName);

参数说明:szData 条码数据 各种类型条码所支持数据类型不同
nBarType 条码类型编号
nPicHeight生成条码图片的高度,象素
szBmpFileName 生成条码的图片文件名,BMP格式

我的代码
[DllImport( "MakeBarCodeOne.dll ")]
public static extern void Make(string szData, long nBarType, long nPicHeight, string szBmpFileName);

public void MakeBar()
{
Make(textBox1.Text, 8, 40, @ "D:\abc.bmp ");
}

报错:尝试读取或写入受保护的内存。这通常指示其他内存已损坏

PS:一定要把要Import的DLL放到System32文件下吗?

[解决办法]
当前运行的目录,system32,或者配置好的环境变量目录都是可以的。
[解决办法]
把C++ LONG -> C# int

读书人网 >C#

热点推荐