) {("beeper.sys", sizeof acDriverPath, acDriverPath, NULL);
// реєстрація програвача в таблиці диспетчера SCManager = CreateService (hSCManager, "beeper11", "Nice Melody 0, NULL);
// Видаляємо запис про драйвер (hService); (hService);
} else MessageBox (NULL, "Can't register driver", NULL, MB_ICONSTOP); (hSCManager);
} else MessageBox (NULL, "Can't connect to SCManager", NULL, MB_ICONSTOP); 0;
}
Лістинг beeper.sys
# include
# define TIMER_FREQUENCY 1193167// 1,193,167 Hz
# define PITCH_C 523// 523,25 Hz
# define PITCH_Cs 554// 554,37 Hz
# define PITCH_D 587// 587,33 Hz
# define PITCH_Ds 622// 622,25 Hz
# define PITCH_E 659// 659,25 Hz
# define PITCH_F 698// 698,46 Hz
# define PITCH_Fs 740// 739,99 Hz
# define PITCH_G 784// 783,99 Hz
# define PITCH_Gs 831// 830,61 Hz
# define PITCH_A 880// 880,00 Hz
# define PITCH_As 988// 987,77 HzDO_DELAY (int time) {i, j; (i = 0; i <= time * 0xfffff; i + +) {}
} DO_BIG_DELAY (int time) {_DELAY (2 * time);
} Xylophone (int nPitch) {nTone = TIMER_FREQUENCY/nPitch
_asm {al, 10110110b ;//запис керуючого слова в 43h43h, al ;//Канал управління звуком - логічна схема, що використовує тональний сигнал таймера і програмно-керовані біти системного портаeax, nTone ;//запис перерахованої частоти в 4242h, al ;//старша частьal, ah ;//молодша часть42h, alal, 61h ;//зміна керуючої послідовності - перетворення останніх бітів в одиниці
;//біт 0 - дозвіл використання спікера
;//біт 1 - дозвіл підключення таймер-2 до спікеруal, 00000011b; speaker ON61h, al
} _DELAY (0x7f);
_asm {al, 61hal, 11111100b; speaker OFF61h, al
}
} DriverEntry (IN PDRIVER_OBJECT pDriverObject, IN PUNICODE_STRING pusRegistryPath) {(PITCH_C); (PITCH_С); (PITC H_С); (PITCH_С); (PITCH_С); (PITCH_С); (PITCH_С); STATUS_DEVICE_CONFIGURATION_ERROR;
}
2.2 Крок 2
Розробити драйвер віртуального пристрою, що дозволяє виконувати дії, доступні тільки на нульовому рівні привілеїв (у відповідності з варіантом), а потім передавати результати в додаток на 3 рівень привілеїв для виведення їх на екран.
У додатку виводимо результат в стандартне вікно Windows.
№ Заданіе7Определіть наявність і тип дисковода А: і вивести в ста...