Starting of PowerPoint Slide Show automatically (by clicking on ms powerpoint file)

I am trying to start PowerPoint Slide Show automatically (my file must be with extension ppt only - (I am not able to save it as pps on Document Managent System). Is there any way to start from VB code?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.


You should be able to do that in Powerpoint itself.I mean when you open it opens as slide show

or you want VBA code specifically ?

golicjAuthor Commented:
Sunray if posible I would like to have VBA code as well.
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.


Sorry ..I am not good in VBA code.

golicjAuthor Commented:
thanx anyway
Anne TroyEast Coast ManagerCommented:

Generally, a macro like this would run in a file_open event. PowerPoint has no such event, so it cannot be fired on open of the file.

I'm sure you could record a macro (in another ppt file) that opens the presentation and runs it as a show. You could then copy that code into YOUR presentation.

Put a blank slide as the first slide. Draw a big black rectangle the size of the slide on it. Right-click the rectangle and assign the macro to it.

So, you open the PPT, click the black box, the show runs.

I hope.
golicjAuthor Commented:
Dreamboat it doesn't work.

Anne TroyEast Coast ManagerCommented:
What happens?
What part didn't work?
Lemme know...I'll test it out.
Have you considered opening it using the PowerPoint Viewer?  This is how I distribute presentations on CD and invoke the file selection to play from an autorun menu interface.

Although this viewer (PPVIEW97.EXE) doesn't support ALL of the functions you may have embedded into the file, or perhaps some of the fancy transitions and such, but at least you can launch it from the command line (batch file) with the appropriate switches to run it as a slideshow.

Depending on your version, there is always the option of "File > Pack and Go" to export the .ppt file, embedded TTF fonts, and a copy of the viewer, to a file named by default as pngsetup.exe.  When double-clicked, it offers to unpack to a "destination folder" of choice but, being old-time, this must be specified in DOS 8.3 file format.

This will unpack your .ppt file plus the following files to this folder:


Rename your .ppt file back to its long file name again, and then edit "Playlist.lst" in NotePad and ensure that the long file name is updated there also.

You can now use the following command line options to run PPVIEW32.EXE and either run the list of .ppt or .pps files from "Playlist.lst" one after the other, or just specify the target filename to load:

ppview32.exe [option] "<path\filename.ext>"

Automatic advance           /A or /a
Slide range           /R=n-m or /r=n-m where n<=m
Loop continuously           /L or /l
Print                 /P or /p for printing file
Kiosk password           /K or /k for setting a kiosk mode for file
Macro virus dialog box  /V or /v for showing the macro virus dialog box

List files (.lst) should be of the following format:

[command-line option]  "<path\filename.ext>"
[command-line option] "<path\filename.ext>"

If started without any parameters, the "Options" dialogue box allows you to select your options for the duration of the slideshow presentation.

Navigating through a Slideshow:
Go forward:  Left mouse button, or PAGE DOWN key
Go previous: PAGE UP key
Exit:  ESC key
Menu of commands: Right mouse button
Help: F1 key

Of course, you don't have to use the "Pack and Go" option, you can simply download the file from Microsoft and use it locally within its own folder set aside for viewing presentations:

The file version of PPView97.exe that will be installed is version 8.0, so if you have anything above Office 2000, then I would first check out if it has the same Pack and Go option, and what version of Viewer it packs into the exported file.  Office 2000 Pro uses version 8.0 (ie. the 97 version).

If you choose NOT to install it, then you can simply unpack the self-extracting installer file to any folder.  You will see the files "ppview.inf", "ppview.stf" and "setup.lst" that can be viewed in NotePad to assess what would have happened had you installed it.

In the same folder you will see the file "".  Unpack it to create 3 folders: setup, system, and viewer.

The "Viewer" folder seems to contain all the files it needs, because the files in the "setup" folder will probably already be in your Windows or System folder anyway.  I suppose there is no harm in dumping those files into the "viewer" folder to ensure that it is using its own .dll's for compatibility.  This is my approach anyway.

Unsupported PowerPoint 2000 and 2002 features:

Picture bullets
Automatic numbering
Animated GIF pictures
Microsoft Visual Basic® for Applications (VBA) controls
ActiveX® controls are not supported by the viewer

I hope this helps with a simple option if it allows you to view simple .ppt files.
I must point out that the distributions on CD are Non-Commercial and, by some loose interpretations, narrowly scrape past the EULA  :-)

