PDA

View Full Version : Login مجدد نرم افزار در صورت کار نکردن با آن- Idleness



farghabil
شنبه 21 اسفند 1395, 11:50 صبح
یه نرم افزار شامل MDI Form و ماژول های مختلف و فرم های مختلف داریم.
میخوایم مثلا اگه تا 10 دقیقه از نرم افزار استفاده نشد نرم افزار اتوماتیک بسته بشه.

از دوستان کسی میتونه راهنمایی کنه؟

group45
شنبه 21 اسفند 1395, 17:15 عصر
با سلام
از تایمر استفاده کنید و زمانی که تایمر از ده دقیقه بیشتر شد application.close() رو اجرا کنید.

NasimBamdad
شنبه 21 اسفند 1395, 17:28 عصر
با سلام
از تایمر استفاده کنید و زمانی که تایمر از ده دقیقه بیشتر شد application.close() رو اجرا کنید.

اینطوری که هر 10 دقیقه یکبار برنامه بسته میشه ،، چه طور تشخیص بدیم که با برنامه داره کار میشه یا نه

مثل ماوس داره می چرخه یا نه !!

group45
شنبه 21 اسفند 1395, 17:44 عصر
این بستگی به کنترل هایی داره که شما دارید تو برنامتهون استفاده میکنید
از ایونت mouse click / focuse و چیزهای دیگه

golbafan
شنبه 21 اسفند 1395, 18:51 عصر
1- یک تایمر 10 دقیقه ایجاد کن برای بستن برنامه و فعالش کن
2- از ایوینت های مختلف استفاده کن (MouseMove یا KeyPress) و هر زمان ایونت اتفاق افتاد تایمر رو ریست کن
3- اگر ایوینت ها رخ ندهد تایمر عمل خواهد کرد

public static void Reset(this Timer timer)
{
timer.Stop();
timer.Start();
}

Mahmoud.Afrad
شنبه 21 اسفند 1395, 23:13 عصر
دو نمونه زیر را ببینید
https://www.codeproject.com/articles/30345/application-idle
https://www.codeproject.com/articles/13756/detecting-application-idleness

NasimBamdad
یک شنبه 22 اسفند 1395, 08:53 صبح
1- یک تایمر 10 دقیقه ایجاد کن برای بستن برنامه و فعالش کن
2- از ایوینت های مختلف استفاده کن (MouseMove یا KeyPress) و هر زمان ایونت اتفاق افتاد تایمر رو ریست کن
3- اگر ایوینت ها رخ ندهد تایمر عمل خواهد کرد

public static void Reset(this Timer timer)
{
timer.Stop();
timer.Start();
}

خوب این کار رو باید برای همه فرم های نرم افزار انجام داد ؟ مثلا من نرم افزاری دارم که 20 تا فرم داره و کاربر هر سری با یکی از این فرم ها کار میکنه ،، باید توی همه فرم ها این مورد رو لحاظ کنم ؟

hadiroosta
یک شنبه 22 اسفند 1395, 21:03 عصر
میتونید از ایونت idle به همراه یک تایمر استفاده کنید به این صورت که وقتی این ایونت اتفاق افتاد تایمر ریست و on بشه و interval تایمر رو مدت زمان تاخیر برای بسته شدن (در اینجا 10 دقیقه ) بزارین