新足迹

 找回密码
 注册

精华好帖回顾

· 我的揾工经验 (2006-3-30) StKilda · 浓香的回忆@我给妈妈的中秋节礼物——比蓝罐曲奇还要好吃的家制五色小饼干 (2011-9-20) Quantum
· 状况连连的鬼月斐济行(游记+攻略 万字长文) (2018-10-14) 海边小妹 · 我以为我会哭,但是我没有 (2015-3-12) lucindaaus
Advertisement
Advertisement
查看: 1195|回复: 6

---------- 在几乎可以确定是Permission原因的情况下,可以怎么整? ---------- [复制链接]

发表于 2012-8-15 16:20 |显示全部楼层
此文章由 梦呓人 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 梦呓人 所有!转贴必须注明作者、出处和本声明,并保持内容完整
WCF service call 一个 Visual Foxpro 产生的dll来建一个object.  (这个dll事先regsvr32注册好)


如果这个WCF在Visual Studio debugging模式下,这个call没有问题。 (ie 使用Visual Studio的ASP.NET Development Server)


但如果把这个WCF service publish在IIS下面,再去call Visual Foxpro的dll内方法时,就出现以下错误:


Retrieving the COM class factory for component with CLSID {E7FB0813-E495-40F4-B0FB-3CA9EE733F43} failed due to the following error: 80004005 Unspecified error (Exception from HRESULT: 0x80004005 (E_FAIL)).



我猜想89不离10是permission的关系,IIS和VS的权限不同。但是我已经把VFX folder的读写权限给IUSER和IIS_IUSERS。 用Trace Viewer打开log显示:


OS是Windows Server 2008R2

[ 本帖最后由 梦呓人 于 2012-8-15 15:22 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
Advertisement
Advertisement

发表于 2012-8-15 16:33 |显示全部楼层
此文章由 无视 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 无视 所有!转贴必须注明作者、出处和本声明,并保持内容完整
你这问题太难,到stackoverflow问问看?

发表于 2012-8-15 16:40 |显示全部楼层
此文章由 北风 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 北风 所有!转贴必须注明作者、出处和本声明,并保持内容完整
放到GAC里面?

发表于 2012-8-15 16:59 |显示全部楼层
此文章由 梦呓人 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 梦呓人 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 无视 于 2012-8-15 15:33 发表
你这问题太难,到stackoverflow问问看?



新足迹就是我的Stackflow

发表于 2012-8-15 17:03 |显示全部楼层
此文章由 梦呓人 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 梦呓人 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 北风 于 2012-8-15 15:40 发表
放到GAC里面?



试了一下,

Failure adding assembly to the cache:   The module was expected to contain an assembly manifest.



前面的regsvr32把它写进注册表,这样WCF在call那个constructor的时候就知道那个dll在哪个位置。因为在VFX目录下,所以我特定把IIS_IUSERS的权限加上了。之前是工作的了,现在不知道又为什么会这样。。。也不知道是谁动过那台服务器的设置没有。。。。




btw,  还有更详细的LOG办法吗?

发表于 2012-8-15 21:50 |显示全部楼层
此文章由 findcaiyzh 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 findcaiyzh 所有!转贴必须注明作者、出处和本声明,并保持内容完整
这个是COM组件的权限问题

用dcomcnfg配置。

回头我给你找找文章。
Advertisement
Advertisement

发表于 2012-8-15 21:53 |显示全部楼层
此文章由 findcaiyzh 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 findcaiyzh 所有!转贴必须注明作者、出处和本声明,并保持内容完整
在DCOM组件服务中给MICROSOFT.EXCEL组件 赋予ASP.NET的操作权限,具体步骤:
(1)打开开始菜单的运行对话框,输入dcomcnfg命令,确定,这时会弹出组件服务窗口
(2)展开计算机-〉我的电脑-〉DCOM配置,找到Microsoft Excel应用程序节点
(3)单击右键-〉属性,选中“安全”选项,在下面三个项目都选择“自定义”,并单击编辑按钮
(4)在启动权限对话框中点击添加按钮,添加相应的用户(注意:如果是WIN2000,XP,则添加“机器名/ASPNET”用户,我这里是以WIN2003为例,WIN2003是添加“NETWORK Service”用户),并赋予最大权限

评分

参与人数 1积分 +2 收起 理由
梦呓人 + 2 加了再看

查看全部评分

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部