C#操作Office2007

我用Microsoft.Office.Interop.Word.ApplicationClass 实例化word对象 myWordApp 当程序运行时只启动了word进程,但是页面就静止不动了运行不下去了。
我的程序如下:

object strFileName;
Object Nothing;
Microsoft.Office.Interop.Word.ApplicationClass myWordApp;
Document myWordDoc;
string strContent = "";
protected void Page_Load(object sender, EventArgs e)
{
createWord();
}
private void createWord()
{

strFileName = Request.PhysicalApplicationPath+"test.doc";
Object Nothing = System.Reflection.Missing.Value;
if (System.IO.File.Exists((string)strFileName2))
{
myWordDoc = myWordApp.Documents.Add(ref strFileName , ref Nothing, ref Nothing, ref Nothing);
}
}
程序就是运行到红色字体处就没有响应了,但是程序没有发生任何错误和异常。
需要重点说明的是我的程序是B/S,同样的程序在C/S下是可以正常运行的,而且我的dcom权限配置也没问题。
请教高手们怎么解决!!!!!!!
急!!!!!!!!!!!!!!!

另外我用myWordApp = (Microsoft.Office.Interop.Word.ApplicationClass) Microsoft.VisualBasic.Interaction.GetObject("", "Word.Application");
这个来实例化时报错如下:

无法将类型为“System.__ComObject”的 COM 对象强制转换为类类型“Microsoft.Office.Interop.Word.ApplicationClass”。进入 CLR 且不支持 IProvideClassInfo 或没有注册任何互操作程序集的 COM 组件都将包装在 __ComObject 类型中。这种类型的实例不能强制转换为任何其他类;不过,只要基础 COM 组件支持对接口 IID 的 QueryInterface 调用,就能将这些实例强制转换为接口。

 

 

 

 

设置microsoft word 的访问权限操作
在运行里面输入dcomcnfg 命令,弹出组件服务窗口,在组建服务-〉计算机-〉我的电脑-〉dcom配置中找到 Microsoft word 文档项,点右键选择属性如下图所示:



点击"标识"标签,选择"交互式用户"
点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限。
依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限。
这样,我们便配置好了相应的Excel的DCOM权限。
注意:我是在WIN2003上配置的,在2000上,是配置ASPNET用户。
最后祝你安装成功!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值