网站引用外部dll部署于Server2008R2 64位 IIS6.1 平台不执行

问题描述

一个Asp.net网站,之前部署在Win764位IIS6.1平台可以执行,但现在搬到Server2008上引用dll部分不能正常运行,不报错,进入无限等待状态,或者返回不正确结果。做过以下尝试:1、在服务器上安装开发环境调试,测试结果正常。2、使用该控件做成.exe程序,测试结果正常。3、直接使用IIS调试,发现运行到dll部分登录功能长时间没有反应,其他功能不能正常返回结果。3、之前该电脑装过域控,怀疑与IIS开启32位有冲突,去掉域控甚至重新安装Server2008问题依旧。当前设置:1、网站权限最大。2、应用程序池(经典、集成)均测试过。3、启用32位应用程序。请大家给个建议应该从什么方面解决该问题?

解决方案

本帖最后由 MarkKings 于 2014-07-08 11:22:24 编辑
解决方案二:
这种情况可能跟环境有关,Server2008上安装的iis是什么版本,装个6.1或以上版本看看
解决方案三:
发布网站可以试试发布的时候选择X86发布
解决方案四:
不要启用32位应用程序,你的DLL可能是64位的.
解决方案五:
引用1楼sunny906的回复:

这种情况可能跟环境有关,Server2008上安装的iis是什么版本,装个6.1或以上版本看看

Server2008IIS默认与win7默认都是6.1
解决方案六:
引用2楼wangnaisheng的回复:

发布网站可以试试发布的时候选择X86发布

,我试了一下,还是不行啊
解决方案七:
引用3楼tcmakebest的回复:

不要启用32位应用程序,你的DLL可能是64位的.

亲,dll是32位的,如果不启用会报错的。未能加载文件或程序集“XXXXX”或它的某一个依赖项。试图加载格式不正确的程序。
解决方案八:
引用5楼MarkKings的回复:

Quote: 引用2楼wangnaisheng的回复:
发布网站可以试试发布的时候选择X86发布

,我试了一下,还是不行啊

我搞错了,应该是选择Release-AnyCPU你生成的DLL最好也是Release-AnyCPU这样应该是好了
解决方案九:
引用7楼wangnaisheng的回复:

Quote: 引用5楼MarkKings的回复:
Quote: 引用2楼wangnaisheng的回复:
发布网站可以试试发布的时候选择X86发布

,我试了一下,还是不行啊

我搞错了,应该是选择Release-AnyCPU你生成的DLL最好也是Release-AnyCPU这样应该是好了

之前是anyCPU,换回来问题依旧啊。。。
解决方案十:
期待大家给个方向讨论
解决方案十一:
参考:看一下Config里面的TrustLevel是不是Full<locationpath=”mydomain.com”allowOverride=”true”><system.web><trustlevel=”Full”originUrl=””/></system.web></location>

时间: 2024-10-21 10:45:41

网站引用外部dll部署于Server2008R2 64位 IIS6.1 平台不执行的相关文章

SSIS如何引用外部DLL

原文:SSIS如何引用外部DLL 当SSIS引用外部的DLL时,外部的DLL须满足以下条件: 1. DLL是强命名. 2. 加入到GAC (C:\WINDOWS\assembly),直接把DLL拉进目录. 3. 将编译好的dll拷贝到C:\Program Files\Microsoft SQL Server\90\DTS\PipelineComponents(SQL Server 安装目录)    和C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 然后

Asp.Net MVC3.0如何项目部署到Win7 64位系统_实用技巧

之前一直是通过Visual Studio直接F5来运行自己编写的项目或者小程序,很少通过部署发布到IIS上面,于是自己便在自己的笔记本上进行测试,结果还真是发现了不少问题,于是自己重新通过虚机程序进行全裸的新一次部署实践.部署进程第一步:现在Win7 64位操作系统上安装IIS,通过控制面板位置即可开启安装.如下图所示: 勾选后点击确定进行安装即可.第二步:IIS安装成功后,因为我的程序是通过VS2010开发的,而且是Asp.Net MVC3.0的程序,而且我的Win7 64位虚机也是新安装的,

