我在调用OFFICE的COM Microsoft.Office.Interop.PowerPoint的时候,在VS2005中添加引用成功,但是放到别人没有装PowerPoint的电脑中,缺少DLL无法引用。
我想把这个Microsoft.Office.Interop.PowerPoint.DLL跟程序打包在一起,运行程序的时候自动调用程序目录下的DLL,要怎么做?或者在程序中怎么写将Microsoft.Office.Interop.PowerPoint.DLL添加到GAC中?
我想把这个Microsoft.Office.Interop.PowerPoint.DLL跟程序打包在一起,运行程序的时候自动调用程序目录下的DLL,要怎么做?或者在程序中怎么写将Microsoft.Office.Interop.PowerPoint.DLL添加到GAC中?
退一步说,我这边测试客户机,有的也装了powerpoint ,但是依旧不能运行,好像是没有把Microsoft.Office.Interop.PowerPoint注册进GAC ,必须安装OFFICE2003PIA 才能够调用
呵呵这个我是知道的,就是为了避免这样我才想把这个DLL打包在一起的,这样不管用户是不是点了都可以支持了
我们解决的办法是 给用户提示 提示office没有安装
这样做之后 就不用注册DLL到GAC了吗?
无论是否用gacutil.exe 注册DLL到GAC, 都需要安装Office, 因为对microsoft.office.interop.powerpoint.DLL的引用,里面的方法会根据GUID指向应用程序,使用Aspose.Slides组建就不需要安装Office, 但是这个组建和Office还是有兼容问题,例如要使用程序添加一个OleObject对象的时,使用microsoft.office.interop.powerpoint.DLL生成的PPT文件用AddOleObjectFrame方法添加到另一个PPT后能正常打开,但是使用Aspose.Slides生成的PPT文件,用AddOleObjectFrame方法嵌入其他PPT时,就不能打开,总是报服务器错误。