我在asp.net2.0中调用C++写的DLL,在我开发的机器上(windows2003+iis6.0)没问题,在测试的一台机器上(windows2003+iis6.0)上也没问题,但在另外的两台(win2000+iis5.0)上面报错,错误信息如下:Unable to load DLL Custom.dll': 找不到指定的模块。 (Exception from HRESULT: 0x8007007E) 代码如下:
       
        [
        DllImport("Custom.dll",
        EntryPoint = "ICustomInitialize",
        CharSet = CharSet.Ansi,
        CallingConvention = CallingConvention.StdCall)
        ]
        public static extern bool CustomInitialize();请各位帮忙看看,谢谢!!!

解决方案 »

  1.   

    把dll放到系统目录以及system32目录下试试。
      

  2.   

    Knight94(愚翁),按你说的,把用到的DLL全部都放到系统目录下了就可以了。但总不能这样部署吧?这是什么原因造成的呢?该如何解决?谢谢!
      

  3.   

    不一定要放到system32目录下。 可以放到任一目录,最好是你项目特定的一个放外部DLL的一个地方(便于管理),然后,在项目上点右健,增加》增加现有项》选中那个dll就可以了。纯属个人看法,仅供参考。
      

  4.   

    to Knight94(愚翁),按你说的,把用到的DLL全部都放到系统目录下了就可以了。但总不能这样部署吧?这是什么原因造成的呢?该如何解决?谢谢!这是IIS5自身的问题,程序运行的默认目录没法转换到iis虚拟目录,看看是否能通过升级IIS来改变。
      

  5.   

    to Knight94(愚翁),我昨天也怀疑IIS5的问题,但尝试着在win2000下安装IIS6,结果没有成功。不知道你遇到这样的问题是怎么解决的?
      

  6.   

    2000只能能装IIS5.0
    XP  5.1
    2003 6