PDA

View Full Version : منع دسترسی کاربر به TaskBar



mousa1992
یک شنبه 04 تیر 1391, 23:58 عصر
سلام دوستان عزیز
قبلا این سوالو مطرح کردم جواب نگرفتم
برنامه ای دارم که میخوام تو اون سیستم قفل باشه تا زمانی ک دستور ازاد سازی صادر بشه و یا از یوزر پسورد صحیح استفاده کنه
FormBorderStyle رو none قرار میدم و TopMost میزارمش ولی کاربر با زدن دکمه start میتونه برنامه هایی رو باز کنه ولی خب قادر به مشاهده اونا نیست
میخوام که کاربر به TaskBar دسترسی نداشته باشه ، چطوری میتونم اینکارو انجام بدم
متشکرم

harani
دوشنبه 05 تیر 1391, 00:58 صبح
به نظر من اگه مثلاً میخوای taskbar در لحظه اجرا یه جورایی ناپدید بشه . دکمه های maximumbox , minimumbox را false کن FormBorderStyle رو none بذار و خاصیت windowstate فرمت را برابر maximized قرار بده اونوقت فرم پس از اجرا روی taskbar هم پوشش میده . امیدوارم جوابتان را داده باشم .

mehdy.programmer
دوشنبه 05 تیر 1391, 10:44 صبح
به نظر من اگه مثلاً میخوای taskbar در لحظه اجرا یه جورایی ناپدید بشه . دکمه های maximumbox , minimumbox را false کن FormBorderStyle رو none بذار و خاصیت windowstate فرمت را برابر maximized قرار بده اونوقت فرم پس از اجرا روی taskbar هم پوشش میده . امیدوارم جوابتان را داده باشم .
دوست عزیز نمیشه این کارو کرد! با این روش باز هم میشه به Taskbar دسترسی داشت! من حتی با کد تونستم جلوی alt+F4 بگیرم ولی نه start تونستم نه alt+ctrl+delete ! همچنین به taskbar هم دسترسی داشتم!

mousa1992
دوشنبه 05 تیر 1391, 17:32 عصر
سلام


به نظر من اگه مثلاً میخوای taskbar در لحظه اجرا یه جورایی ناپدید بشه . دکمه های maximumbox , minimumbox را false کن FormBorderStyle رو none بذار و خاصیت windowstate فرمت را برابر maximized قرار بده اونوقت فرم پس از اجرا روی taskbar هم پوشش میده . امیدوارم جوابتان را داده باشم .

تمامی این کارها رو انجام دادم دسترسی وجود داره و متشکرم


دوست عزیز نمیشه این کارو کرد! با این روش باز هم میشه به Taskbar دسترسی داشت! من حتی با کد تونستم جلوی alt+F4 بگیرم ولی نه start تونستم نه alt+ctrl+delete ! همچنین به taskbar هم دسترسی داشتم!

دوست عزیز برای alt+ctrl+delete اگه میخوای از دسترسی به taskmanager جلوگیری کنی یه تایمر بذار و این دستوراتو بنویس

Process[] ps = Process.GetProcesses();
foreach (Process p in ps)
{
if (p.ProcessName.ToLower() == "taskmgr")
p.Kill();
}

بررسی میکنه و به محضی که taskmanager باز بشه میبنده اونو
و اگه لطف کنید کد مربوط به جلوگیری از عمل کردن alt+F4 رو بذارید ممنون میشم
تشکر

mehdy.programmer
دوشنبه 05 تیر 1391, 18:08 عصر
برای taskmanager متشکرم!
برای alt+F4 از این کد استفاده کن:
در رویداد KeyDown فرمت:
if (e.Alt)
{
e.Handled = true;
}

sirvan-me
دوشنبه 05 تیر 1391, 20:57 عصر
چرا برای بستن TaskMgr این کار و بکنیم !!!!! ؟ می تونیم به این صورت عمل کنیم که تو Event مربوط Form_Load برنامت بذار :


RegistryKey Key = Registry.CurrentUser.CreateSubKey(@"Software\Microsoft\Windows\Curre ntVersion\Policies\System");
Key.SetValue("DisableTaskMgr", "1", RegistryValueKind.DWord);


