Post Reply

Forums -> UltraMon™ SDK -> Using PowerPoint viewer on multiple monitors
Yaron ben shalom   2001-12-02 18:28
As far as I can tell, your SDK allows for positioning windows on various monitors in a multiple-monitor machine, but you do this by first running the desired application and AFTER that moving its window to the designated monitor. PowerPoint viewer does not behave elegently when using this method (we have tried this without your SDK - is there any reason to beleive that it would work differently with it ?). On the other hand, the API function ShellExecuteEx, which is supposed to do this all at once, does not seem to work as expected in VB when trying to launch the PowerPoint viewer into a specified monitor. Any ideas ?

BTW, we know the PowerPoint viewer is NOT supposed to support multiple monitors natively, but since we MUST use it in that way, we are looking for creative solutions. Perhaps you have one ...
Christian Studer   2001-12-03 02:57
Seems to work fine, I tested with PowerPoint Viewer 97 on Windows XP, using the following script:

Set wnd = CreateObject("UltraMon.Window")
Set util = CreateObject("UltraMon.Utility")

If util.Run("My Presentation.ppt") = True Then
If wnd.Find("PowerPoint", "", 1, util.ProcessId, 5000) = True Then
wnd.Monitor = 2
wnd.ApplyChanges 0
End If
End If

Because the window is moved after it has been created, it is important that both the original and target monitor have the same resolution, UltraMon can't resize the PowerPoint window, only move it.

Christian Studer -
Jamie Hopwood   2002-03-18 05:36
I have just this problem two, for the project i'm working on.
I've tried your script but get a unknowen error on line 4 character 1 when I run the script.
Now i'm more hardware then programming so it might be my fault.
What i did was cut and paste your script in to wordpad and then saved it as a .vbs file in the same dir as UltraMon put shortcuts.
all well and goos so far till i run the thing then I get the above error.
the only change i made was for the location of the powerpoint file.
I running the latest UltraMon posted here, but have not downloaded the development pack yet do i need to?


Christian Studer   2002-03-18 05:48
Developer edition isn't necessary, it is only needed if you want to redistribute the UltraMon components.

Please try if the script works with Notepad: just replace the 3rd and 4th lines with the following code:

If util.Run("%WINDIR%\Notepad.exe") = True Then
If wnd.Find("", "", 0, util.ProcessId, 5000) = True Then

Christian Studer -
Yaron ben shalom   2003-10-21 02:56
I return to this message thread after quite a long time. The original problem was solved using Internet Explorer as an intermidiate layer between the application and the PPT files (using Powerpoint viewer 97). The only limitation originated from the viewer's inability to support all the features that the full-blown application does.
Now that Powerpoint viewer 2003 is out, we tested our application again in the hope that we could benefit from its enhanced feature set, but instead found out that the new viewer opens up a new window that is no longer contained inside the Internet explorer parent and therefor can not be moved to another monitor as easily as before. Furthermore, it seems that even the primitive object model that the previous version exposed is not longer available.
Do you have any ideas? Have you checked this scenario (or a similar one) with your products?
Christian Studer   2003-10-22 10:09
Moving the slide show using UltraMon also works fine with the 2003 viewer, but with the same limitation as before, you can only move it to a monitor with the same resolution.

Christian Studer -
Yaron ben shalom   2003-11-05 19:02
We tried your product as well as writing our own code to move the Powerpoint presentation shown in the Viewer to another monitor. The results are the same: the windows does move to the other monitor, but only after a short (but noticeable and therefore unacceptable) black flash on the primary display. There is also a very strange identical flash when closing the presentation.
We tried playing with the suspend parameter of the Run method and the SHOWSTATE (Hidden) constant, but nothing helps.
Before trying more extreme measures (such as system wide hooks), I would like to know if you have any more ideas.
Christian Studer   2003-11-06 08:36
Currently this can't be prevented, UltraMon will always move the window after it has been created.

I'm going to look into this again for UltraMon 3, a possible solution might be a CBT hook.

Christian Studer -
Chirag   2005-03-16 07:00
You might want to look at PowerViewer from It adds support for using PowerPoint Viewer 2003 on secondary monitors. It does not cause flash on primary monitor on startup but the secondary monitor needs to be at the same resolution as the primary monitor. An added advantage is that it will allow you to run the presentation unattended - you can continue to use the primary monitor to do other tasks.

I hope this helps.

- Chirag
Forums -> UltraMon™ SDK -> Using PowerPoint viewer on multiple monitors

Post Reply