You may install and use an unlimited number of copies of the SOFTWARE PRODUCT.

Reproduction and Distribution. You may reproduce and distribute an unlimited number of copies of the SOFTWARE PRODUCT; provided that each copy shall be a true and complete copy, including all copyright and trademark notices, and shall be accompanied by a copy of this EULA.
I meant to say:

If you choose the Pack & Go option and double-click on the "pngsetup.exe" file, avoid running it from the button option immediately after it unpacks.  I have found this to be a little unstable, even though this was the original intention for this primitive type of "distributable" package.

Secondly, it won't embed TT Fonts that are copyrighted. This is true of PowerPoint anyway, as far as I recall.
Also, if you decide to try and run this automatically from a CD's autorun.inf file, you will either have to be inventive and specific with the shell/verb/command options in it because generally autorun.inf only calls executable types.

The other option is to simply run the autorun.inf command plus command switches through a small program like "WinOpen".
golicjAuthor Commented:
BillDL thanks for your effort.
The problem is that I have to keep .ppt extension. I am not able to save PowerPoint file in any other format but with extension .ppt. The system were I have to keep this PowerPoint file does not allow any other file format. I can not use Cd or any other media.
Probably ony solution that I can see is by using VBA code - but I was unsuccessful with writing that code.

Perhaps I didn't explain this properly.  Using PowerPoint's "Pack & Go" option won't "Save As" or change the extension to anything other than .ppt.

The PowerPoint Viewer can load .ppt files and, using the appropriate command line options, will auto-advance through the individual frames in sequence as if you were running a .pps file.  It can be run in a variety of "modes" to suit.

Have a read again at the command line options I have detailed.

You also have the option of starting it without any arguments, using it's built-in file browser that defaults to its own directory,  and manually configure the options so that it will use the timed intervals set in the .ppt file at the time of creation.

The Distributable CD details I gave were just a bit of further information, perhaps for your future use.

Can your system store batch files that you have created?
Presumably you can compile .exe files and use them?

When you say "The system were I have to keep this PowerPoint file does not allow any other file format" do you mean this literally?  I mean, does it ONLY contain .ppt files?

If you are able to, one of the simplest programs I have used to quickly compile executables to pass command lines to programs like this is one called FBSL  (Free basic Scrip Language by Gérôme Guillemin).  I can create tiny executable programs with preconfigured command lines and switches, and in this case you could simply tell it to load the PowerPoint Viewer from the .lst file.  All you would have to do is quickly edit a line in NotePad for each slideshow you wanted to view.

It's a lousy website, but has all the details:
As far as I can ascertain, PowerPoint supports the following command line options:
"<FileName>" - Full path to the PowerPoint file.
eg: POWERPNT.EXE "C:\Presentations\File.ppt"
/n "<FileName>" - Create a new file with the specified file name.
eg: POWERPNT.EXE /n "C:\Presentations\FileName.ppt"
/s "<FileName>" - Start slide show from the specified file.
eg: POWERPNT.EXE /s "C:\Presentations\File.ppt"
/p "<FileName>" - Print file to default printer via print dialogue.
eg: POWERPNT.EXE /p "C:\Presentations\File.ppt"

/pt <PrinterName> "" "" "<FileName>" - Print to specified printer bypassing print dialogue.
The PrinterName is the name of the printer as it appears in Start > Settings > Printers.
eg: POWERPNT.EXE /pt "HP LaserJet" "" "" "C:\Presentations\File.ppt"

Are you able to call PowerPoint using POWERPNT.EXE /s ?
golicjAuthor Commented:
The server where I can store my documents supports next files: .doc, .xls, and finally .ppt - nothing else.

