Страница 8 из 30
Создание Главного окна Каждая базирующаяся на Win32 прикладная программа должна иметь функцию WinMain как свою точку входа. Функция WinMain выполняет ряд задач, включая регистрацию класса окна для главного окна и создание этого главного окна. Функция WinMain регистрирует класс главного окна, путем вызова функции RegisterClass, и создает главное окно, вызывая функцию CreateWindowEx. Проблема Мобильности Точка входа в программу не должна называться WinMain. Ваша функция WinMain может также ограничить вашу прикладную программу единственным экземпляром. Создайте именованный mutex-объект (объект-статист), используя функцию CreateMutex. Если функция GetLastError возвращает ERROR_ALREADY_EXISTS, другой образец вашей прикладной программы существует (он создан mutex-объектом), и Вы должны выйти из вашей WinMain. Windows автоматически не отображает на экране главное окно после его создания; чтобы отобразить его прикладная программа должна использовать функцию ShowWindow. После создания главного окна, функция прикладной программы WinMain вызывает ShowWindow, чтобы передать ей два параметра: дескриптор главного окна и флажок, определяющий, должно ли основное окно быть свернуто или развернуто, когда оно отображается в первый раз. Обычно, флажок может быть установлен для любой из констант, начинающихся SW_ префиксом. Однако, когда вызывается функция ShowWindow, чтобы показать главное окно прикладной программы, флажок должен быть установлен в SW_SHOWDEFAULT. Этот флажок сообщает, чтобы Windows отобразил окно как определено программой, которая запустила прикладную программу. Если окно создано как окно Уникода (Unicode), оно принимает только сообщения в Уникоде (Unicode). Чтобы определить, является ли окно - окном Уникода (Unicode), вызывается функция IsWindowUnicode. |