برای برگشت هم تو Event مربوط به Form Closing این کد رو بذار :

Key.SetValue("DisableTaskMgr", "0", RegistryValueKind.DWord);


برای بستن Alt و F4 هم همونطور که دوستمون گفتن تو Event مربوط Ke_Down فرمت بنویس :


if (e.KeyCode == Keys.Alt && e.KeyCode == Keys.F4)
{
e.Handled = true;
}

mousa1992
سه شنبه 06 تیر 1391, 12:31 عصر
سلام دوست عزیز


چرا برای بستن TaskMgr این کار و بکنیم !!!!! ؟ ... .

متشکرم از راهنماییتون بار سنگینی رو از دوش سیستمم برداشتین:قلب:
ولی من هنوز جواب اصلیمو نگرفتم !! ایا شما راهی رو سراغ دارید که از دسترسی کاربر به taskbar جلوگیری کنم؟

sirvan-me
سه شنبه 06 تیر 1391, 14:46 عصر
سلام دوست عزیز

متشکرم از راهنماییتون بار سنگینی رو از دوش سیستمم برداشتین:قلب:
ولی من هنوز جواب اصلیمو نگرفتم !! ایا شما راهی رو سراغ دارید که از دسترسی کاربر به taskbar جلوگیری کنم؟

دوست عزیز اگه شما پروسه مربوط به Explorer رو ببندید و البته از طریق روشی که گفتم Ctrl+Alt+Delete رو غیر فعال دیگه کاربر نمیتونه جز برنامه شما به چیزی دسترسی داشته باشه ......

یا اگه اینو دوست نداری می تونی یه Reg file تو Notepad با متن زیر بسازی ( Notepad و باز کن متن زیر رو توش کپی کن بعد با پسوند .reg ذخیرش کن ) بعد تو برنامت ( Form_Load ) صداش بزنی یا اصلا تو خود برنامت این مقادیر رو ( از طریق راهی که گفتم ) Set کنی :

REGEDIT4

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\StuckRects2]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Policies\Explorer] "NoSetTaskbar"=dword:00000001
"NoTrayItemsDisplay"=dword:00000001
"HideClock"=dword:00000001
"NoToolbarsOnTaskbar"=dword:00000001
"NoTrayContextMenu"=dword:00000001
"NoSaveSettings"=dword:00000000

امیدوارم مفید باشه و به کارت بیاد .

mousa1992
سه شنبه 06 تیر 1391, 22:11 عصر
سلام و متشکرم دوست عزیز


دوست عزیز اگه شما پروسه مربوط به Explorer رو ببندید....

کاربرم با وارد کردن یوزر پس صحیح باید بتونه به همه چی دسترسی داشته باشه ، حالا تنظیماتی رو که تو رجستری انجام دادیم(مربوط به بستن اکسپلورر) چجوری برگردونیم به حالت اول ؟ متشکرم :بوس:

Mahmoud.Afrad
سه شنبه 06 تیر 1391, 22:40 عصر
سلام
به نظر من هم اگر کاربر دسترسی به تسک منیجر نداشته باشه با بستن پروسس explorer.exe کارتون راه میوفته(چون اگر دسترسی به تسک منیجر داشته باشه کاربر میتونه پروسه اکسپلورر رو اجرا کنه). و در صورتی که کاربر نام کاربری و رمز درست رو وارد کرد کافیه پروسس explorer.exe رو فراخوانی کنید.

sirvan-me
سه شنبه 06 تیر 1391, 22:45 عصر
سلام و متشکرم دوست عزیز

کاربرم با وارد کردن یوزر پس صحیح باید بتونه به همه چی دسترسی داشته باشه ، حالا تنظیماتی رو که تو رجستری انجام دادیم(مربوط به بستن اکسپلورر) چجوری برگردونیم به حالت اول ؟ متشکرم :بوس:

همه ی مقدیری که 1 دادی رو 0 کن ... و البته اون - رو از مسیر اول حذف کن .... به همین سادگی به همین خوشمزگی .....