I know that I can start a PowerPoint Side Show by right-click and then click Show to start the show. Is there any way of clicking on PowerPoint file (.ppt) with left-click (on the mouse) button and starting of PowerPoint slide show? Still I have to keep format  .ppt

Anne TroyEast Coast ManagerCommented:
Do you need a left-click on ONE machine or everybody's?
We can change it on ONE...
But that person would then have to right-click to OPEN the ppt...
golicjAuthor Commented:
The point is that I need solution that I can left click on a .ppt file and start a PowerPoint Slide Show.
If is possible start a PowerPoint Side Show (which is in .ppt format) by right-click and then click Show to start the show, then I think that must be a way of using left-click and starting of PowerPoint Slide Show(by coding or any other means). One again formator the file must be .ppt.
Anne TroyEast Coast ManagerCommented:
There is. But it's not a FILE setting. It's a MACHINE setting. That's why I asked what I asked.

Open Windows Explorer.
Go to Tools-Folder options, File types.
Select PPT as the file type.
Change the default from OPEN to SHOW.

So you understand...this only changes the setting on THIS machine.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
There are several types of entries in the registry, dependednt on your version of PowerPoint.  Mine is Office 2000.

HKEY_CLASSES_ROOT\.POT - PowerPoint.Template.8
HKEY_CLASSES_ROOT\.pothtml - powerpointhtmltemplate (ie. Save as Web Page)
HKEY_CLASSES_ROOT\.ppa - PowerPoint.Addin.8
HKEY_CLASSES_ROOT\.pps - PowerPoint.SlideShow.8
HKEY_CLASSES_ROOT\.ppt - PowerPoint.Show.8

Ignore all but the last 2 for now.

These are echoed by entries in


