Учебное пособие: Файловая система

0, 0, rc.right, rc.bottom, hwnd, (HMENU)1, hInstance, NULL);

if (!IsWindow(hwndView)) {

// если окно просмотра создать не удалось, то завершаем приложение

// сообщивобошибке

MessageBox(NULL, "Cannot create viewer window!", NULL, MB_OK);

return FALSE;}

// для красоты используем моноширинный шрифт (подробнее см. GDI)

SetWindowFont(hwndView, GetStockObject(ANSI_FIXED_FONT), FALSE);

// функция SetWindowFont в документации не описана, это макрос, определяемый

// в windowsx.h Подробнее — см. исходный текст этого файла.

// запоминаем хендл окна просмотра в структуре описания главного окна

// (при регистрации класса надо зарезервировать 4 байта — что бы и в

// Windows API и в Win32 API использовать одинаковые значения и функции)

SetWindowLong(hwnd, 0, (LONG)hwndView);

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

// томов и устройств DOS. Для простоты создадим временный файл с заранее

// заданным именем c:\test.txt (строго говоря, надо было бы проверить наличие

// переменной TEMP или TMP, убедиться, что она указывает на корректный

// каталог - в жизни часто она указывает на несуществующий каталог, диск

// или даже на защищенный диск - всякое бывает - и создать файл там — но это

// все слишком громоздко для примера).

// 2. в этом файле мы соберем нужный текст, а затем разом передадим его окну

// просмотра, после чего файл удалим.

// 3. для работы с файлами используем функции Windows API, что бы сохранить

// переносимость между разными платформами

hf = _lcreat(tempfile, 0);

if (hf == HFILE_ERROR) {

// при ошибке - сообщаем и заканчиваем (окно просмотра будет уничтожено

// позже, приобработке WM_DESTROY

К-во Просмотров: 530
Бесплатно скачать Учебное пособие: Файловая система