Тема: VB.NET: имитация асинхронного отслеживания событий WMI
Без гарантий. Используете на свой страх и риск
Небольшой код VB.NET предназначен для наблюдения за вставкой/извлечением диска в CDROM накопитель и основан на имитации асинхронного отслеживания событий WMI путем переноса синхронного обработчика в отдельный сепаратный поток с помощью класса BackGroundWorker, что разрешает существование графического управляющего интерфейса. События вставки/извлечения диска, подтверждаются соответствующими сообщениями выводимыми в список формы, а также записью в файл протокола. Чтобы начать наблюдение за CDROM, нажмите кнопку "Старт" на форме, чтобы завершить работу нажмите нажмите кнопку "Выход".
Данное решение пригодно в качестве "болванки" для создания кода имитирующего асинхронное отслеживание событий WMI для .NET путем включения синхронного обработчика в сепаратный поток.
Lang. VB.NET
NET Framework v2.0.50727
OC WinMe/XP
Чтобы получить исполняемый модуль (GUI приложение) откомпиллируйте файл cdasync.vb примерно следующей командой:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\vbc.exe C:\...\cdasync.vb /out:C:\...\cdasync.exe /target:winexe