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也是一样的效果
请求高人指点!谢谢

解决方案 »

  1.   

    发错版块了吧,代码是 C# 的哦,直接把 DLL 按照 LoadLibrary 那样写就好了,
    另外需要注意的是:DLL 是分 32 和 64 位版的,如果楼主是 64 位系统,编译的时候要选 32 位版的 X86 模式。
      

  2.   

    asp.net  使用C#语言开发
    这个问题已找到答案了,需要将3个dll放入服务器system32文件中
    目前的新问题是:服务器调试运行使用dll功能都没问题,但发布后使用报错
    有人说是IIS权限设置有关系,但不知道该怎么设置才能运行
      

  3.   

    DLL 放到网站 bin 目录试试
      

  4.   

    system32 和 bin 目录都放置了,调试运行都是可以的
    发布的时候 
    [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函数名称
      

  5.   

    问题一遍又一遍更新了,最终发现客户端调用DLL去读取设备数据,不是那么简单了。
    新问题又出来了:javascript + activeX 怎么样才能调用 该 dll 呢,因为没有ocx,
    只提供了dll  
    等待……。
      

  6.   

    怎么没人回答呢,。………
    上面的问题变成了  在html调用ActiveX正常,但放到aspx里浏览的时候还是可以运行,到了发布就用不了了,好纠结