Objectos App y Error (sólo proyectos visuales)
En tiempo de
ejecución, puede tener acceso a estos dos útiles
e interesantes
objetos:
Objeto App
El objeto App contiene información sobre la aplicación y se compone de los siguientes miembros:
Algunas aplicaciones sólo pueden tener una instancia en marcha al mismo tiempo (p. e. el ejemplo EC Player que viene con Easy Code). Para saber si ya hay alguna otra instancia en marcha cuando inicie la aplicación, compruebe la variable App.Previous en el mensaje WM_CREATE. Si App.Previous no es NULL y no desea iniciar otra instancia, devuelva -1. El valor de App.Previous es el "handle" de la ventana principal de la instancia que ya está en marcha (si hay alguna), o NULL.
Accel El "handle" de la tabla principal de aceleradores, si hay alguno, o NULL CommandLine La linea de comandos de la aplicación (excluyendo el nombre y la ubicación del programa) FileName El nombre del archivo ejecutable Header La cabecera o título de la aplicación (el texto del campo Cabecera de las propiedades del proyecto) Instance El "handle" de la instancia de la aplicación Main El "handle" de la ventana principal (ventana de inicio) de la aplicación Major El número mayor de la versión Minor El número menor de la versión Path La ubicación de la aplicación Previous El "handle" de la ventana principal de la instancia previa, si hay alguna, o NULL ProcessID El identificador del proceso (no el handle del proceso). Para obtener el handle del proceso, llame a la función de la API GetCurrentProcess. Revision La revisión de la versión ThreadID El identificador del "thread" que ha creado la ventana principal.
AVISO: No
debería CAMBIAR
NUNCA ninguno de los valores
del objeto App
o la aplicación podría bloquearse.
OBSERVACIONES: El miembro CommandLine apunta a una cadena de texto acabada en cero que contiene sólo la linea de comandos de la aplicación (si hay alguna), es decir, sin incluir el nombre ni la ubicación del programa ("path"). Para obtener la linea de comandos entera, utiice la función de la API GetCommandLine.
Objeto Error
El objeto Error siempre contiene información sobre la última excepción producida y se compone de dos miembros:
Code
Description
Error.Code es una variable DWord que almacena el código de la excepción, mientras que Error.Description es un puntero a la dirección efectiva de una cadena acabada en cero que contiene la descripción de la excepción (este miembro sólo está disponible en modo Debug). Los valores del objeto Error se ponen a cero (miembro Code) y a una cadena vacía (miembro Description) al iniciarse la aplicación. Cuando se produce una excepción, el código y la descripción se almacenan en los miembros correspondientes del objeto Error, y permanecen sin modificar hasta que se produce otra excepción. Si lo desea, puede poner Error.Code a cero antes de llevar a cabo una operación, pero no debería CAMBIAR NUNCA la dirección de Error.Description.
OBSERVACIONES:
Ambos objetos sólamente se encuentran disponibles en tiempo
de ejecución. Cuando se trabaja en modo
Release
sólamente Error.Code
es válido,
puesto que Error.Description
existe pero no se actualiza nunca en las librerías
ECStcMsr.lib
o ECDllMsr.lib.