Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: hWnd диспетчера... Добавлено: 26.12.03 15:25  

Автор вопроса:  AV | Web-сайт: www.av.folder-pro.net
Перепробовал все, какие были, примеры по нахождению hWnd процесса по заголовку окна, но возникла такая проблема: ни один пример не хочет находить хэндл "Диспетчера задач Windows" в XP, все время возвращается 0. Если бы можно было узнать hWnd этого процесса, то, думаю, без проблем можно было бы реализовать блокировку клавиш Ctrl-Alt-Del в XP, например, при открытии окна диспетчера, сразу же убивать его процесс.

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Malyav



ICQ: 8440085 

Вопросов: 15
Ответов: 117
 Web-сайт: malyav.narod.ru
 Профиль | | #1
Добавлено: 26.12.03 15:44

У меня почему-то получилось. Использовал вот что.

В модуле

 

Option Explicit

Declare Function CreateDC& Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, ByVal lpInitData As Any)

Declare Function DeleteDC& Lib "gdi32" (ByVal hdc As Long)

Declare Function SetWindowPos& Lib "user32" (ByVal Hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)

Declare Function GetWindowRect& Lib "user32" (ByVal Hwnd As Long, lpRect As RECT)

Declare Function IsWindow& Lib "user32" (ByVal Hwnd As Long)

Declare Function BitBlt& Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long)

Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal Hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long

Public Declare Function GetWindowTextLength Lib "user32.dll" Alias "GetWindowTextLengthA" (ByVal Hwnd As Long) As Long

Public Declare Function GetClassName& Lib "user32" Alias "GetClassNameA" (ByVal Hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long)

Public Declare Function SendMessageByNum& Lib "user32" Alias "SendMessageA" (ByVal Hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)

Public Declare Function SendMessageByString Lib "user32" Alias "SendMessageA" (ByVal Hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long

Declare Function GetPixel Lib "gdi32.dll" (ByVal hdc As Long, ByVal nXPos As Long, ByVal nYPos As Long) As Long

Declare Function ShowWindow Lib "user32.dll" (ByVal Hwnd As Long, ByVal nCmdShow As Long) As Long

Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As Any, ByVal lpWindowName As Any) As Long

Declare Function FindWindowEx Lib "user32.dll" Alias "FindWindowExA" (ByVal hwndParent As Long, ByVal hwndChildAfter As Long, ByVal lpszClass As Any, ByVal lpszWindow As Any) As Long

 

Public Type RECT

 Left As Long

 Top As Long

 Right As Long

 Bottom As Long

End Type

 

Public Const WM_GETTEXTLENGTH = &HE

Public Const WM_GETTEXT = &HD

 

Public Const SW_HIDE = 0

Номер ответа: 2
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #2
Добавлено: 27.12.03 16:04
Попробуй с помощью Spy++ найти это окно и посмотреть имя класса окна.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам