PDA

View Full Version : سوال: اجرای برنامه فقط 1 بار



arminesmaeely
دوشنبه 05 مرداد 1388, 17:06 عصر
چطور می شه برنامه رو فقط یک بار اجرا کرد ؟
چطور می شود برنامه رو فقط یک بار اجرا کرد و در دفعات بعد چک شود که آیا برنامه باز هست یا نه اگر که هست دیگر برنامه اجرا نشود
با تشکر

Mani_rf
دوشنبه 05 مرداد 1388, 19:59 عصر
سلام.

برای اینکه برنامه فقط یک بار اجرا شود شما می توانید گزینه Make Single Instance Application را از قسمت Application در Properties پروژه تیک بزنید.




Project Menu > (XXX ) Properties > Application > Make Single Instance Application

Sharif Lotfi
دوشنبه 05 مرداد 1388, 21:59 عصر
مي تونين از كد زير هم در برنامتون استفاده كنين :

Private Sub check_in_process_this_program()
If (UBound(Diagnostics.Process.GetProcessesByName(Dia gnostics.Process.GetCurrentProcess.ProcessName)) > 0) Then
MsgBox("**اين برنامه اکنون در حال اجرا مي باشد** شما نمي توانيد نسخه ديگري از آن را اجرا کنيد.", MsgBoxStyle.OkOnly Or MsgBoxStyle.MsgBoxRight Or MsgBoxStyle.MsgBoxRtlReading Or MsgBoxStyle.Exclamation, "اخطار")
Beep()
Application.ExitThread()
Application.Exit()
End
End If
End Sub

رضا نانوا
سه شنبه 06 مرداد 1388, 00:21 صبح
اگه بخوایم برنامه رو دوبار، چندبار ، یا تا تاریخ مشخصی فعال کنیم بعد دیگه قابل اجرا نباشه چی؟

mbf5923
سه شنبه 06 مرداد 1388, 12:54 عصر
سلام
برای اینکه برنامه تا تاریخ مشخص یا به تعداد مشخص اجرا بشه بهترین راهش استفاده ار رجیستری هستش
که تعداد دفعات یا تاریخ ابتدا و انتها را در رجیستری ذخیره کنی
اگه روشش رو نمیدونی بگو تا برات نمونه بذارم

Sharif Lotfi
سه شنبه 06 مرداد 1388, 21:33 عصر
سلام
برای اینکه برنامه تا تاریخ مشخص یا به تعداد مشخص اجرا بشه بهترین راهش استفاده ار رجیستری هستش
که تعداد دفعات یا تاریخ ابتدا و انتها را در رجیستری ذخیره کنی
اگه روشش رو نمیدونی بگو تا برات نمونه بذارم

اگه ميشه در اين مورد يه توضيح بدين كه به چه صورت اين كارو بكنيم . ممنون

رضا نانوا
پنج شنبه 08 مرداد 1388, 00:28 صبح
سلام
برای اینکه برنامه تا تاریخ مشخص یا به تعداد مشخص اجرا بشه بهترین راهش استفاده ار رجیستری هستش
که تعداد دفعات یا تاریخ ابتدا و انتها را در رجیستری ذخیره کنی
اگه روشش رو نمیدونی بگو تا برات نمونه بذارم
اگه لطف کنی ممنون میشم

mortezamhd
پنج شنبه 08 مرداد 1388, 04:28 صبح
سلام
برای اینکه برنامه تا تاریخ مشخص یا به تعداد مشخص اجرا بشه بهترین راهش استفاده ار رجیستری هستش
که تعداد دفعات یا تاریخ ابتدا و انتها را در رجیستری ذخیره کنی
اگه روشش رو نمیدونی بگو تا برات نمونه بذارم
منم کارم گیره بی زحمت بزاریدش

hossein-khoshseyar
جمعه 09 مرداد 1388, 19:24 عصر
AppActivate("Untitled - Notepad")

تو اول برنامت این رو چک کن و اگه نتیجش درست بود همونجا برنامه رو ببند تا دیگه اجرا نشه

رضا نانوا
دوشنبه 27 اردیبهشت 1389, 00:38 صبح
AppActivate("Untitled - Notepad")

تو اول برنامت این رو چک کن و اگه نتیجش درست بود همونجا برنامه رو ببند تا دیگه اجرا نشه
خودت امتحانش کردی؟
اگه ممکنه یه نمونه برنامه بزاری ممنون میشم.

Netsky
دوشنبه 27 اردیبهشت 1389, 10:16 صبح
سلام بر رفقاي جيگر طلا .....
دوستان اين كد رو حدودا 1 سال پيش نوشتم ، امتحانش كنيد . كاري ميكنه كه برنامه تا 5 بار بيشتر باز نشه و در صورتي كه بار شيشم برنامه در حال باز شدن بود ، يه ارور بده :


Dim verify
verify = GetSetting(Application.CompanyName, "ST", "ST")
If verify = "" Then
SaveSetting(Application.CompanyName, "ST", "ST", 5)
Else

If verify < 1 Then
MsgBox("The Beta Period is Over!!!", MsgBoxStyle.Critical, "Beta Period")
End
End If
verify = verify - 1
SaveSetting(Application.CompanyName, "ST", "ST", verify)
MsgBox(verify)
End If

اين كد رو داخل Form_Load بزاريد .
البته يكي از مشكلاتي كه داره اينه كه در مقابل حرفه اي ها و حتي متوسط به بالاهاي كامپيوتر روش خوبي نيست . چون مقادير داخل رجيستري ذخيره ميشن و دسترسي بهشون راحته . البته ميتونيد مقادير رو به صورت كد شده داخل رجيستري قرار بديد .
موفق باشيد ............