Take the 2-minute tour ×

I'd like to be able to advance through a Powerpoint presentation by pressing buttons in a Windows form. Here's some code I've found from http://bytes.com/topic/c-sharp/answers/272940-open-powerpoint-presentation-c-window-form that opens a Powerpoint presentation slide show:

Microsoft.Office.Interop.PowerPoint.Application oPPT;
Microsoft.Office.Interop.PowerPoint.Presentations objPresSet;
Microsoft.Office.Interop.PowerPoint.Presentation objPres;

//the location of your powerpoint presentation
string strPres = @"filepath";

//Create an instance of PowerPoint.
oPPT = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();

// Show PowerPoint to the user.
oPPT.Visible = Microsoft.Office.Core.MsoTriState.msoTrue;

objPresSet = oPPT.Presentations;

//open the presentation
objPres = objPresSet.Open(strPres, MsoTriState.msoFalse,
MsoTriState.msoTrue, MsoTriState.msoTrue);


I haven't found any methods that can advance through the slides, however. Any ideas?

(Really what I'm trying to do is use the WiiRemote to advance the slides, for a student project).

share|improve this question
add comment

3 Answers

up vote 9 down vote accepted

The method to advance programatically is "SlideShowWindow.View.Next". You can also use "SlideShowWindow.View.Previous" to go backwards.

share|improve this answer
add comment

I think you could do this to run them one at a time, for instance:

oSettings = objPres.SlideShowSettings
oSettings.StartingSlide = 3
oSettings.EndingSlide = 3

Do While oApp.SlideShowWindows.Count >= 1
share|improve this answer
add comment

Looks like there is a method called GotoSlide that will work, just needed to dig a little more! For instance:

int i = 0;
while (true)
    objPres.SlideShowWindow.View.GotoSlide(i, MsoTriState.msoFalse);
share|improve this answer
add comment

Your Answer


