Link to home
Start Free TrialLog in
Avatar of golicj
golicj

asked on

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?
Avatar of sunray_2003
sunray_2003
Flag of United States of America image



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 ?

Thanks,
Sunray
Avatar of golicj
golicj

ASKER

Sunray if posible I would like to have VBA code as well.
regards
golicj,

Sorry ..I am not good in VBA code.


Thanks,
Sunray
Avatar of golicj

ASKER

thanx anyway
Avatar of Anne Troy
golicj:

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.
Avatar of golicj

ASKER

Dreamboat it doesn't work.

regards
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:

PPVIEW32.EXE
HLINK.DLL
MSIMUSIC.DLL
MSIMRT.DLL
WININET.DLL
URLMON.DLL
PPINTLV.DLL
RAPPT.DLL
MSPPT8VR.OLB
MSO97V.DLL
T2EMBED.DLL
MSIMRT32.DLL
MSIMRT16.DLL
PP7X32.DLL
PP4X322.DLL
MSV7ENU.DLL
PLAYLIST.LST

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>"
etc...

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:

http://download.microsoft.com/download/powerpoint2000/ppview97/2000/WIN98/EN-US/PPView97.exe

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 "PPView1.cab".  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".
Avatar of golicj

ASKER

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.

regards
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:

http://gedd123.free.fr/Documentation.htm
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 ?
Avatar of golicj

ASKER

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

regards
Hmmm....
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...
Avatar of golicj

ASKER

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.
ASKER CERTIFIED SOLUTION
Avatar of Anne Troy
Anne Troy
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start 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

HKEY_CURRENT_USER\Software\CLASSES\
and
HKEY_LOCAL_MACHINE\Software\CLASSES\

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:

HKEY_CLASSES_ROOT\PowerPoint.Slide.8\shell\Open
HKEY_CLASSES_ROOT\PowerPoint.Slide.8\shell\Show

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

HKEY_CLASSES_ROOT\PowerPoint.Slide.8\shell\Open\command
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

HKEY_CLASSES_ROOT\PowerPoint.SlideShow.8

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.

OR

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?

Snap!
hee hee
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
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
REGEDIT  /S  PPTshow.REG
exit

or

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

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  :-)
LOL!
Avatar of golicj

ASKER

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).

P.S.
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
golicj:  

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...
golicj

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 command.com 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.

Regards

Bill
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.
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!
;)
Avatar of golicj

ASKER

Thank you guys for help
Regards
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.

CDROM:\tools\reskit\file\where.exe

(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.
echo       The program file for your installation
echo       of PowerPoint is in this directory:
echo.
where /r c:\ POWERPNT.EXE > C:\windows\desktop\PPT.TXT
type C:\windows\desktop\PPT.TXT
echo.
echo Press any key to end ...
PAUSE>NUL
exit

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 :-(
 
Avatar of golicj

ASKER

Hi BillDL
O.K BillDL I will do as advised.
:-)
Regards
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.

Regards
Bill