Tu exposición ha quedado perfectamente clara. Te indico anticipadamente que no aporto una solución a tu problema, tan sólo ideas.
Dado que no domino en profundidad Powerpoint y que powerpoint no es parte del entorno de desarrolo de visual Basic, vamos a ver que se puede hacer...
Intenta abrir la presentación en powerpoint (lo que señalo ahora depende de la versión que tengas instalada, lo que refiero atañe a laversión 2000 (creo, hablo de memoria) y puede que enotra versión debas encontrarlo en otro apartado)... ve al menú presentación, pulsa en el submenú 'Configurar presentación', en la ventana que se abre en la parte inferior casi a la izquierda del todo hay una opción que a mi me aparece desmarcada, porque sólo tengo un monitor y que reza: 'Mostrar en:' ---- elige el monitor, si tu quieres trabajar en el principal pués las diapositivas deberán ir al monitor secundario.
Además en dicha ventana deberías elegir la opción: 'Presentación autoejecutable' , frente a la oopción 'Presentación con un orador en directo'
Por defecto todas las presentaciones tienen activado el monitor principal, y powerpoint, Intuyo que, debe interpretar que en un momento dado en el que el programa está activo (tiene el foco) se considera 'monitor principal', digamos virtual, de tal modo que cuando pierde el foco por serlo 'virutal' cesa.
En fin creo que es más alguna opción no muy visible en powerpoint la que debería activarse. En última instancia quizás podrías hacerlo funcionar a las bravas, si arrancas el powerpoint desde tu propio programa con un 'shelllexecute' y manteniendo una referencia del proceso en tu programa para arrancarlo o deternerlo a voluntad (mediante menú, etc..), de este modo arrancado en segundo plano es bastante problable que el comportamiento no sea el mismo que si el parent es el explorer...
También puedes intentar a probar con el 'Asistente para presentaciones portátiles', Este asistente se utiliza en casos en los que no está instalado powerpoint en un equipo, pero no necesariamente esto es imprescindible, el ejecutable se llama powerpoint veiwer ( Ppview32.exe ) y deberías encontrarlo en algun lugar dentro de office, o en el CD-ROM de office si no está instalado. acepta como línea de comandos la ruta de la presentación...
A este efecto, ya de paso te indico como crear lista de presentaciones... basta editar un archivo (a mano o por código), el contenido de este fichero no es otro que rutas completas a archivos de presentaciones (una por línea) entrecomilla las rutas para evitar problemas si hay un espacio en blanco en el nombre o la ruta . Cuando termines el archivo debes renombrarlo con la extensión .lst (de lista).
ejemplo de una lista:
"c:WindowsPresentacion1.ppt"
"d:Mis PresentacionesFebrerofebrero.pps"
/v "c:2020Marzo.ppt"
Opciones de la línea de comando de ppview32
Para aplicar una opción a varias presentaciones, las presentaciones deben ir en la misma línea separadas por un espacio.
/v muestra la advertencia de que una presentación con macros puede ocultar un virus (interesa cuando envias algo a alguien por correo, que se asegure de pasarle previamente el antivirus).
/a es una opción de la línea de comandos de ppview32 para pasar automáticamente de una diapositiva a otra...
/k se ejecutan en el modo exposición...
/l cíclico, se repite en bucle hasta que se pulse la tecla escape.
/r=inicio-fin especifica que la presentación empieza en la diapositiva numerada como inicio y finaliza en la indice fin, por ejemplo si la presentación tiene 200 diapositivas pero lo que vamos a hacer interesa sólo desde la 80 a la 91, escribiríamos la línea deejemplo: /r=80-91 "C:la presentacion.pps".
Dependiendo de las versiones puede que las opciones sean otras, por ejemplo en este ordenador /k especifica una contraseña y no acepta en la lista las opciones, pero si como una línea de un archivo bat:
c:ppview32.exe /r=3-8 "c:ejemplo de prueba.ppt"
ejemplo: supongamos que (para no hacer la ruta muy larga) el programa ppview32.exe y el archivo lista.lst están ubicados en 'C:' , una línea de comando para un bat podría ser como está:
c:ppview32.exe "lista.lst"
Se ejecutará powerpoint (versión portable), tomará el contenido del archivo lista.lst y ejecutará una a una las presentaciones... Eso si puedes optar por ejecutar el bat o hacer un shellexecute por código, ya dependiendo del objetivo final...
También recuerdoque en la ayuda de powerpoint, hay un apartado enfocado a los programadores para integrar powerpoint con Visual Basic, quizás allí encuentres más info. Si tu versión de ayuda noincluye dicho apartado me das un aviso por privado y veré de mandártelo de alguna manera.
Siento no haberte podido dar una respuesta clara y definitiva, pero creo que te he ofrecido alternativas e ideas para probar por tí mismo.
Prueba y nos cuentas si el problema se solucionó...
Incluyo una imagen (comprimida) que muestra los objeto powerpoint que se pueden usar con Visual Basic