Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 3320
Благодарности: 916

Профиль | Отправить PM | Цитировать


Drongo, воспользуемся вариантом с эмуляцией клавиатурного нажатия F5.

Что б программно нажать и отпустить F5 нужен следующий код
keybd_event(VK_F5, 0, 0, 0);
keybd_event(VK_F5, 0, KEYEVENTF_KEYUP, 0);


Что б найти нужное окно, которое требуется обновить, воспользуемся Win32 API функцией FindWindow(), а что б сделать его активным - SetForegroundWindow()
Например, отправляем программное нажатие F5 в окно с заголовком "Мой компьютер"
Код: Выделить весь код
#include <windows.h>
int main()
{
HWND SubjectWindow = FindWindowA(NULL,"Мой компьютер"); //Вместо NULL на первом параметре может быть явно указан класс окна, 
//в случаи "Моего компьютера" это CabinetWClass. Поможет установить класс API функция GetClassName
SetForegroundWindow(SubjectWindow);  //в паре с GetForegroundWindow которая указывает на активное окно

keybd_event(VK_F5, 0, 0, 0);
keybd_event(VK_F5, 0, KEYEVENTF_KEYUP, 0);

return 0;
}
Это не часть языка С\С++, а вызовы Windows API функций.
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:09, 23-03-2009 | #2