Я разрабатываю то, что по сути является специализированным приложением брандмауэра. Решение должно быть совместимо с 32- и 64-разрядными версиями. Моя компания хочет сохранить текущий программный интерфейс, написанный на C#.
Мне нужно вот что: способ контролировать и манипулировать всем сетевым трафиком в системе. Мое исследование привело меня к мысли, что промежуточный драйвер NDIS (спецификация интерфейса сетевого драйвера) — это то, что нужно. Если я смогу написать такой драйвер на C#, отлично, но я не уверен, что это возможно. Как минимум мне нужен интерфейс на C# для драйвера, написанного на любом языке.
Я нашел отличный ресурс в Интернете для создания одного из серии статей, озаглавленных «Расширение промежуточного драйвера Microsoft PassThru NDIS»:
- Часть 1. Добавление интерфейса DeviceIoControl
- Часть 2. Два IP-адреса блокируют драйверы NDIS IM
- Часть 3. Поддержка 64-разрядной версии Windows XP
Однако он датирован (2003 г.). Прежде чем инвестировать в чтение и изучение того, что он должен сказать, я хочу убедиться, что не трачу свое время впустую.
Есть лучший способ сделать это? Существуют ли какие-либо проекты или статьи с открытым исходным кодом, которые объясняют процесс лучше, чем статьи выше? Я вообще на стадионе? Помоги пожалуйста.