Este es mi primer mensaje en este foro y como de costumbre en estos casos es para pedir ayuda.
El caso es que desde Visual C++ y en tiempo real quiero crear documentación en word. Partiendo de una base de datos pretendo crear documentos word de tal manera que el resultado final tenga aspecto de documentación de aplicación informática.
No sirve usar el sistema de programación VBA generado desde una macro como lo hariamos en Visual Basic y me faltan conocimientos con la forma de trabajar con objetos Ole desde Visual C++.
Lo estoy consiguiendo con alguna librería localizada por codeproject.com, el problema es que me falta documentación para usar funciones de acceso a fuentes y tal.
Adjunto los ficheros con las clases que uso.
El código para hacer una prueba sería algo parecido a esto:
-----------
//creamos variables para ser usadas como parametros
COleVariant m_True((short)TRUE),m_False((short)FALSE), m_Long((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
//creamos instancia a la aplicacion
_Application appObj;
//creamos objeto
if(!appObj.CreateDispatch("Word.Application"))
{
AfxMessageBox("Coud Not Create The Application Object");
}
//ponemos el word como visible
appObj.SetVisible(TRUE);
//acceso a documentos
Documents docsObj(appObj.GetDocuments());
//acceso a documento
_Document docObj;
//abrimos documento existente
docObj.AttachDispatch(docsObj.Open(COleVariant("c:\\prueba.doc"),m_False,m_False,m_False,m_Long,m_Long ,m_False,m_Long,m_Long,m_Long,m_Long,m_True));
//accedemos a seleccion (edicion documento)
Selection selObj(appObj.GetSelection());
//escribimos un texto en la posicion actual del cursor
selObj.TypeText("texto añadido1");
-------------
El ejemplo abre el documento, lo pone como visible y escribe algo en él. El caso es que poco mas se hacer aunque en las clases del proyecto existan funciones de acceso a fuentes GetFont(), SelFont(). Lo he probado y no me tira. Sé como coger la fuente existente pero no se modificar sus parámetros.
Saludos a todos y gracias por vuestra colaboración...
----------------
A modo de contribución en Visual C++ puedo aportar, entre otros, los siguientes temas...
-Complementos Add-Ins para el repositorio (documentación de código fuente).
-Conexión con SourceSafe para acceso a fuentes de un projecto.
-Lectura de fichero zip para descomprimir y leer ficheros.
-Uso avanzado del control de arbol y de listas.
-Navegación html embebida y creación de contenidos html interactuando con eventos VC++.