PDA

View Full Version : حرفه ای: hook (قفل) موس و کیبورد



drsina
یک شنبه 16 تیر 1392, 06:31 صبح
سلام
راستش تو اینترنت و اینجا گشتم ولی چیز درستی پیدا نکردم !

اگه دوستان کدی داره که با اون بشه موس و کیبورد را برای یه مدت مثلا 20 ثانیه قفل کنه ، بزاره ممنون میشم !؟

httplistener
یک شنبه 16 تیر 1392, 07:58 صبح
سلام
راستش تو اینترنت و اینجا گشتم ولی چیز درستی پیدا نکردم !

اگه دوستان کدی داره که با اون بشه موس و کیبورد را برای یه مدت مثلا 20 ثانیه قفل کنه ، بزاره ممنون میشم !؟


سلام.
می تونید از تابع win32 api زیر استفاده کنید:


[DllImport("user32.dll")]
private static extern bool BlockInput(bool block);

برای بلوک کردن به مدت دلخواه می تونید از این متد استفاده بکنید:

public static void BlockInput(TimeSpan span)
{
try
{
BlockInput(true);
System.Threading.Thread.Sleep(span);
}
finally
{
BlockInput(false);
}
}

مثالی که شما می خواهید :

BlockInput(new TimeSpan(0,0,20));

drsina
یک شنبه 16 تیر 1392, 14:21 عصر
داداش این درسته ولی این فقط تو فرم کار میده !
من میخوام کلان قفل بشه !
یعنی تو desktop قفل کنه .

danialafshari
یک شنبه 16 تیر 1392, 14:39 عصر
سلام درسته دیگه !
اصل استفادش اینه که Start Position روی Maximum باشه دیگه کاربر نمیتونه کاری بکنه !

drsina
یک شنبه 16 تیر 1392, 14:45 عصر
آره ! دمت گرم کلک پایه ای ! وسط میزاریش:لبخند:

mirza barnamenevis
دوشنبه 11 شهریور 1392, 23:28 عصر
سلام.
می تونید از تابع win32 api زیر استفاده کنید:


[DllImport("user32.dll")]
private static extern bool BlockInput(bool block);

برای بلوک کردن به مدت دلخواه می تونید از این متد استفاده بکنید:

public static void BlockInput(TimeSpan span)
{
try
{
BlockInput(true);
System.Threading.Thread.Sleep(span);
}
finally
{
BlockInput(false);
}
}


آقا من این رو گذاشتم ok هست تا وقتیctrl +alt +delete رو نزدی تا میزنی موس از قفل در میاد اون صفحه ابی باز می شه بعدم کلا بلا استفاده می شه
این چجوری حل کنم

kooroshheydarirad
دوشنبه 11 آذر 1392, 10:32 صبح
سلام به همه دوستان
شما واسه این کار باید سخت افزار کیبورد رو غیر فعال کنی یعنی disable بشه مثل حالتی که توی device manager وجود داره