DLL调用使用的方法
public class ImportDLL
{
[DllImport("kernel32.dll")]
private extern static IntPtr LoadLibrary(String path); private IntPtr hLib; public ImportDLL(String DLLPath)
{
hLib = LoadLibrary(DLLPath);
}
}hLib = LoadLibrary(DLLPath);
神思身份证读卡DLL有动态库RdCard.dll 需依赖sdtapi.dll WltRS.dll 两项,
现在用这个方法调用其它没有依赖的dll都没问题,但调用RdCard.dll返回为0,调用不成功
找了好多办法都不起作用,尝试过用LoadLibraryEx也是一样的效果
请求高人指点!谢谢
public class ImportDLL
{
[DllImport("kernel32.dll")]
private extern static IntPtr LoadLibrary(String path); private IntPtr hLib; public ImportDLL(String DLLPath)
{
hLib = LoadLibrary(DLLPath);
}
}hLib = LoadLibrary(DLLPath);
神思身份证读卡DLL有动态库RdCard.dll 需依赖sdtapi.dll WltRS.dll 两项,
现在用这个方法调用其它没有依赖的dll都没问题,但调用RdCard.dll返回为0,调用不成功
找了好多办法都不起作用,尝试过用LoadLibraryEx也是一样的效果
请求高人指点!谢谢
另外需要注意的是:DLL 是分 32 和 64 位版的,如果楼主是 64 位系统,编译的时候要选 32 位版的 X86 模式。
这个问题已找到答案了,需要将3个dll放入服务器system32文件中
目前的新问题是:服务器调试运行使用dll功能都没问题,但发布后使用报错
有人说是IIS权限设置有关系,但不知道该怎么设置才能运行
发布的时候
[AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.]
Common.J3K6U_InitDriver.Invoke() +0
Common.JBC3500PFU.j3k6u_InitDriver() +78J3K6U_InitDriver 是调用的DLL函数名称
新问题又出来了:javascript + activeX 怎么样才能调用 该 dll 呢,因为没有ocx,
只提供了dll
等待……。
上面的问题变成了 在html调用ActiveX正常,但放到aspx里浏览的时候还是可以运行,到了发布就用不了了,好纠结