ايران ويج

نسخه‌ی کامل: عدم اجرای مجدد exe با کلیک مجدد
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
ببخشید یه سوال دیگه داشتم:

exe هایی که با دلفی کامپایل می کنیم
قاعدتا با هر بار دابل کلیک روی اون ، اجرا میشه ، یعنی فرض کنید برنامه ای که با دلفی نوشتیم رو کاربر اجرا کرده ، حالا اگه حواسش نبود و یا به هر دلیل دیگه مجددا روی اگزه دابل کلیک کنه ، دوباره پروژه ران میشه و با دوتا پروژه اجرا شده مواجه میشه
راه حلش چیه و چطور می تونم این باگ رو برطرف کنم؟

اگه باز کمک کنید ممنون میشم

این لینک رو تو انجمن تازه پیدا کردم http://www.iranled.com/forum/thread-20269.html
فکر کنم جواب همین سوال باشه
خب از Mutex استفاده کن که پروژه فقط یه بار اجرا بشه

کد:
function StopLoading() : boolean;
var
  Mutex : THandle;
begin
   Mutex := CreateMutex(nil,false,'NoExec');
   Result := (Mutex = 0) or (GetLastError = ERROR_ALREADY_EXISTS);
end;

روش استفاده:

کد:
procedure TForm1.FormCreate(Sender: TObject);
begin
       if StopLoading then Halt;
end;

موفق باشید.
دستتون درد نکنه
روش مختصر و مفیدی هستش
تشکر می کنم