Automatización en C++ Builder

Última modificación el Martes, 21 abril 2009 09:11 Autor: ProgramadorWeb Viernes, 8 agosto 2008 09:06

Automatización en C++ Builder

Automatización en C++ Builder   logo cpp Automatización en C++ Builder

Automatización en C++ Builder



En Windows existe un mecanismo, conocido como automatización, que permite a una aplicación controlar a otra o a un componente. Lenguajes como Visual Basic y Delphi permiten usar dicho mecanismo de una manera realmente sencilla, siendo tan natural que los programadores la utilizan prácticamente sin darse en cuenta.


Con C++ el caso es distinto, ya que, a diferencia de Visual Basic y Delphi, no es un lenguaje tan estrechamente ligado a Windows. Dependiendo de la herramienta C++ que usemos, el sistema para poder automatizar una aplicación será uno u otro. En el caso de C++ Builder todo el secreto está en conocer algunos métodos de la clase Variant. Ésta tiene por finalidad representar en C++ Builder el tipo de dato Variant que existe en otros lenguajes.


Simplemente conociendo dos métodos de Variant tendremos suficiente. El primero de ellos, llamado CreateObject(), es estático, lo cual significa que podemos llamarlo directamente sin necesidad de crear un objeto de la clase. El único parámetro que precisa es el identificador de automatización del objeto a crear, generalmente compuesto por el nombre de la aplicación, un punto y el nombre de un componente de esa aplicación.


El otro método de interés es Exec(). Éste toma como parámetro un objeto Procedure o un objeto Function y lo ejecuta en la aplicación automatizada. El siguiente fragmento de código, por ejemplo, abrirá Microsoft Word, creará un nuevo documento, insertará en él una línea de texto y la guardará en un archivo:


Variant Word;


Word = Variant::CreateObject(


“Word.Basic”);


Word.Exec(Procedure(“AppShow”));


Word.Exec(Function(“FileNew”));


Word.Exec(Procedure(“Insert”) <<


“Texto insertado desde C++ Builder”);


Word.Exec(Function(“FileSaveAs”) <<


“Prueba.doc”);


Observe que cuando es necesario facilitar algún parámetro a un procedimiento o una función, por ejemplo la cadena a insertar o el nombre del archivo, se utiliza el operador de inserción estándar.


Conociendo esta técnica, lo único necesario para poder automatizar una aplicación es conocer su modelo de componentes: nombres de objetos, procedimientos, funciones y propiedades. Es algo que, generalmente, se documenta en la propia ayuda de la aplicación.




Si te ha parecido interesante únete a nuestra comunidad de FACEBOOK y compartelo con tus amigos.





Articulos relacionados:


No olvides compartir Automatización en C++ Builder en tus redes sociales :-)
     

Enviar comentario