0

我使用在32 位服务器上运行的 fdf 工具包开发了一个应用程序(C# Framework 4) ,一切正常。

我已将此应用程序迁移到 Windows Server 2008 SP2 64 位,有时此应用程序会出现此错误:

System.Runtime.InteropServices.COMException (0x800703FA):检索具有 CLSID {CB830891-2E18-11D1-B8CF-00A0C9259304} 的组件的 COM 类工厂失败,原因是以下错误:800703fa 尝试对已标记的注册表项进行非法操作用于删除。

在这个错误之后,我回收了网站池并且应用程序再次运行良好。

申请详情:

  1. 在 c:\windows\SysWOW64 中注册了库 FDF.dll、FDFACX.dll 和 FDFTK.dll。
  2. 在网站池中启用“启用 32 位应用程序”属性
  3. 在组策略编辑器中启用“不要在用户注销时强制卸载用户注册表”属性

你可以帮帮我吗?

谢谢

4

1 回答 1

0

您构建应用程序的目标平台是什么?它将是 x86、x64、Itanium,或者很可能是“任何 CPU”。

您可以尝试将其设置为 x86,这样您就知道一切都是为使用 .Net 的 32 位版本而构建的。或者,您可以在您的程序集上运行CorFlags以将其更改为 x86 而无需重新编译。

如果这不能解决问题,那么我们将需要更多代码:)

于 2012-05-03T15:11:20.957 回答