0

我正在尝试升级内部应用程序,基础设施将从 2008 年迁移到 windows server 2012 年。该应用程序从模型模板构建演示文稿。

我不断收到看起来与 Interops 相关联的附加 COM 异常,有没有人遇到过类似的事情。

PowerPages (Office 14.0)

文档:模型.ppt

命令:{SET PrevPeriodEnd user.PreviousPeriodEnd(PGFromDate)}

错误:

~~ 调用堆栈页面 6.9.1 (Build 021)~~

未找到成员。(来自 HRESULT 的异常:0x80020003 (DISP_E_MEMBERNOTFOUND))

堆栈跟踪:

在 Microsoft.Office.Interop.Word.ApplicationClass.Run(字符串 MacroName、Object& varg1、Object& varg2、Object& varg3、Object& varg4、Object& varg5、Object& varg6、Object& varg7、Object& varg8、Object& varg9、Object& varg10、Object& varg11、Object& varg12, Object& varg13, Object& varg14, Object& varg15, Object& varg16, Object& varg17, Object& varg18, Object& varg19, Object& varg20, Object& varg21, Object& varg22, Object& varg23, Object& varg24, Object& varg25, Object& varg26, Object& varg27,对象& varg29, 对象& varg30)

在 Pages.PowerPages.Evaluate.DoEvaluate(集合 cExpression)

在 Pages.PowerPages.Evaluate.Eval(字符串 sExpression)

在 Pages.PowerPages.Commands.HandleSet(字符串和 sStr、形状和 oShape、TextRange 和 oRange)

在 Pages.PowerPages.ProcessFile.ProcessShape(Presentation& oPresentation、Shape& shp、String& sOpenStr、String& sCloseStr、Boolean& bExit、Int32& nSlideID、Int32& nSlidesToReset、Boolean& bAgenda)

在 Pages.PowerPages.ProcessFile.ProcessPresentation(Presentation& oPresentation, String& sOpenStr, String& sCloseStr, Boolean& BMaster, Boolean& bAgenda)

在 Pages.PowerPages.modAmain.GenerateModel(String[]& aSelectedComponent, Boolean& bNormal)

在 Pages.PowerPages.modAmain.Generate2(布尔 bJobRun)

在 Pages.PowerPages.ComPowerPoint.Generate(字符串 sThreadID、Int32 nJobID、字符串 sPortcode、字符串 sManager、字符串 sBusinessUnit、Int32 nJobAccountStatusID、对象 oBatch、字符串 sOutputFolder、应用程序 oPowerPointApp)

~~~~ 附加信息 ~~~~

异常类型:COMException

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

计算机数据:

操作系统名称:Microsoft Windows Server 2012 R2 Standard

版本:6.2.9200.0

平台:Win32NT

物理内存 - 总计:4294430720,可用:2845433856

虚拟内存 - 总数:2147352576,可用:1652203520

4

2 回答 2

1

两种(明显的)可能性:

安装word了吗?看起来任何调用powerpoint的东西也都在调用单词。

您的应用程序是否作为 32 位应用程序运行?2008 可以作为 32 位操作系统运行,但 2012R2 是 64 位,您可能需要将所有内容标记为 32 位。(我认为您可以使用 CorFlag.exe 来强制执行此操作)

于 2015-02-09T09:42:50.357 回答
0

谢谢,我想我已经解决了,名为模板的宏位于 Office 的过时版本中(.dot 和必需的 .dotm。)

于 2015-02-11T12:57:23.027 回答