asp.net调用非托管dll,出错:“无法加载 DLL”(已排除路径问题)
我的asp.net程序调用了一个c写的foo.dll,foo.dll放在bin目录下,foo.dll用到的一些其他dll文件也放在了foo.dll目录下。当我运行这个asp.net程序时,提示“应用程序中的服务器错误。无法加载 DLL”,不管在vs.net里运行还是在浏览器中输入地址运行都是这个结果,xp、2000、.net1.0、.net1.1平台上都试过。请问该如何解决?
...全文
请发表友善的回复…
发表回复
darzui 2003-10-21
- 打赏
- 举报
bassil(bassil) :什么事Gac目录?
mjzcyber 2003-10-17
- 打赏
- 举报
如果还是不行的话,你把aspnet用户,添加到administrator这个组中。试试看。我在连接oracle的时候碰到过无法加载oci.dll的情况,就是这样解决的,应该可以吧!
mjzcyber 2003-10-17
- 打赏
- 举报
<processModel enable="true" timeout="Infinite" idleTimeout="Infinite" shutdownTimeout="0:00:05" requestLimit="Infinite" requestQueueLimit="5000" restartQueueLimit="10" memoryLimit="60" webGarden="false" cpuMask="0xffffffff" userName="machine" password="AutoGenerate" logLevel="Errors" clientConnectedCheck="0:00:05" comAuthenticationLevel="Connect" comImpersonationLevel="Impersonate" responseDeadlockInterval="00:03:00" maxWorkerThreads="20" maxIoThreads="20"/>
这里边有个user name = "machine"你把它改成system 看看
这里边有个user name = "machine"你把它改成system 看看
darzui 2003-10-17
- 打赏
- 举报
to:saucer(思归) :我试了你的方法,还是不行:(
我发现在web martix自带的那个web server里运行,可以加载dll,但是iis就不行。请问这又是怎么回事?ms的东西真是太奇怪了。
我发现在web martix自带的那个web server里运行,可以加载dll,但是iis就不行。请问这又是怎么回事?ms的东西真是太奇怪了。
wolve 2003-10-17
- 打赏
- 举报
感觉是由于访问权限的问题。你可以先通过在web.config中进行身份模拟后执行一下试试.
bassil 2003-10-17
- 打赏
- 举报
install foo.dll to you GAC directory!!!
可以解决问题!
saucer 2003-10-17
- 打赏
- 举报
consider to copy the dll to C:\Winnt\System32 directory and also give ASPNET or Network Service account access permissions
2002pine 2003-10-16
- 打赏
- 举报
我想请问一下:非托管的dll也可以引用吗?
当然可以,它就是把非托管的变成托管的,
当然可以,它就是把非托管的变成托管的,
darzui 2003-10-16
- 打赏
- 举报
to: mjzcyber(mjzcyber)
machine.config里的username太多了,具体是哪一个?
machine.config里的username太多了,具体是哪一个?
livingliving 2003-10-16
- 打赏
- 举报
引用还不行的话,就重新按装microsoft Visual studio.NET,
呵呵!…………^.^
呵呵!…………^.^
mjzcyber 2003-10-16
- 打赏
- 举报
可能是权限问题,你把machine.config文件的username 改成 system,试试看!
vasun 2003-10-16
- 打赏
- 举报
我想请问一下:非托管的dll也可以引用吗?
darzui 2003-10-16
- 打赏
- 举报
而且编译的时候没有提示错误,这说明foo.dll是找到了的。但是运行时就出错,我怀疑是不是iis的问题?
darzui 2003-10-16
- 打赏
- 举报
非托管的dll是不能引用的。另外,我在c#写的windos application中调用调用foo.dll是可以的。
2002pine 2003-10-16
- 打赏
- 举报
光拷到目录下是不够的,你还要在vs.net项目中,加引用,找到你的dll,就可了