But, returning to HKEY_CLASSES_ROOT, if you look at the "shell/verb/command" for the different types, then for the following (ignoring the "Print" and "New" actions:


This is what shows on your Right-Click menu for .ppt file types

The [Default] StringValue for the "Open" action is
C:\Program Files\Microsoft Office\Office\POWERPNT.EXE %1
Shows on Right-Click Menu as &Open

and for the "Show" menu entry, the command is:
C:\Program Files\Microsoft Office\Office\POWERPNT.EXE /s %1
Shows on Right-Click Menu as S&how

Note the extra /s switch.

Now look at the other registry entries


The difference with this one is that the shell\Open command is already set to display "S&how" on the right-click menu because it forces PowerPoint to run it as a slideshow:

C:\Program Files\Microsoft Office\Office\POWERPNT.EXE /s %1

So, what I am saying is, wouldn't it be possible to transpose the values into the .ppt file type so that the "&Open" command runs with the /s switch instead.  Go to Folder Settings > File Types, and set the Open action as default.


Simply go to Folder Options > File Types and set .ppt's "S&how" action as the default so that this launches a slideshow on double-click rather than opening it in slide layout.

Have you tried this?

Anne TroyEast Coast ManagerCommented:
hee hee
I think we both just realised simultaneously there exactly what golicj was driving at.

Gilicj.  Here's what I would do in your situation, and this is just a variation on what Dreamboat described.  My reasons will become clear in a second.

On any of the computers that will be used to access the documents on the server.
Log in under your usual profile and open Folder Settings > File Types.

Find the "PowerPoint Presentation" entry and ensure that it shows .ppt as the default file extension.  I say this because different versions of MS Office create similar sounding file types intended for conversion to html format.

Click on it, then click "Edit".
In the "Actions" box, you will see New, Open, Print, Print To, and Show.
Click on "Open" and then click "Edit" again.

IF the checkbox, "Use DDE" is checked on your system, then don't follow my further suggestions, and just do as Dreamboat has suggested - simply close that dialogue box, click on "Show", and then click the "Set Default" button.

If you have to start editing DDE settings, then there is a possibility of error, so my further suggestions should be disregarded.  If it isn't set to use DDE, then here's what I suggest.  You don't have to do this, but it will simplify things for users who may want to actually open a .ppt file for editing.

Once the "Open" action has been opened using the "Edit" button, in the "Actions" field it should show the full command line inclusive of path:

"C:\Program Files\Microsoft Office\Office\POWERPNT.EXE"  "%1"

Highlight this, and then copy it (Ctrl + C)

Exit without changing anything.

Click on "New" to create a new Action.  You will be shown 2 fields, "Action" and "Application used to perform action".  Type in a new action "&Open for Editing" in the "Action" field (but without the " "), and then paste the command line:
"C:\Program Files\Microsoft Office\Office\POWERPNT.EXE"  "%1" (including all the " "'s) into the "Application used..." field.  Click "OK".

Now click on the "Show" action and click the "Set Default" button.
It will be emboldened.
Then click on the "Open" action and click the "Remove" button.

Close all the dialogue boxes.

When you now double-click a .ppt file, it will run as a slideshow, but you still have an "Open for Editing" that is so obviously named that it speaks for itself, and a user would have to be particularly stupid not to realise what this option meant if they saw it on their right-click Menu.  The action "Open" could be ambiguous, but "Open for Editing" is plain as day.

Do this for as many user terminals as there will be accessing the document server, and it saves you from having to mess around in the Registry.
Anne TroyEast Coast ManagerCommented:
You could have your other users change the setting with a registry entry you export, send to them, and they just double-click. Lemme know if you're interested. Sounds like Bill could prolly help with that too.

(Nice to have you around, Bill!)
Glad to escape from the Windows 98 area for a while, Dreamboat :-)

Now why didn't I think of using a .REG file for this, I end up suggesting this for so many other things, and virtually talk in "Regeditese" these days.

@="  Damn, there I go again!!

Yes, that would be very easy for you to do once you had changed one computer, golicj.

easiest way is to select ONLY the subkey that you have changed, then use the menu:
Registry > Export Registry File > "selected branch only" > name it > browse to destination folder > Save it there.

Right-Click > "Edit" - opens a .REG file in NotePad
Right-Click > "Merge" - blends the contents into the existing registry and overwrites the "values" of any sub keys already present plus creates any new sub-keys and values NOT already there.

To do so "silently" with no confirmation dialogue (they sometimes cause freeze-ups), use a batch file referencing the .REG file.  Keep them together in the same folder, and you don't need to specify a "path".  Example:

@echo off


@echo off
REGEDIT  /S  C:\Windows\Desktop\PPTshow.REG

Paste the above into NotePad, alter the "path" if necessary, Save as PPTshow.txt, rename as PPTshow.BAT file, and then double-click on it.  Done!!
The batch file's name really doesn't matter, as long as the .REG file is quoted correctly.
Or write it as a .vbs script, email it to them, and then chastise them for opening unknown attachments  :-)
Anne TroyEast Coast ManagerCommented:
golicjAuthor Commented:
I see O.K.

So I do not have solution to change anything on the file level. The problem with the machine settings is that I have some machines in other region about 2000km away (I am in Australia) so  I am not sure if I can change settings on corporate machines.

