PDA

View Full Version : از کار انداختن کلیدهای alt+ctrl+del



vahidm
سه شنبه 13 فروردین 1387, 19:36 عصر
سلام از دوستان
کسی کد از کار انداختن کلیدهای نامبرده داره ؟

Mbt925
سه شنبه 13 فروردین 1387, 20:16 عصر
یه روش خیلی ساده و کارا از راه رجیستری اه :

توی مسیر زیر یه کلید به نام DisableTaskMgr از نوع DWORD می سازید (اگه وجود نداره) :
(اگه خود مسیر هم وجود نداره بسازید.)



[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr entVersion\Policies\System]


برای غیرفعال کردن بهش مقدار 1 رو میدید و برای فعال کردن مقدار 0.

vahidm
سه شنبه 13 فروردین 1387, 20:26 عصر
با سلام و تشکر
ببخشید آقای مدیر اینجا تالار برنامه نویسی هست نه ترفندهای ویندوز
ببخشید من می خوام ببینم از توی ویژوال چطور میشه این کار رو کرد ؟
با تشکر

perfeshnal
سه شنبه 13 فروردین 1387, 20:42 عصر
سلام

آقا محسن هم می دونند که اینجا انجمن برنامه نویسی ایشون مسیر رجیستری رو خدمتون گفتند خودتون با دستورات VB این کار رو انجام دهید.
موفق باشید

vahidm
سه شنبه 13 فروردین 1387, 21:20 عصر
تشکر
و منذرت خواهی از مدیریت محترم

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

مهران رسا
سه شنبه 13 فروردین 1387, 21:57 عصر
یه روش خیلی ساده و کارا از راه رجیستری اه :

توی مسیر زیر یه کلید به نام DisableTaskMgr از نوع DWORD می سازید (اگه وجود نداره) :
(اگه خود مسیر هم وجود نداره بسازید.)



[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr entVersion\Policies\System]


برای غیرفعال کردن بهش مقدار 1 رو میدید و برای فعال کردن مقدار 0.

سلام . ایشون که نگفتن Task Manager چه طوری از کار میوفته . گفتن چه طوری این 3 تا کلید رو غیر فعل کنیم .

Mr'Jamshidy
سه شنبه 13 فروردین 1387, 22:04 عصر
سلام . ایشون که نگفتن Task Manager چه طوری از کار میوفته . گفتن چه طوری این 3 تا کلید رو غیر فعل کنیم .

اما این کلید Task Manager رو از کار میندازه اما مهم نیست مهم اینه که سوال جواب داده بشه



Public Declare Function GetSystemMenu Lib "user32" _
(ByVal hwnd As Long, _
ByVal bRevert As Long) As Long
Public Declare Function RemoveMenu Lib "user32" _
(ByVal hMenu As Long, _
ByVal nPosition As Long, _
ByVal wFlags As Long) As Long

Public Const MF_BYPOSITION = &H400&
Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_USERS = &H80000003
Public Const HKEY_PERFORMANCE_DATA = &H80000004
Public Const ERROR_SUCCESS = 0&
' Registry API prototypes
Declare Function RegCloseKey Lib "advapi32.dll" (ByVal Hkey As Long) As Long
Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal Hkey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal Hkey As Long, ByVal lpSubKey As String) As Long
Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal Hkey As Long, ByVal lpValueName As String) As Long
Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal Hkey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal Hkey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal Hkey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Public Const REG_SZ = 1 ' Unicode nul terminated string
Public Const REG_DWORD = 4 ' 32-bit number
Public Sub Reg_Save_String(Hkey As Long, strPath As String, strValue As String, strdata As String)
Dim keyhand As Long
Dim r As Long
r = RegCreateKey(Hkey, strPath, keyhand)
r = RegSetValueEx(keyhand, strValue, 0, REG_SZ, ByVal strdata, Len(strdata))
r = RegCloseKey(keyhand)
End Sub
Public Function Reg_Get_String(Hkey As Long, strPath As String, strValue As String)
Dim keyhand As Long
Dim datatype As Long
Dim lResult As Long
Dim strBuf As String
Dim lDataBufSize As Long
Dim intZeroPos As Integer
r = RegOpenKey(Hkey, strPath, keyhand)
lResult = RegQueryValueEx(keyhand, strValue, 0&, lValueType, ByVal 0&, lDataBufSize)
If lValueType = REG_SZ Then
strBuf = String(lDataBufSize, " ")
lResult = RegQueryValueEx(keyhand, strValue, 0&, 0&, ByVal strBuf, lDataBufSize)
If lResult = ERROR_SUCCESS Then
intZeroPos = InStr(strBuf, Chr$(0))
If intZeroPos > 0 Then
Reg_Get_String = Left$(strBuf, intZeroPos - 1)
Else
Reg_Get_String = strBuf
End If
End If
End If
End Function
Function Reg_Save_DWORD(ByVal Hkey As Long, ByVal strPath As String, ByVal strValueName As String, ByVal lData As Long)
Dim lResult As Long
Dim keyhand As Long
Dim r As Long
r = RegCreateKey(Hkey, strPath, keyhand)
lResult = RegSetValueEx(keyhand, strValueName, 0&, REG_DWORD, lData, 4)
'If lResult <> error_success Then Call errlog("SetDWORD", False)
r = RegCloseKey(keyhand)
End Function
Function Reg_Get_DWORD(ByVal Hkey As Long, ByVal strPath As String, ByVal strValueName As String) As Long
Dim lResult As Long
Dim lValueType As Long
Dim lBuf As Long
Dim lDataBufSize As Long
Dim r As Long
Dim keyhand As Long
r = RegOpenKey(Hkey, strPath, keyhand)
' Get length/data type
lDataBufSize = 4

