Форум: "Система";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];
ВнизКак узнать номер BIOS компа? Найти похожие ветки
← →
DiHLoS (2002-11-12 16:57) [0]Как узнать собственно сабж?
Буду благодарен.
← →
Marcus (2002-11-12 18:38) [1]В реестр надо лезть
Для НТ: HKLM\Hardware\Description\System параметры SystemBiosDate, SystemBiosVersion
Для 9х: HKLM\Enum\Root\*PNP0C01\0000, BIOSVersion, BIOSDate
← →
Roman Tokov (2002-11-12 18:59) [2]А как програмно?
← →
Marcus (2002-11-12 19:09) [3]> Roman Tokov
Reg := TRegistry.Create(KEY_READ);
Reg.RootKey := HKEY_LOCAL_MACHINE;
Reg.OpenKey("Hardware\Description\System", false);
BiosDate := Reg.ReadString("SystemBiosDate");
Програмней, по-моему, некуда :)))
← →
Алексей Ким (2002-11-12 22:07) [4]если имеется ввиду дата выхода биоса наверно можно так
...:=string(pchar(ptr($FFFF5)));
← →
jonik pegas (2002-11-13 10:00) [5]Алексей Ким
Наверное нельзя. Ето тебе не DOS.
← →
DC-AC (2002-11-13 12:22) [6]jonik pegas : данный код работает, но только под W9x.
А постановка задачи у автора некорректная изначально. Нет такого понятия "номер BIOS". Точнее он есть только на некоторых MB некоторых брэндов (Dell,COMPAQ и пр).
← →
DiHLoS (2002-11-13 13:49) [7]Ну версию и производителя BIOS я узнать могу.
Но есть же у нее серийный-то номер??? Как узнать?
Help, please....
← →
DC-AC (2002-11-13 14:16) [8]Серийный номер ЧЕГО ???
← →
DiHLoS (2002-11-13 14:54) [9]BIOSa, как например определяет SiSoft Sandra
← →
maxim2 (2002-11-13 15:33) [10]На формe положи Memo и Button
procedure TForm1.Button1Click(Sender: TObject);
begin
with Memo1.Lines do
begin
Add("MainBoardBiosName:"+^I+string(Pchar(Ptr($FE061))));
Add("MainBoardBiosCopyRight:"+^I+string(Pchar(Ptr($FE091))));
Add("MainBoardBiosDate:"+^I+string(Pchar(Ptr($FFFF5))));
Add("MainBoardBiosSerialNo:"+^I+string(Pchar(Ptr($FEC71))));
end;
end;
← →
DiHLoS (2002-11-13 16:45) [11]2 maxim2:
Огромное спасибо!!!
А то "Нет такого понятия "номер BIOS"...:-)
← →
Игорь Шевченко (2002-11-13 16:49) [12]maxim2 © (13.11.02 15:33)
Положил. Запустил. Получил Access Violation in Project1.exe, read of address 000FE061.
Тебе не стыдно ?
← →
DiHLoS (2002-11-13 17:25) [13]2 Игорь Шевченко
У меня пашет... и на еще 4-х на работе проверил -все ок:-)
← →
DC-AC (2002-11-14 10:15) [14]Ну если в вашем понимании СЕРИЙНЫЙ НОМЕР, который должен быть уникальным, абсолютно одинаков на MB одной партии (проверено на добром десятке матплат) - тогда я в Computer Hardware чайник c десятилетним стажем ;-)
← →
DC-AC (2002-11-14 10:20) [15]Да, и кстати, когда-то было подобное обсуждение на тему привязки программы ко всякого рода "серийным номерам" и была высказана хорошая мысль, ссылку на ветку искаль лениво, а вот цитату могу повторить.
-----------------------------------------------------------------
msts (06.09.02 11:05)
Если сможешь решить эту задачу (привязка программы к "рабочему месту") смело проси за это 10 000 000$ как ни как сотни фирм и десятки корпораций тратят на решение этой проблемы миллионы баксов и кстати абсолютный результат = 0 иначе ты бы не сидел на XP Professional и точно не юзал Delphi :(
но конечно есть относительный результат состовляющий 17% от абсолютного, но это так отступление (которое ты и так знаешь)
в общем возьми ручку и лист бумаги (так делают все матера :))- раздели его по полам линией с одной стороны опиши типовую конфигурацию "рабочего места" - установленного на него програмного и аппаратного обеспечения (если прога стоящая то и особенные требования найдутся) на другой половине опиши какие изменения (и какова их степень) приводит к тому что теперь это _другое_ рабочее место и есть основание заявить о необходимости переустановки проги в общем решил для себя - что
значит "запустили прогу на другом компе"
(в качестве источника я бы использовал глобальную таблицу атомов, если установленна винда)
далее определился бы с форматом хранения этой информации и способа интеграции в код программы для наибольшей зависимости (придется написать свой линковщик)(можно использовать java П-код и генерить на нем часть проги - выполнять в другом потоке исползуя какую нибудь JVM)
далее я бы применил нейронные сети (в частности распознования образов) для анализа этого описания - что позволяет сделать более мягкую проверку на изменения конфигурации, с каждым запуском нужно сохранять результат анализа то есть новую конфигурацию (получится как бы фотография компа с шумом - а твоя прога будет распозновать в ней тот комп на который ее поставили и если не узнает то заявить о переустановки, но комп стареет/изменяется но если эти изменения затронули 50 из 1000 атрибутов то это нормально иначе... ) при этом должно быть накопление (в разумных пределах) результатов анализа и переодической смены эталона с которым сравнивать - комп стареет а прога его узнает (как человек постоянно видящий другого не замечает изменений а стоит возникнуть перерыву - то уже нужно узнавать)
что дают нейронные сети (НС) - сложность трассировки (прямо скажем нихрена непонятно) интеграция в нее своего кода (полезного так сказать) достаточно проста в связи с компонентной архетиктурой делфы, так же можно сделать зависимость от степени узнования - степень ограничений на функциональность проги,
так как в НС нет прямых переходов - если иначе - то банальная замена инструкций не поможет крякеру, снимок проги из памяти тоже, знание НС "не дает нихрена" (Цой) , в общем полиморфная прога на критериях зависящих от конфигурации компа.
осталось защитить генератор НС - для этого система будет состоять из 3х частей
1 - программа установки - ПУ
2 - сама программа - П
3 - генератор НС - ГНС
клиенту высылается ПУ и П - она формирует предварительное описание (ПО) раб места - передает разработчику - на основе этого ПО - генератор формирует НС и высылает назад - ПУ вшивает НС в П (ну вариации на твое усмотрение), таким образом разработчику нужно защищать только ГНС
если НС имеет 1000 узлов/нейронов помноженных на 10 связей-синапсов и того 10 000 конструкций - если/иначе - крякеру будет грусно
а теперь представь на сколько должна быть стоящей твоя прога?
а с другой стороны можно потратить 5 месяцев - наваять ~ 35 000 строк кода в скомпиленном виде ~15кб - сделать компонент для дельфы и продать за выше указанную сумму какой нибудь корпорации
-----------------------------------------------------------------
← →
jonik pegas (2002-11-14 11:56) [16]Хм, под Win9х пашет. Под Win2k придется через сторонний драйвер но тоже можно.
p.s А из-за чего спор? Человек спросил про номер биоса, ему и ответили про номер версии БИОСА. Может человек биосописатель? :)
← →
DC-AC (2002-11-14 12:18) [17]Тогда ему скорее на http://www.rom.by , к Delphi это мало отношение имеет.
А давайте все дружно спросим уважаемого DiHLoS, ЧТО он пишет ;-)
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.541 c