سلام
براي اينكه كاربر نتونه بيش از يكبار برنامه رو بصورت همزمان باز كنه چيكار كنم؟
ممنون
سلام
براي اينكه كاربر نتونه بيش از يكبار برنامه رو بصورت همزمان باز كنه چيكار كنم؟
ممنون
سلام
کد زیر رو به فایل App.xaml.cs برنامه اضافه کنید
public App()
{
string str = System.IO.Path.GetFileName(System.Reflection.Assem bly.GetEntryAssembly().GetName().Name);
if (System.Diagnostics.Process.GetProcessesByName(str ).Length > 1)
{
MessageBox.Show("برنامه در حال اجرا است");
Application.Current.Shutdown();
}
}
آخرین ویرایش به وسیله مهدی فرزاد : پنج شنبه 12 اسفند 1389 در 11:20 صبح
سلام
من این کد رو در app.xaml.cs میزارم اما یک مشکل دارم: اینکه بعد از
System.Diagnostics.Process.
عبارت GetProcessesByName رو قبول نداره یعنی بعد از نقطه هیچی نمایش داده نمیشه وندونستم چیو باید اضافه کنم
اول متشکر
دوم من کد رو بین این نوشتم
public partial class App : Application
{
string str = System.IO.Path.GetFileName(System.Reflection.Assem bly.GetEntryAssembly().GetName().Name);
}
سلام
دقیقا مثل کد من بنویسید یعنی بین
public App() { }
که باید خودتون ایجادش کنید (کد من رو دقیقا کپی کنید)
سلام.
روش صحیح برای محدود کردن اجرای نرم افزار به یک Instance، استفاده از Mutex هاست.
البته روش های دیگه ای نیز وجود داره، اما خوب، Mutex برای دسترسی به یک Shared Resource از
طریق Thread ها و Process های مختلف ایجاد شده و برای این منظور مناسب ترین گزینه هستش.
موفق باشید.
تو این پست هم یه چیزایی می تونی پیدا کنی
https://barnamenevis.org/showthread.p...-VB&highlight=