1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
HANDLE hMutex;
try
{
char nom[256];
//AnsiString asNom = Application->ExeName;
AnsiString asNom = "alloa";
strcpy(nom, asNom.c_str());
hMutex= CreateMutex(NULL,true,nom);
if( (hMutex==NULL) || (GetLastError() == ERROR_ALREADY_EXISTS) )
{
ShowMessage("Seulement un examplaire du programme peu être ouvert à la fois.");
// Fermeture du Mutex
CloseHandle(hMutex);
Application->Title="";
HWND hPrevApp=::FindWindow(NULL, nom);
if(hPrevApp)
PostMessage(hPrevApp, WM_SYSCOMMAND, SC_RESTORE, 0);
return 0;
}
Application->Initialize();
SetApplicationMainFormOnTaskBar(Application, true);
Application->CreateForm(__classid(TFPrincipale), &FPrincipale);
Application->CreateForm(__classid(TFRecherche), &FRecherche);
Application->CreateForm(__classid(TFPlan), &FPlan);
Application->CreateForm(__classid(TFResultats), &FResultats);
Application->CreateForm(__classid(TFOption), &FOption);
Application->CreateForm(__classid(TFAvenirOpt), &FAvenirOpt);
Application->CreateForm(__classid(TFDetailPorte), &FDetailPorte);
Application->CreateForm(__classid(TFBatchDetail), &FBatchDetail);
Application->CreateForm(__classid(TFFeuilleMDF), &FFeuilleMDF);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
} |
Partager