lResult = RegQueryValueEx(keyhand, strValueName, 0&, lValueType, lBuf, lDataBufSize)
If lResult = ERROR_SUCCESS Then
If lValueType = REG_DWORD Then
Reg_Get_DWORD = lBuf
End If
'Else
' Call errlog("Reg_Get_DWORD-" & strPath, False)
End If
r = RegCloseKey(keyhand)

End Function
Public Function Reg_Delete_Key(ByVal Hkey As Long, ByVal strKey As String)
Dim r As Long
r = RegDeleteKey(Hkey, strKey)
End Function
Public Function Reg_Delete_Value(ByVal Hkey As Long, ByVal strPath As String, ByVal strValue As String)
Dim keyhand As Long
r = RegOpenKey(Hkey, strPath, keyhand)
r = RegDeleteValue(keyhand, strValue)
r = RegCloseKey(keyhand)
End Function

shahpari
سه شنبه 13 فروردین 1387, 22:24 عصر
دقیقا همین سئوال قبلا پرسیده شده

http://barnamenevis.org/forum/showthread.php?t=31104&highlight=ctrl

vahidm
سه شنبه 13 فروردین 1387, 23:08 عصر
سلام می دونید این لینکی که شما گذاشتید دقیقا جواب نمی ده
یعنی درسته سوال پرسیدن بعد یکی هم جواب داده
بعدش فهمیدن که این کدشون توی ویندوز Xp جواب نمی ده
یعنی در نهایت به جواب نرسیدن
ببخشید

__siavash__
سه شنبه 13 فروردین 1387, 23:47 عصر
همون طور که آقا محسن در بالا گفت باید یه کلید به نام DisableTaskMgr از نوع DWORD در مسیر مربوطه بسازی
که این کارو میتونی یا از طریق API های مربوط به ریجستری انجام بدی یا از طریق کد زیر
اما برای این منظور ساده ترین و کوتاهترین کد همینه که در واقع همون کلید رو به ریجستری اضافه میکنه !!!

برای غیر فعال کردن

Shell "REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Pol icies\System /v DisableTaskMgr /t REG_DWORD /d 1 /f", vbNormalFocus

برای فعال کردن


Shell "REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Pol icies\System /v DisableTaskMgr /t REG_DWORD /d 0 /f", vbNormalFocus


این کد ها در واقع دستورات خط فرمان هستند که با تابع Shell در ویژوال بیسیک ازشون استفاده میکنیم !

Mbt925
چهارشنبه 14 فروردین 1387, 14:08 عصر
یه روش اه دیگه هم برای این کار هست و اون اینه که بطور مداوم پنجره ی Task Manager رو چک کنید و به محض اینکه همچین پنجره ای پیدا کردید اونرو ببندید.

Mr'Jamshidy
چهارشنبه 14 فروردین 1387, 14:14 عصر
همون روش اول بهتره این یکی دردسر زیادی بوجود میاره

Mbt925
چهارشنبه 14 فروردین 1387, 14:27 عصر
دردسر خاصی نداره ، فقط حافظه ی بیشتری اشغال می کنه.

vahidm
چهارشنبه 14 فروردین 1387, 18:49 عصر
آقای مدیر تشکر این روشی که آقا سیاوش گفتن درست بود و قبلش هم شما گفته بودید
ولی صفحه پرامت داس رو یه لحظه باز می کنه و دوباره می بنده
اگر می دونید چی کارش باید بکنم راهنمایی کنید
با تشکر

Mr'Jamshidy
چهارشنبه 14 فروردین 1387, 18:55 عصر
آقای مدیر تشکر این روشی که آقا سیاوش گفتن درست بود و قبلش هم شما گفته بودید
ولی صفحه پرامت داس رو یه لحظه باز می کنه و دوباره می بنده
اگر می دونید چی کارش باید بکنم راهنمایی کنید
با تشکر

من یک جای دیگه هم اینو دیدم اما امتحان نکردم اما بنظرم باید یک پیغام Yes No بده که بنظرم کاربر مثلما Yes نمیکنه

vahidm
چهارشنبه 14 فروردین 1387, 20:06 عصر
سلام دوست عزیز
نه پیامی نمی ده فقط یه ثانیه پرامت داس میاد و میره همین

__siavash__
چهارشنبه 14 فروردین 1387, 20:15 عصر
علت اینکه اون پنجره ظاهر میشه برای اینه که WindowStyle روی حالت vbNormalFocus هست
توی این کد WindowStyle روی حالت vbHide هستش و دیگه اون پنجره ظاهر نمیشه !
غیر فعال کردن


Shell "REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Pol icies\System /v DisableTaskMgr /t REG_DWORD /d 1 /f", vbHide

فعال کردن


Shell "REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Pol icies\System /v DisableTaskMgr /t REG_DWORD /d 0 /f", vbHide

roomezonline
جمعه 11 مرداد 1387, 13:13 عصر
سلام از دوستان
کسی کد از کار انداختن کلیدهای نامبرده داره ؟

دوست عزیز سرچ کنید من قبلا به این سوال در تاپیک دیگه جواب دادم

click.1387
شنبه 12 مرداد 1387, 09:32 صبح
سلام
ببخشید به تاریخ تاپیک نگاه کنید و می بینید که مشکلشون رفع شده