Операционная система Microsoft Windows 3.1 для программиста -том 1


Интерфейс EasyWin - часть 5


if(ch == 'R' ch == 'r') { // Перезагрузка компьютера if(!ExitWindows(EW_REBOOTSYSTEM, 0)) { printf("Ошибка при завершении работы Windows"); } }

else if(ch == 'W' ch == 'w') { // Перезапуск Windows if(!ExitWindows(EW_RESTARTWINDOWS, 0)) { printf("Ошибка при завершении работы Windows"); } } else if(ch == 'N' ch == 'n') { // Временное завершение работы Windows, // запуск программы MS-DOS, затем // снова запуск Windows if(!ExitWindowsExec("g:\\nc\\nc.exe", NULL)) { printf("Ошибка при завершении работы Windows"); } } return 0; }

Это приложение содержит стандартную для Windows функцию WinMain. Для инициализации интерфейса EasyWin вызывается функция _InitEasyWin, описанная в файлах stdio.h, io.h, iostream.h:

void _Cdecl _InitEasyWin(void);

После вызова этой функции появляется окно и вы можете вызывать стандартные функции консольного ввода/вывода.

В качестве примера мы вызываем функцию GetWindowsDirectory, которая возвращает полный путь к каталогу, содержащему файлы операционной системы Windows:

UINT WINAPI GetWindowsDirectory(LPSTR lpszSysPath, UINT cbSysPath);

Параметр lpszSysPath является указателем на буфер, в который будет записан путь к каталогу Windows. Длина буфера должна быть не менее 144 символов, она задается параметром cbSysPath.

Функция GetWindowsDirectory возвращает длину строки записанной в буфер, без учета закрывающего строку двоичного нуля. Если вы не предусмотрели буфер достаточного размера, функция возвратит требуемый размер буфера. В случае ошибки возвращается нулевое значение.

Получив строку пути к каталогу Windows, приложение отображает его на экране и предлагает меню (рис. 8.5).

Рис. 8.5. Главное окно приложения EASYWIN3

В этом меню вам предлагается три возможности. Нажав клавишу <R>, вы сможете завершить работу Windows и перезагрузить компьютер. При этом будет выполнена загрузка MS-DOS.

Если вы нажмете клавишу <W>, произойдет перезапуск Windows без перезагрузки компьютера.

Если нажать клавишу <N>, работа Windows будет завершена и запустится Norton Commander (если он есть на диске вашего компьютера).


Начало  Назад  Вперед



Книжный магазин