4

我正在使用 Visual Studio 2010 Express。我在 asp.net 中创建了一个网站。它适用于 XP,但不适用于 Windows 7 高级版(64 位)
我面临着这里提到的同样问题。
我尝试使用 regsvr32 注册 DLL,但显示错误为

The Module "c:\MyProject\bin\MyDll.dll" was loaded but the entry-point 
DllRegisterServer was not found.
Make sure that "c:\MyProject\bin\MyDll.dll" is a valid DLL or OCX and 
then try again.

我也没有在属性下找到任何选项来设置平台目标目标 CPU,以便我可以将我的网站转换为运行 32 位平台。
我是 ASP.NET 新手,请帮助...

4

2 回答 2

3

第一个概念是您的应用程序在 IIS 中的 64 位应用程序池下运行,该应用程序池未启用 32 位应用程序,在这种情况下,无法将 32 位 DLL 加载到 64 位进程空间中。检查托管您站点的应用程序池是否允许 32 位应用程序。

VS 2010 Express 应该默认创建 32 位可执行文件;虽然我没有亲自使用过它,但我相信我已经读过要在 2010 Express 版本中构建 64 位可执行文件,您必须下载额外的 SDK,因此您可能构建了一个 32 位目标,从而导致了所描述的问题。

于 2012-09-04T13:23:31.333 回答
1

我得到这个对话框试图运行 Visio x32 FlowChartSampleVBNET 加载项。该对话框出现了指向 Excel 的 CLSID{00024500-0000-0000-C000-000000000046}。我在 x64 机器上安装了 Excel x64。显然,Visio x32 和 Excel x64 之间的不匹配导致了问题。卸载 Microsoft Office 2013 x64 并重新安装 Microsoft Office 2013 x32 后,我可以正常运行加载项。

于 2016-10-05T18:58:50.770 回答