RE:¿Cual es la mejor manera para imprimir con VC++
El mejor método, según creo yo, es utilizar la función IsPrinting() que te proporciona el objeto pDC de la clase CDC, dentro de la función OnDraw(CDC* pDC) de tu clase derivada de CView.
Preguntarás al actualizar si esta imprimiendo:
if (pDC->IsPrinting()) {}
Entre las llaves meterás el código que quieras. Si no está imprimiendo simplemente dibujará en el área cliente. Recuerda que tienes que cambiar el modo de mapeo para imprimir. Me parece que es MM_LO..., lo que sea.
Hasta luego.