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++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Как делали MFC - Прячем WinMain / Как делали MFC / Visual C++

Как делали MFC - Прячем WinMain

Пора нам спрятать WinMain. Мы его перенесем в класс CWinApp. Без шума и лишних объявлений.

//////////////////////////////////////////////////////////////////////
// Function
//////////////////////////////////////////////////////////////////////
int CWinApp::Run()
{
return 0;
}

CWinApp* AfxGetApp()
{	
	return afxCurrentWinApp;
}

int PASCAL WinMain (HINSTANCE hInst,HINSTANCE hPrev, LPSTR pszCmdLine, int nCmdShow) 
{	
	return AfxGetApp()->Run(); 
}

Компилируйте проект. А вот теперь переключайте в TestMyLib и мы изменим код. WinMain там уже не нужна. У нас же есть одна. А она всегда глобальная и в единственном числе должна быть.

gif/3_1.gif (3821 b)

Вот новый код.

// TestMyLib.cpp : Defines the entry point for the application.
//

#include "stdafx.h"
#include "HMFC\\WinApp.h"

#pragma comment(lib,"HMFC\\Debug\\HMFC.lib")   // там наш код библиотеки


class CMyApp : public CWinApp
{

};

CMyApp CApp;

Вот так практически как в MFC. Для того, чтобы посмотреть, что происходит при запуске программы давайте запустим отладку по шагам. Жмите F10.

gif/3_2.gif (3292 b)

Естественно вызовется WinMain, в которой написано как видите текущий класс вызвать Run. Если пойти дальше, то можно увидеть что это за текущий класс. А это наш класс. Который мы породили.

gif/3_3.gif (5448 b)


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