日期:2014-05-18  浏览次数:21136 次

jmail组件+64位windows2008问题请教
这边需要收发邮件。利用的是jmail组件,开发环境是32位操作系统,但是部署到正式系统中.程序刚开始,初始化一个POP3Class的对象的时候就报错:检索 COM 类工厂中 CLSID 为 {F812B147-0E26-4222-8EE4-9F753CD2B39C} 的组件时失败,原因是出现以下错误: 80040154
先说下我的注册过程:
1.先下载jmail.dll放到服务器的system32下面。cmd--regsvr32 jmail.dll 显示注册成功
2.在项目中应用刚才注册过的jmail

我的解决方案:
1.试试在syswow64下面重新注册,项目中重新引用。问题依旧
2.网上说可能是组件的权限问题,我在组件服务,DCOM中,试图找到这个组件,但是没有找到编号为F812B147-0E26-4222-8EE4-9F753CD2B39C的组件
3.网上说需要64位操作系统设置启动32位模式。在cmd中输入如下命令:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
结果报错,找不到inetpub\adminscripts\adsutil.vbs 文件。我网上下载了一个文件放到相应目录。执行后返回错误信息。后来再查资料,发现这是2003系统的解决方案(我这里是2008的)

已经折腾了好几天了。请知道的给个帮助。



------解决方案--------------------
winform的话,把你的程序直接编译成x86而不是any cpu 试一试。
在项目属性的build页 Platform target 设置

如果用Administrator用户运行的话,应该不会有权限问题。