При использовании PrintDlgEx необходимо что бы выскочил диалог pPageRanges = (LPPRINTPAGERANGE) GlobalAlloc(GPTR,10 * sizeof(PRINTPAGERANGE)); Если его не определить то глухо.А на Аксапте это писать не очень

А длинна структуры для PrintDlgEx у вас правильная -84, 66 это у PrintDlgA.
P.S. Просто люблю с API поковыряться. Сделал вертикальный вывод текста в ах , но мне не очень то нравиться как получилось