 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Phoenix Cdt

Registrado: 24 Ago 2003Mensajes: 8
|
Publicado: Mie 07 Ene, 2004 11:58 pm Asunto: Programa que se identifica a si mismo |
|
|
| Esta raro el titulo no?, Hola!!, saben he visto varios programas y hay programas que cuando ya estan en ejecución y tu intentas abrir el programa (es decir volverlo a ejecutar), entonces este no se carga de nuevo, si no solo despliega el porgrama que ya estaba ejecutado, por ejemplo el windows media, cuando lo abres no abre otro windows media solo se restaura o se pone activo, como se hace eso? |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Jue 08 Ene, 2004 1:42 am Asunto: |
|
|
Pues este codigo sirve para ello, ya sabes va en el archivo proyecto, del programa
| Código: |
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "uSplash.h"
#include "UAcceso.h"
//---------------------------------------------------------------------------
USEFORM("..\..\UTIL\USPLASH.cpp", Splash);
USEFORM("UPrincipal.cpp", PRINCIPAL);
USEFORM("..\..\UTIL\UNet.cpp", FNet);
USEFORM("UModuloDatos.cpp", DataModule1); /* TDataModule: File Type */
USEFORM("UClientes.cpp", FCLIENTES);
USEFORM("UHabitaciones.cpp", FHABITACIONES);
USEFORM("UEmpleado.cpp", FEMPLEADOS);
USEFORM("UFacturaHotel.cpp", FFACTURA);
USEFORM("UAcceso.cpp", FAcceso);
USEFORM("UEMPRESA.cpp", FEMPRESA);
USEFORM("UCargos.cpp", FCARGOS);
USEFORM("..\..\UTIL\PROYECTO NUEVO\SERVIDOR\USeleccion.cpp", FSeleccion);
USEFORM("UModuloDatosLocal.cpp", DataModule2); /* TDataModule: File Type */
USEFORM("..\..\UTIL\PROYECTO NUEVO\SERVIDOR\UDESPERTADOR.cpp", FDespertar);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
// ESTA PARTE ES PARA QUE LA APLICACION NO SE EJECUTE 2 VECES
// EN FINDWINDOWS (,"NOMBRE APLICACION COMO ESTA EN PROJECTO OPTIONS");
// QUE ES IGUAL QUE APPLICATION->TITLE = "NOMBRE APLICACION COMO ESTA EN PROJECTO OPTIONS"
::CreateMutex(NULL,NULL,"MUTEX");
if (GetLastError()){
HWND FirstWnd;
FirstWnd = :: FindWindow("TApplication", "Sistema De Facturacion."); //OJO
if (::IsIconic(FirstWnd))
::ShowWindow(FirstWnd,SW_SHOWDEFAULT);
::SetForegroundWindow(FirstWnd);
}else{
Application->Initialize();
// ESTA PARTE ES PARA HACER EL SPLASH SCREEN
Splash = new TSplash (static_cast<void *>(NULL)); // Añade esta línea
Splash->Show(); // Añade esta línea
Application->ProcessMessages(); // Añade esta línea
Application->Title = "Sistema De Facturacion."; // OJO
Application->HelpFile = "";
Application->CreateForm(__classid(TDataModule1), &DataModule1);
Application->CreateForm(__classid(TDataModule2), &DataModule2);
Application->CreateForm(__classid(TPRINCIPAL), &PRINCIPAL);
Application->CreateForm(__classid(TFCLIENTES), &FCLIENTES);
Application->CreateForm(__classid(TFHABITACIONES), &FHABITACIONES);
Application->CreateForm(__classid(TFEMPLEADOS), &FEMPLEADOS);
Application->CreateForm(__classid(TFFACTURA), &FFACTURA);
Application->CreateForm(__classid(TFEMPRESA), &FEMPRESA);
Application->CreateForm(__classid(TFCARGOS), &FCARGOS);
Application->Run();
}
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------
| , espero te sirva de paso, tambien tengo el SplashScreen, esto es obra de Roberto ya que el fue el que puso como hacerlo y creo que para que no se repitan las aplicaciones creo lo pusó, _LEO.. saludos
aun que te recomiendo que busques primero en el icono "Buscar", de la parte principal de la pagina.. y para ver los resultados que pueden arrojarte... _________________
 |
|
| Volver arriba |
|
 |
jaquemate Lt Cmdr


Registrado: 30 Sep 2002Mensajes: 110
|
Publicado: Jue 08 Ene, 2004 3:17 am Asunto: |
|
|
Aquí hay tres formas diferentes de hacer lo que pides. Está en inglés, lo siento:
http://www.bcbdev.com/faqs/faq74.htm
Al igual que César, te recomiendo que uses la opción de buscar en el foro.
Un saludo. |
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|