Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Завершение работы Internet Explorer c помощью VB6 
:(
    Опции темы
morgot
Дата 23.3.2007, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 30.10.2006

Репутация: нет
Всего: нет



Необходимо завершение работы Internet Explorer c помощью VB6.
Пробовал такой код:

Код

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long 'поиск открытого окна
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal Msg As Long, wParam As Any, lParam As Any) As Long
Const WM_CLOSE = &H10 'для отключения пользовательских процессов
Const WM_SYSCOMMAND = &H10 'для оключения диспетчера задач

Dim WinIE As Long 'для Internet Explorer
WinIE = FindWindow("IEFrame", vbNullString)
  If WinIE <> 0 Then SendMessage WinQK, WM_CLOSE, 0, 0
или
  If WinIE <> 0 Then SendMessage WinIE, WM_SYSCOMMAND, WM_CLOSE, 0


не сработало, хотя открытое окно IE успешно отслеживается, а другие программы, вроде Counter Strike без проблем завершаются.

Если кто может помочь - пожалуйста, помогите. Заранее спасибо.
PM MAIL   Вверх
Akina
Дата 23.3.2007, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



IE - это по сути многоуровневое приложение... и закрывать надо не окно, а процесс ядра IE.

в VBS это выглядит так:

Код

for each Process in GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery ("select * from Win32_Process where Name='Iexplore.exe'")
   Process.Shutdown (0)
Next




--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
XPurple
Дата 28.3.2007, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 4.5.2006
Где: Челябинск

Репутация: 1
Всего: 1



Akina, 
Чего то в Vbs- не работает.
Пишет, что неподдерживаемый метод Process.Shutdown
--------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего.  Не помню, кто сказал, может быть, я   (с) 
PM MAIL   Вверх
Akina
Дата 28.3.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Я понимаю, что, получив идею, лень вникать в частности... 
Код

Dim Process
Dim Processes
Set Processes = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery ("select * from Win32_Process where Name='Iexplore.exe'")
for each Process in Processes
   Process.Terminate(0)
Next



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Tectoder
Дата 28.3.2007, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 202
Регистрация: 13.3.2007

Репутация: нет
Всего: 8



morgot, и еще, WM_CLOSE это сообщение для сворачивания окна. Для закрытия есть сообщение WM_DESTROY. А еще лучше использовать DestroyWindow. Но это все, разумеется, закрывает только окно, но не процесс
PM   Вверх
morgot
Дата 3.4.2007, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 30.10.2006

Репутация: нет
Всего: нет



Большое спасибо, помогло. Но появился такой вопрос: где можно найти учебное описание подобных команд, чтобы, если опять столкнусь с подобной задачей, не лазить лишний раз на форум, а разобраться самому? В обычных книгах по VB я подобного не встречал. 
PM MAIL   Вверх
Akina
Дата 3.4.2007, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



MSDN.Microsoft.Com


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0473 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.