I know that you gave to me solution but can you think of any solution with changing the powerpoint file and running that (blo#y) slide show from the file level (with extension .ppt).

I do not know to who to give this points. Both of you guys are very helpfull -  Dreamboat and BillDL suggestions welcome maybe split points or ??

Kind regards
Anne TroyEast Coast ManagerCommented:

Correct---I see no solution on FILE level, and I don't believe Bill does either---otherwise we would tell you. I do not know Bill's experience, but mine is pretty extensive. I simply do not see any way to accomplish left-click on PPT to launch SHOW.

You can give the points to Bill. I am kicking his butt in expert points, and he needs all the help he can get! Hee hee...

The "file" is simply a chunk of data that has no means to do anything on its own.  The "Application" is the thing that interprets the data and decodes it into a format that displays the contents or perfoms some other task.

Even the simplest batch file:

@echo off
echo  Hello golicj

isn't capable of doing anything on its own.  It requires DOS to identify the internal ECHO command and then process it.

So, despite the fact that a .ppt file may have settings contained within it that make it what it is, or display in a certain way, it is still a chunk of data sitting on a document server.  It requires a "Viewer" to access those internal data instructions and process them according to its own rules.

Certain rules about how this "viewer" behaves are inbuilt, whereas some behavioural aspects can be modified on the computer on thich the application is installed or being run from.

If you look carefully as a .ppt file and a .pps file, they are not very different at all.  If you simply rename  slideshow.ppt to slideshow.pps, as long as the registry settings are unchanged for those file types, the renamed .ppt file will run as a slideshow when double clicked.  It may well be that very complex .ppt files may need to be "Saved As .pps" to add and embed some functionality, but they are still much the same underneath.

I can only assume that the people administering the server do not permit .pps files for any or all of these reasons:

1. The files are intended for downloading to the local machine rather than playing off the server - saving bandwidth perhaps?
2. Storing a .ppt AND a .pps file for the same presentation is a waste of valuable space for the reasons I gave above
3. PowerPoint uses "Macro's" that can present security risks and COULD be made to perform some action to the other documents on the source drive

Perhaps you know the reason, but really a "document server" isn't really much different from me running a .ppt file from a second hard drive on my own computer, apart from the "path" used to locate it over a network and the fact that I am not connecting to my own hard drive using a network card.

So, to answer your question, it would be difficult to know with certainty the operating systems on ALL of the computers accessing this file repository.  You could NOT, therefore, write a .REG file and tell everyone to run it on their computer.

You could certainly create a printable document containing the simple instructions for each user to adapt their "Folder Options > File Types" to make "S&how" the "Default" option, but do you have the authority to do this and should they have to comply with you?

I could write a Word Document containing enough code to execute a string of commands capable of making a whole load of registry changes, and provide tests to check the operating system for the appropriate method, but it is hardly ethical and a slight error becomes a virus.

"Condition Testing" can be best performed from a "Winscript file ", but many terminals have Windows Script Host disabled for security reasons.  The same goes for Visual basic Scripts.  A standard Windows "Batch File" (.bat) MIGHT be capable of this if carefully constructed, but I doubt it.

So really, it leaves you to consider 2 things:

1. Do the users ALL need this double-click > slideshow functionality?
2. Are you empowered to ratify and authorise any changes to enforce this?

Don't worry about the points, golicj, Dreamboat struck the mark first and should be given them if you feel that her suggestion was the most appropriate.


Ha, ha, good one Dreamboat.  You couldn't kick my butt, I'm 6 foot 5 and have a butt-cheeks that are so caloused from sitting in this damned chair, they would break your toes!!

Go on, have the points Dreamboat, you were in there first and I'm not really here for points, just for the enjoyment :-)

I've just been looking at the SHIFT + Right-Click > "Open With" > Internet Explorer.  I was curious to see if the host's IE browsers had some standard "plugin" to allow instant display.  Security would be a huge issue dependent upon content, but on my system it is clouded by the fact that my "Quick View Plus" (Browser Helper Object?) kicks in and identifies it as a type capable of being rendered inside the IE interface.  

The Quick View Plus plugin doesn't support slide advance or anything else, but provides slid tabs like an excel workbook to view each slide for a .pps file or .ppt, and may or may not display embedded images.

I can't think of any other "plugin" that would allow this, but if there was, BINGO!! instant "streaming" Presentations within a standard browser window.
Anne TroyEast Coast ManagerCommented:
Okay. Here's my FINAL suggestion.

Go tell those damn server guys to open up the server for PPS extensions.
That's what I'd do!
golicjAuthor Commented:
Thank you guys for help
Anne TroyEast Coast ManagerCommented:
Thanks very much, golicj!
Thank you golicj.

Keep a hold of the web address for this page, because I think I can work out a practical solution to this.  If I can't actually DO it, at least I will be able to provide you with some definite ideas about how you could describe to anyone reasonably proficient in C++ or VB what you had in mind.

My problem is that, although I have a reasonable idea of 16-bit (DOS-based) C programming, and also a general knowledge of DOS, I don't know fully how to translate the ideas into a Windows-based application.  If I could give you a functional DOS-based program, then a software developer could easily see where it was going.

My thoughts hinge on a couple of areas that I have used before for my CD applications and could equally apply, but would have to be able to function in anything from Windows 98 to Windows 2000 and XP.

When an application presents you with a file browser, whether it be as part of the "Save As" or "Open" operations, it is usually calling on a specific internal command in a Windows .dll file, or one of the application's own support .dll's.  While I don't know enough about this area, in general what happens is that at some point it acquires the "path" and "filename" which it commits to memory as some type of "variable" before processing the request.

DOS can do this, but you will first have to copy the following DOS file from your Windows 98 CD Rom into the C:\windows\command  folder, because I think it it is one that has been carried forward for backward compatibility from earlier Windows Versions and possibly even before that.  If so, it's been updated and is actually included amongst the utility files on the Windows 98 Resource Kit, so it is immediately compatible with DOS 7.10 in Windows 98.


(Don't double-click on it, it's intended to be called from a DOS command line with a parameter).

Paste the following text into NotePad and save it as any name.  Rename it from .txt to .bat and accept the warning about changing file types.  Double-click on it:

@echo off
echo       The program file for your installation
echo       of PowerPoint is in this directory:
where /r c:\ POWERPNT.EXE > C:\windows\desktop\PPT.TXT
type C:\windows\desktop\PPT.TXT
echo Press any key to end ...

The  /r  switch used to call WHERE.EXE "recurses" on the directory specified.  In this case I have made it the root of anyone's system drive to cover everything.

It searches for any instances of the named file "POWERPNT.EXE" and would normally write a fully qualified path directly to screen.  In this case, I opted to redirect it to a file, and then use "TYPE" do display the contents of that file on screen.

In this way, you can create a partial command line.  The tricky bit is then adding a space, then the /S  switch, another space, and then appending the path to a selected .ppt file onto the end of the command.

This is what I'm looking at, and I'm quite sure this would be SO much easier if I knew how to convert this into Winscript, Visual Basic, or C++ Windows.  Using them, you could probably call the standard windows File Browser function.

So, all you would need is a dedicated file browser where the client selects the file, but instead of simply running it with the associated application as set in the registry, the path to it could be appended to the partial command already in memory along with the switch.

I know this sounds a bit jumbled, but I've been thinking about this all night at work and I'm about to have a sleep on it and awake with a "eureka-type" solution  :-)

