Puedes abrir cualquier programa con la función ShellExecute... únicamente preocúpate de pasarle los argumentos adecuados:
Código C:
Ver original#include <windows.h>
// ...
ShellExecute(GetDesktopWindow(), "open", [RUTA_FICHERO_PDF], NULL, NULL, SW_SHOWNORMAL);
¿Cómo funciona? como le indicas que abra un fichero, el sistema operativo buscará el programa asociado a dicha extensión (que usualmente será el visor de pdf) y ejecutará dicho visor para poder abrir el fichero.
Un saludo.