如何在已发布的.Net网站上包含COM组件?
答案 0 :(得分:2)
最后我成功地解决了这个问题:
要在发布的网站上包含COM组件:
注意:请记住,如果您在Windows 2003 Server上运行,则必须使用应用程序池标识作为帐户而不是ASPNET帐户。
•转到“开始 - 运行”菜单项。
•输入“DCOMCNFG”并按Enter键。
•这应该加载“组件服务”MMC(您也可以从管理工具 - 组件服务加载“
•展开“组件服务”
•展开“计算机”
•展开“我的电脑”
•选择“DCOM配置”项
•选择“Microsoft Excel应用程序”项。
•右键单击并选择“属性”
•选择安全选项卡
•在“启动和激活权限”下,选择“自定义”选项。
•单击“编辑”按钮
•单击“添加”按钮将新帐户添加到列表中。
•在显示的对话框中,单击“位置”按钮(这是因为默认情况下您的域名将被选中,我们需要一个本地帐户)
•单击“确定”按钮
•在显示的对话框中,在Windows XP上输入“ASPNET”作为帐户名称(确保将位置设置为IIS所在的计算机的名称),或者如果您在Windows 2003 Server上运行,则必须输入运行应用程序池的帐户,默认为“网络服务”
注意:在Windows XP上更快捷的方法就是输入计算机名称和帐户 所以在我的情况下,这将是:ccrowe \ ASPNET
•单击“确定”按钮
•现在确保为“ASP.NET计算机帐户”或作为应用程序池标识的帐户(默认为网络服务)选择以下选项
o本地启动:允许
o远程启动:[空白]
o本地激活:允许
o远程激活:[空白]
•单击“确定”按钮并再次测试您的Web应用程序,它应该可以正常工作。
答案 1 :(得分:0)
我能澄清一下吗?听起来你想使用嵌入在html中的客户端activex控件(通过<object/>
)。这是对的吗?
这不是一种非常安全的方法;许多浏览器/平台根本不会这样工作。如果您知道您的客户端是IE / windows,那么您可以在cab中签署ocx,标记为safe-for-scripting / safe-for-initialization标记。但是 - 不建议这样做。
如果您需要丰富的客户端体验,请考虑使用Silverlight或部署ClickOnce的智能客户端,如果您需要更丰富的访问扫描仪等内容。
如果您的意思是服务器端,那么您可能需要在服务器上安装组件。无注册表的COM 可能工作,但配置起来不容易。如果你不拥有服务器(即它是为你托管的),那么COM可能不是第一个出路......