2011-11-30 137 views
1

我花了三个星期的时间搜索它,我发现了一些片段,但没有一个可用。我正在尝试编写一个能够查看简报的c#程序。我不知道如何。我已经浏览了许多代码片段和Ppt interop中的MSDN页面,我完全不知所措。有没有人做过这件事,或知道如何并快速展示代码,告诉我如何做到这一点?尽可能少的代码来实现它的工作将是可取的。我要做的是这样的:幻灯片将显示在一个图片框中,每隔40秒将切换到下一张幻灯片。我不允许将powerpoint导出为图片,并加载图片(我无法知道如何操作)。如果anybodys想知道,是的,这是一个编程课,但它不是一个分级任务。我已经花了三个星期的时间,这让我疯狂。任何帮助都将不胜感激。谢谢。如果有帮助的话,这里是我迄今为止自己提出的所有工作代码,这与我试图完成的工作无关。试图在VS 2010 c#表格中查看MS PowerPoint 2010文件

 PowerPoint.Application oPPT; 
    PowerPoint.Presentations objPresSet; 

    const string strPres = @"E:\C#\Ch 16\PP Stuff\TestTextBox\TextBoxTestWithArrays\TextBoxTestWithArrays\Ad Analysis.pptx"; 
    const string myPath = @"E:\C#\Ch 16\PP Stuff\TestTextBox\TextBoxTestWithArrays\TextBoxTestWithArrays\"; 

{ 
     oPPT = new PowerPoint.Application(); 
     oPPT.Visible = Microsoft.Office.Core.MsoTriState.msoTrue; 
     objPresSet = oPPT.Presentations; 
     objPresSet.Open(strPres, MsoTriState.msoFalse, MsoTriState.msoTrue, MsoTriState.msoTrue); 

    /* 
    * This crashes, and I'm clueless as to why it wouldn't work. I wanted it here 
    * to check the # of msg boxes that opened against the # of slides in the ppt. 
    */ 
     foreach (PowerPoint.Slides mySlides in objPresSet) 
      MessageBox.Show("{0}", mySlides.ToString()); 
} 
+0

我们可以假设MS powerpoint安装在c#程序运行的同一个盒子上吗? – user957902

+0

是的。我也使用VS2010和MS Office 2010。 –

+0

我需要查看窗体中的powerpoint。我张贴的代码打开了powerpoint,这不是我想要的。再次感谢所有浏览此内容并想方设法的人。 –

回答

0

请查看以下链接。 SO上的某个人有同样的问题,并使用此链接来解决相同的问题。希望能帮助到你。

Link

+0

谢谢你的链接。我已经阅读过。但是,我在学校网络上,无法安装任何东西。 –

0

看一看http://skp.mvps.org/vb/pptvbwnd.htm 它说明了如何显示和在VB5/6的形式控制表现,但可能给你一些想法。

+0

谢谢。现在看。 Tbh,我不确定它会有多大的帮助,因为我根本不知道vb。我很欣赏这个链接。 –

+0

因此,我一直在关注并尝试实施您们发布的解决方案。 VB的东西对我来说没什么意义,我不知道如何将它插入到VS并使其工作,所有的C#解决方案都不适合我。我下载了这个免费的ActiveX控制器,并试图将其应用到我的C#表单中,但它告诉我: –

+0

您无法直接将VB代码插入到VS中。 MS倾向于通过将它们称为相同的东西来混淆问题,但VS中的VB版本与“经典”的Visual Basic非常不同。你必须从VB翻译成C#或任何你喜欢使用的.NET语言。大多数代码只是创建和操作PowerPoint对象及其属性/方法。 –