Visual C для начинающих


Содержание


Введение
Введение - часть 2
Некоторые сведения о программировании Windows-приложений
Программная среда Windows
Программная среда Windows - часть 2
Программная среда Windows - часть 3
Основы программирования под Windows
Основы программирования под Windows - часть 2
Основы программирования под Windows - часть 3
Преимущества использования MFC
Обзор среды Microsoft Developer Studio
Библиотека MFC
Архитектура приложения
Каркас приложения
Каркас приложения - часть 2
Каркас приложений
Проект приложения
Использование средств разработки
Типы мастеров проектов
Типы мастеров проектов - часть 2
Преимущества мастеров проектов
Обзор возможностей ClassWizard
Имена, используемые в MFC
Имена, используемые в MFC - часть 2
Имена, используемые в MFC - часть 2
Первая программа на C++, типы данных и их размер
Первая программа на C++, типы данных и их размер - часть 2
Адресация в С++
Адресация в С++ - часть 2
Применение указателей в C++
Применение указателей в C++ - часть 2
Применение указателей в C++ - часть 2
Соглашение об именах
Соглашение об именах - часть 2
Структуры в С++
Структуры в С++ - часть 2
Структуры в С++ - часть 2
Классы в C++
Классы в C++ - часть 2
Классы в C++ - часть 3
Классы в C++ - часть 2
Пример использования MFC в Visual C++
Консольное приложение
Приложение типа Windows Application
Запись и считывание данных ( работа с файлами )
Работа с файлами в C ( работает и в C++ )
Работа с файлами с помощью MFC( классы CFile, CStdioFile, ) и стандартный класс MFC CFileDialog
Класс CFile
Класс CFile - часть 2
Класс CFile - часть 3
Класс CFile - часть 4
Класс CMemFile
Класс CMemFile - часть 2
Класс CStdioFile
Примеры записи и чтения из файла
Примеры записи и чтения из файла - часть 2
Использование таймера
Введение
Создание и уничтожение таймера
Создание и уничтожение таймера - часть 2
Сообщение WM_TIMER
Первый способ использования таймера
Второй способ использования таймера
Второй способ использования таймера - часть 2
Пример Windows-приложения, использующего таймер
Работа со стандартными ресурсами
Методы класса CButton
Методы класса CEdit
Методы класса CEdit - часть 2
Методы класса CListBox
Методы класса CComboBox
Методы класса CProgressCtrl
Методы класса CSliderCtrl
Методы класса CSpinButtonCtrl
Пример Windows-приложения, использующего стандартные ресурсы
Работа с библиотеками динамической компоновки (DLL)
Использование DLL
Библиотеки импортирования
Согласование интерфейсов
Загрузка неявно подключаемой DLL
Динамическая загрузка и выгрузка DLL
Динамическая загрузка и выгрузка DLL - часть 2
Пример обычной DLL и способов загрузки
Пример обычной DLL и способов загрузки - часть 2
Создание DLL
Функция DllMain
Экспортирование функций из DLL
Экспортирование классов
Память DLL
Полная компиляция DLL
DLL и MFC
Обычные MFC DLL
Динамические расширения MFC
Загрузка динамических расширений MFC
Экспортирование функций из динамических расширений
Стандартные диалоговые панели
Введение
Панель выбора цвета (класс CColorDialog)
Панель выбора цвета (класс CColorDialog) - часть 2
Панель выбора файлов (класс CFileDialog)
Панель выбора файлов (класс CFileDialog) - часть 2
Панель выбора файлов (класс CFileDialog) - часть 3
Панель выбора шрифта (класс CFontDialog)
Панель для вывода документов на печать (класс CPrintDialog)
Панель для выполнения поиска и замены (класс CFindReplaceDialog)
Пример Windows-приложения, использующего стандартные панели
Оптимизация вывода графики на экран - Стандартные диалоговые панели
Описание класса CView
Описание класса CView - часть 2
Объекты GDI
Объекты GDI - часть 2
GDI-атрибуты контекста устройства
Методы для рисования линий и фигур
Пример графической программы с оптимизацией
Создание собственных диалоговых окон
Создание собственных диалоговых окон - часть 2
Работа с WinSocket
Создание сервера
WSADATA WsaData; int err = WSAStartup
Int socket (domain, type, protocol) int domain; int type; int protocol;
SOCKADDR_IN sin; sinsin_family = AF_INET; sinsin_port = htons(); sinsin_addrs_addr = INADDR_ANY;
Struct SOCKADDR_IN { short sin_family; u_short sin_port; struct in_addr sin_addr; char sin_zero[; };
Struct in_addr { union { u_long
Int bind (s, addr, addrlen) int s; struct SOCKADDR_IN *addr; int addrlen;
Int listen (s, n) int s; int n;
SOCKADDR_IN from; int fromlen=sizeof(from); s= accept(s,(struct sockaddr*)&from, &fromlen);
Int accept (s, addr, p_addrlen) int s; struct sockaddr_in *addr; int *p_addrlen;
BYTE RecvBuffer[; while(recv(sRecvBuffer,sizeof(RecvBuffer),!=SOCKET_ERROR)
Int recv (s, buf, len, flags) int s; char *buf; int len; int flags;
Int send (s, buf, len, flags) int s; char *buf; int len; int flags;
Int closesocket(s) int s;
Создание клиента
SOCKADDR_IN anAddr; anAddrsin_family
Int connect (s, addr, addrlen) int s; struct sockaddr_in *addr; int addrlen;
Приложение
Struct hostent *gethostbyname (name) char *name;
Struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_lenght; char *h_addr; };
Int shutdown (s, how) int s; int how;
Простая программа, использующая MDI интерфейс
Создание проекта программы
Class CMDIDoc : public CDocument
Class CMDIView : public CView
BOOL CMDIDoc::OnNewDocument()
Class neme : CMDIView Object ID : CMDIView Message : OnInitialUpdate
Void CMDIView::OnInitialUpdate()
Void CMDIView::OnDraw(CDC* pDC)
Void CMDIDoc::Serialize(CArchive&
Void CMDIView::OnMybutton() {
Проигрывание Wave-файлов под MFC
Введение
Проигрывание Wave-файла в виде ресурса
Static void PlayResource(LPCTSTR
Проигрывание Wave-файла с диска
Пример проекта
Создание собственных ActiveX элементов
Создание собственных ActiveX элементов - часть 2
Void CMyClockCtrl::OnDraw( CDC*
Int CMyClockCtrl::OnCreate(LPCREATESTRUCT
Void CMyClockCtrl::OnTimer(UINT
Void CMyClockCtrl::OnDraw( CDC*



Начало