Inny sposób masz tutaj:
http://programowanie.cal.pl/cyfbar/api2.html#api27A ja zmieniam nazwę głównego okna z
Form1 na niepowtarzalną, np
Form_1XXABC a potem, w pliku CPP projektu (np Project1.cpp) dopisuję coś takiego:
// W pliku CPP projektu w funkcji 'WINAPI _tWinMain':
WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
// Blokada uruchomienia kopii programu
HWND wnd = FindWindow(L"TForm_1XXABC", NULL);
if ( wnd )
{
SendMessage(wnd, WM_SYSCOMMAND, SC_RESTORE, 0);
SetForegroundWindow(wnd);
Application->Terminate();
}
// Normalne uruchomienie programu
else
{
....
Dodatkowo (nie jest to konieczne, ale wolę stosować w innych oknach nazwę
Form1), na końcu pliku nagłówkowego głównego okna (Form_1XXABC.h), pomiędzy
extern PACKAGE a ostatnim
#endif dodaję taki fragment:
extern PACKAGE TForm_1Cryptext *Form_1XXABC;
//---------------------------------------------------------------------------
#ifndef Form1
#define Form1 Form_1XXABC
#endif
//---------------------------------------------------------------------------
#endif