Случайно в исходниках одной программы нашел последнюю версию этого чуда. С помощью этой библиотеки можно напрямую работать с портами ввода-вывода, MSR (Model-Specific Register) шиной PCI и так далее.
Создатели — OpenLibSys.org в 2009 году отказались продолжать разработку и убрали все напоминания об этом продукте с своего сайта.
Но Вещь очень даже современная, поддерживаются все возможные версии ОС Windows:
[x86] 7/2008/Vista/2003/XP/2000/NT4/Me/98
[x64] 7/2008/Vista/2003/XP
То, что мне удалось найти: http://letitbit.net/download/64541.6668f763c01cc3bc9df3c2e0d11e/WinRing0.7z.html [ссылка умерла, изначальной найдено в eDonkey]
Здесь версии под x86 и x64, копирайты и мануал.
Переделал для себя под C++ Builder (новый lib файл и подправленный заголовок, только для x86): WinRing0_1.3.1.19_for_builder
Что в архиве:
- WinRing0.dll — сама библиотека
- WinRing0.h — подправленный заголовок для подключения к проекту
- WinRing0.lib — переделанная либа для подключения к проекту
- WinRing0.sys- драйвер
- WinRing0.vxd — драйвер
- COPYRIGHT.txt — копирайты
Подключал к проекту в 6м билдере, теперь в Embarcadero, тоже отлично работает.
Как пользоваться, запись в LPT порт:
//Запись
int status;
status = InitializeOls();
printf («Ols status: %d (1 = GOOD)\n», status);
status = GetDllStatus();
printf («DLL status: %d (0 = GOOD)\n», status);
WriteIoPortByte (0xC802, (unsigned char) 0xE0);//Чтение
byte inpbuf;
inpbuf = ReadIoPortByte (port);
Фаилы ненайдены. Поправьте линк.
Ссылки не работают
Нашел на одном из старых жестких дисков проект для билдера с этими файлами. Ссылку исправил.
Как можно связаться с админом сайта?
Оставив комментарий.