//执行到这里程序就终止了。在vs的调试模式或自带的web服务器上运行正常,移植到iis中就无法得到正常执行了。
PPT.ApplicationClass ppta = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();
提示错误信息:未将对象引用设置到对象的实例
Dcom 下的权限我已经设置过了, 还是不行。
在线等待
下面系统日志的错误信息
事件类型: 警告
事件来源: ASP.NET 2.0.50727.0
事件种类: Web 事件
事件 ID: 1309
日期: 2013-4-17
事件: 16:36:01
用户: N/A
计算机: ZWCN2K5-4785
描述:
事件代码: 3005
事件消息: 发生了未处理的异常。
事件时间: 2013-4-17 16:36:01
事件时间(UTC): 2013-4-17 8:36:01
事件 ID: a59af90951ea4756b404882bcaaa1035
事件序列: 4
事件匹配项: 1
事件详细信息代码: 0
应用程序信息:
应用程序域: /LM/W3SVC/824546/Root-3-130106613602910000
信任级别: Full
应用程序虚拟路径: /
应用程序路径: D:\PSR\PSR\WEB\
计算机名: ZWCN2K5-4785
进程信息:
进程 ID: 1800
进程名: w3wp.exe
帐户名: NT AUTHORITY\LOCAL SERVICE
异常信息:
异常类型: NullReferenceException
异常消息: 未将对象引用设置到对象的实例。
请求信息:
请求 URL: http://psr-en.bizprointernational.com/Users/LoadPPT.aspx?userId=78cb0d9b-b6af-4264-9fd6-c1586e606ec4&courseId=c3149607-ec1b-4412-b609-0483e46cf9eb
请求路径: /Users/LoadPPT.aspx
用户主机地址: 210.22.177.130
用户:
是否已经过身份验证: False
身份验证类型:
线程帐户名: NT AUTHORITY\LOCAL SERVICE
线程信息:
线程 ID: 6
线程帐户名: NT AUTHORITY\LOCAL SERVICE
是否正在模拟: False
堆栈跟踪: 在 BizPro.SMART.DSM.Common.CompilePPT.CreatePPT(String path, Guid courseId, Guid userId) 位置 H:\Project 2012.01.09\SMART-DSM-English\BizPro.SMART.DSM\BizPro.SMART.DSM.Common\CompilePPT.cs:行号 203
在 BizPro.SMART.DSM.Web.Users.LoadPPT.Page_Load(Object sender, EventArgs e) 位置 D:\Projects\SMART-DSM AS PSR EN\BizPro.SMART.DSM.Web\Users\LoadPPT.aspx.cs:行号 18
在 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
在 System.Web.UI.Control.OnLoad(EventArgs e)
在 System.Web.UI.Control.LoadRecursive()
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
C#调用office,建议使用第三方类库,不然很容易出现莫名其妙的问题,很难搞定的.
比如:npoi,就很不错
npoi 支持 ppt 吗?npoi 只支持 excel。
@geass..: npoi 只支持 excel,Aspose.powerpoint可以考虑这个,不过要破解
我最近也是碰见这个问题,开发机正常,放到服务器iis上就调用组件出错了,aspose没有ppt破的
应当避免在IIS上产生新的application进程,这些进程很可能不会正常运行,建议通过放置到后台服务里运行,通过其他机制通知服务运行
问题解决了吗?我也遇到同样的问题
权限指定到用户,交互式用户依旧访问有问题
配置文件加入
:<identity impersonate="true" userName="***" password="***"/>,