C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  Update World C++: Сборник GPL QT исходников
  Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Нетология

 3 - GetMenu / Win 32 API / Win32 API

Шаг 3 - GetMenu

То, что мы умеем получать HWND окна дарит нам большую власть над этим окном. Теперь имея HWND мы получим доступ к меню окна, например, Калькулятор, который есть в стандартной поставке Windows.

Итак, создаем проект Win32 Console, как Hello Word с именем Getmenu. Вот код.

// Getmenu.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "windows.h"
#include "iostream.h"

void main()
{
  HWND hwnd;
  hwnd=FindWindow("SciCalc","Калькулятор");
  if (hwnd!=NULL) 
  {
	  HMENU hMenu;
	  hMenu=GetMenu(hwnd);
	  if (hMenu!=NULL)
	  {
		  int iCount;
		  iCount=GetMenuItemCount(hMenu);
		  cout << "Menu Item - " << iCount << endl;
	  }
	  else cout << " Error Loading Menu" << endl;
  }
  else cout << " Error Find Windows" << endl;

}

Как всегда я ищу окно с помошью FindWindow указывая класс окна и имя окна. Где я их взял ? В SPY смотрите сами.

3.gif (4564 b)

Имея HWND мы можем добраться до меню. Для этого есть GetMenu. Если он не NULL, то тут я могу повеселиться на славу. Например, получить количество пунктов GetMenuItemCount. По секрету я могу получать названия, удалять и вставлять свои пункты меню в чужую программу :-)))

Испытавая программу незабудьте запустить калькулятор, а то будете писать письма...


Загрузить проект | | |
Автор Каев Артем.
[AD]





Letyshops [lifetime]