使用C#禁用PowerPoint功能

时间:2010-12-10 12:43:59

标签: c# powerpoint

我的情景:           我的项目中有一个要求(C#)。我需要为用户提供仅通过我的应用程序打开的powerpoint演示文稿的阅读功能。所有其他功能,如剪切,复制,粘贴,保存,保存,打印,右键单击上下文菜单应该被禁用。如何使用c#以编程方式在powerpoint中实现这一点?任何人都可以伸出援助吗?

6 个答案:

答案 0 :(得分:2)

只需将每张幻灯片导出为JPG或PNG,然后显示:Slide.Export。这适用于静态幻灯片视图。如果您想保留PPT / PPTX的动画,过渡,视频/音频和导航功能,PowerPoint-to-Flash转换器是更好的方法。 iSpring提供免费版本的转换器:www.ispringfree.com。

答案 1 :(得分:1)

您可以将 ppt 发布为 pps 并使用该文件吗?

答案 2 :(得分:0)

你应该使用Powerpoint COM组件,有点像这里描述的...... Using C# to display powerpoint 我只使用过Word和Excel,我必须说它们非常易于使用。

或者你必须使它完全只读,id建议编写你自己的ODF解析器,或调查ODF COM组件,也许这也可以工作:)

答案 3 :(得分:0)

如果您的powerpoint演示文稿数量较少,则可以查看Information Rights Management或使用Permissions Object。 (免责声明:我没有用过这个)

答案 4 :(得分:0)

一种解决方案可能是使用Aspose.Slides之类的内容将幻灯片渲染为TIFF或PDF,然后在应用程序中显示这些内容。

答案 5 :(得分:0)

假设您正在使用Powerpoint Automation。获取PowerPoint.Application对象,然后遍历CommandBars属性,对于每个命令栏,将Visible设置为false。

这应该至少删除命令栏。并且Application对象上可能还有其他属性允许您禁用上下文菜单,但我从未真正使用过powerpoint,所以我不确定哪些属性。

我认为没有任何好的方法可以完全禁用打印等。但是,这篇MS KB文章讨论了一种自动解除任何对话框的hacky方式,所以假设打印/保存等总是会出现一个对话框(我不确定),你可以从那里使用一些东西:{ {3}}

这篇文章中的所有VB代码,但这些想法都是类似的。