Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 在IIS上部署时未找到组件,但在运行ASP development server时找到组件_.net_Vb.net_Iis_Adobe_Fdf - Fatal编程技术网

.net 在IIS上部署时未找到组件,但在运行ASP development server时找到组件

.net 在IIS上部署时未找到组件,但在运行ASP development server时找到组件,.net,vb.net,iis,adobe,fdf,.net,Vb.net,Iis,Adobe,Fdf,我们有一个VB.net应用程序,它正在从一个盒子移动到另一个盒子。它在旧盒子上运行得很好。新机箱的配置与旧机箱相同,但在较新的硬件上。当我在新服务器上运行应用程序时,它会抱怨找不到我们使用的adobe toolkit 错误消息为 Compiler Error Message: BC30002: Type 'FDFACXLib.FdfApp' is not defined. on the line: Dim FdfAcx As FDFACXLib.FdfApp FDFACX.DLL和其他相关DL

我们有一个VB.net应用程序,它正在从一个盒子移动到另一个盒子。它在旧盒子上运行得很好。新机箱的配置与旧机箱相同,但在较新的硬件上。当我在新服务器上运行应用程序时,它会抱怨找不到我们使用的adobe toolkit

错误消息为

Compiler Error Message: BC30002: Type 'FDFACXLib.FdfApp' is not defined.
on the line:
Dim FdfAcx As FDFACXLib.FdfApp
FDFACX.DLL和其他相关DLL位于c:\inetpub\wwwroot\bin目录中。我检查了文件的权限,ASP用户对这些文件具有完全访问权限。我还向regsvr32注册了它们

Visual studio安装在新框上,如果我使用内置的开发服务器运行项目,一切都会运行良好(设置了对FDFACX.dll的引用)


IIS似乎无法引用dll。我不知道在这一点上还有什么可以尝试的。有什么建议吗?

64位进程无法加载32位库。可能.NET应用程序正在64位模式下运行?如果应用程序在新的x64框上运行,则默认情况下,它很可能在IIS中的64位应用程序池中运行。应用程序池是运行一个或多个IIS应用程序的工作进程。作为64位进程的64位应用程序池无法加载32位库。因此,在IIS中,您需要创建一个新的32位应用程序池,然后更新运行.NET应用程序的IIS应用程序,以使用新的32位应用程序池而不是默认应用程序池


打开IIS 7管理员。导航到您的网站。在右侧栏中,单击基本设置,您将在其中找到该网站的应用程序池的名称(默认情况下,它是DefaultAppPool)。然后在导航中转到应用程序池,选择正确的应用程序池,然后单击右侧的高级设置。如果启用32位应用程序设置为false,则为64位。对于IIS应用程序正在使用的应用程序池,“启用32位应用程序”必须设置为true。

64位进程无法加载32位库。可能.NET应用程序正在64位模式下运行?如果应用程序在新的x64框上运行,则默认情况下,它很可能在IIS中的64位应用程序池中运行。应用程序池是运行一个或多个IIS应用程序的工作进程。作为64位进程的64位应用程序池无法加载32位库。因此,在IIS中,您需要创建一个新的32位应用程序池,然后更新运行.NET应用程序的IIS应用程序,以使用新的32位应用程序池而不是默认应用程序池


打开IIS 7管理员。导航到您的网站。在右侧栏中,单击基本设置,您将在其中找到该网站的应用程序池的名称(默认情况下,它是DefaultAppPool)。然后在导航中转到应用程序池,选择正确的应用程序池,然后单击右侧的高级设置。如果启用32位应用程序设置为false,则为64位。对于您的IIS应用程序正在使用的应用程序池,“启用32位应用程序”必须设置为true。

对于chuckles,将带有dll的目录添加到您的路径中?

对于chuckles,将带有dll的目录添加到您的路径?

如何检查应用程序是否在64位模式下运行?请参阅刚刚附加的第二段。服务器是2003年的IIS 6,因此说明不匹配,但查看其他一些源,我们似乎在32位模式下运行。如何检查应用程序是否在64位模式下运行模式?请参阅刚刚附加的第二段。服务器是2003,带有IIS 6,因此指令不匹配,但从其他一些源来看,我们似乎是在32位模式下运行的。