windows下php_memcache.dll扩展下载(32/64位)

php_memcache.dll扩展下载:http://file.111cn.net/upload/2014/8/php_memcache.dll.rar 在windows下安装完memcached后,并启动.需要安装php memcache 的扩展, 在php.ini里添加extension=php_memcache.dll 然后再ext文件下加入php_memcache.dll php_memcache.dll 32位和64位都有 打印phpinfo(); 例子 说明memcache扩展成功

如何解决64位进程调用32位dll

问题描述 可否给个详细的案例或说明有个网址:http://www.cnblogs.com/mazhenyu/archive/2007/06/28/798710.html那里的东西你们不要发这个根本看不懂不要把那里的东西复制过来谢谢.请大神指教要详细一点的 解决方案 解决方案二:64位调32位的方法就是使用一个跨平台的进程.也就是说,需要创建一个和使用的DLL一致的平台进程.比如,64为需要调用32位的DLL,那么需要创建一个32位的进程.然后,让这个进程来调用32位的DLL.你的64位程序和这个

救急:64位oracle造成的.net程序连接数据库失败的问题

问题描述 64位win7,64位oracle11g,vs2010原来是32位oracle10没问题,换成,64位oracle11g后--"未找到oracle客户端和网络组件"!又装了32位oracle11g客户端(64位oracle11g数据库还要用),还是不行Q请教高手,如何处理?能否让vs2010认32位oracle11g客户端? 解决方案 解决方案二:1)最好的办法,是重做系统,2)然后再装32位的oracel.或修改系统的全局变量,将path中的原来指向64oracel的路径,

C# 32位程序访问64位系统注册表

原文:C# 32位程序访问64位系统注册表 我的上一篇文章已经阐述了"32位程序和64位程序在64位平台上读\写注册表的区别",那么接下来将要回答上篇所留下来的一个问题:32位程序如何访问64位系统注册表(即:64位程序所访问的注册表位置). 我们已经知道: ①:本机模式 64 位程序运行在纯模式下,并且访问键和存储在以下注册表子键中的值:HKEY_LOCAL_MACHINE\Software ②:32 位程序运行在 WOW64 模式下,并且访问键和值存储在以下注册表子项中:HKEY_

64位Windows是否真的必不可少?

如果你还不知道64位Windows,那么现在也应该关注一下了. 首先,对64位技术的历史作一个简短回顾:64位技术-即使是对Windows来说-也并不新鲜.Unix和OpenVMS使用64位技术已经有好几年了.Digital Equipment公司(DEC)在90年代中期就有在64位Alpha芯片上运行Windows NT系统的Alpha服务器了. 英特尔引进DEC的技术开发了名为IA64的Itanium芯片,我们原来认为那就是支持64位Windows的平台.后来,英特尔和AMD开发了x64,它

ubuntu 64位android项目报错的解决方案,打开64位 Ubuntu 的32位支持功能

ubuntu的64位下的android环境,说实话,还真得费点精力了,解决一个问题,又出来一个新问题. 小编昨天刚好不容易将android的环境搭建好了,这不,刚建了个项目,直接就报错,下面是罗列出的几条: 1. libstdc++.so.6:cannot open shared object file:no such file or directory 2. Description Resource Path Location Type Error executing aapt: Cannot

dll-Azure发布MVC应用程序网站,出现DLL引用版本异常 怎么解决?

问题描述 Azure发布MVC应用程序网站,出现DLL引用版本异常 怎么解决? Azure发布MVC应用程序网站,出现DLL引用版本异常 怎么解决?是否在Azure上发布网站程序必须是cloud节点下建立的项目才能发布? 解决方案 如果你用的是Windows Server 2008 R2,需要先安装.net framework 4.0 然后你需要配置你的iis的应用程序池,让它使用.net framework 4.0 解决方案二: 你只需要用VS新建一个普通的MVC网站 然后在azure管理页面