08:50 GMT here - back to work at  18:00 again :-(
golicjAuthor Commented:
Hi BillDL
O.K BillDL I will do as advised.
This one is still puzzling me a bit, golicj.  I had hoped to be able to write a simple batch file that would simulate what I was thinking would probably be fairly easy for a Delphi, C, C++, or VB programmer to compile for you.  It hasn't proved very easy, due to the complex ways that DOS has to be used to capture user input and then redirect it to commands.

I decided to abandon these attempts, which were partly successful, and look for a standalone file browser that could be adapted for your very specific purpose and distributed to the various client computers.

All they would then have to do, theoretically, would be to run the browser from a shortcut, access the server folder, select a file, and click "OK" to run the command to run PowerPoint in "Show" mode.  I thought that perhaps the "file types" could even be filtered out to only show .ppt files.

The problem is, as usual, that developers strive to make their programs "Windows Explorer Replacements" and as comprehensive and broad-scope as they can.  Who can blame them, if they have the ability.

I find it a real annoyance when somebody comes out with a program that is described as "small and streamlined, and uses few resources, blah, blah" but as time goes on more and more users request additions until it totally defeats the original intent.  So, what I'm saying is that I haven't found such a "file browser, and the nearest equivalent in terms of simplicity, is an html "browser".

I bought a program for the sole purpose of packaging self-contained instructional html "webs" that unpack a self-contained "offline" browser with just enough features to navigate and search, but to restrict the user from delving deeper or browsing outside each "web".  I was horrified when I later visited their member's forum, where half the questions to the design team were requests for "online" support, ability to download and play media over the Internet, etc.  The worst was that the developers were listening and responding in such a way that it now looks as if it will grow into just another one of those half-baked Internet Browsers with new-found limitations and bugs as they extend this functionality.  Why don't they just leave the original as intended and develop another one?

Anyhow, that's my gripe for today, and I must apologise for not having found you a solution.

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Office

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.