![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Привязка программы к компьютеру [D5, Win95/98]
Друпи © (2002-09-03 23:18:00)Ув. Мастера!!!
Мне надо мою програмку привязать к моему компу.
Причем так (по возможности), чтобы ее можно было привязать (лично мне) к другому компьютеру (или к примеру к моему же, после апгрейда ОС или железа).
Vladislav (2002-09-05 11:03:00) [21]getvolumeinformation вернет не серийный номер диска, а номер, который задается системой при форматировании диска. Переформать - и номер будет другой.
Gibbel (2002-09-05 11:02:00) [22]Лучше не нада... Подумай о бедных сисадминах)))
DC-AC (2002-09-05 10:29:00) [23]Да, Вы правы. ПОКА менять её (а точнее некоторую служебную информацию) могут немногие. Надо будет восполнить данный пробел :-) Ы ?
Gibbel (2002-09-05 10:03:00) [24]Посмотрите здесь:
http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q208048&
2 DC-AC: Покажи мне хоть одного _ПОЛЬЗОВАТЕЛЯ_, который будет менять прошивку ПЗУ харда ;-)
Anatoly Podgoretsky (2002-09-05 09:54:00) [25]Не придумывай, если только у тебя не был бренднейм от dell, compaq, HP
TCrash (2002-09-05 09:47:00) [26]2DC-AC
на 286х по какому-то адресу памяти(адрес не помню) содержалась 8ми байтовая константа (записать по этому адресу ничего не удавалось), уникальная для каждого компа. Проверялось на машинах абсолютно одинаковой конфигурации. Машин было ~10. Есть ли чего подобное в современных тачках - не уверен.
Роман Василенко (2002-09-05 09:44:00) [27]Забыл написать - sn1и sn2- оттуда надо получать серийный номер девайса, заданного в path
Роман Василенко (2002-09-05 09:42:00) [28]
procedure gethd(path:string; out sn1,sn2:word);
var
snb,vnb:pchar;
fsf,mcl:cardinal;
drv:string;
sn:array[0..1] of word;
begin
vnb:=stralloc(250);
snb:=stralloc(250);
drv:=includetrailingbackslash(extractfiledrive(path));
if getvolumeinformation(pchar(drv),vnb,250,@sn,mcl,fsf,snb,250) then begin
sn1:=sn[0];
sn2:=sn[1];
end else begin
sn1:=-1;
sn2:=-1;
end;
strdispose(vnb);
strdispose(snb);
end;
В качестве параметра pathможешь задавать что угодно: от "c:\" до... ну не знаю, что в голову придет.
Если процедурка возвращает -1- значит ты где-то ошибся.
Самый здравый вариант - привязываться именно к номеру винчестера. Представь себе, невинный юзер совершил апгрейд мамы (ну, или саунд поменял) а твоё нетленное на него бочку пушит...
й (2002-09-05 09:31:00) [29]
Anatoly Podgoretsky (2002-09-05 09:14:00) [30]Достаточно инсталляции и серийного номера для пользователя с привязкой привязкой к серийному номеру тома и тогда он сможет переинсталлировать при необходимости или из за любых причин.
Но если ты не доверяешь пользователю, то ты должен сам инсталлировать программу на его компьютере, устанавливая при необходимости дополнительное оборудование.
DC-AC (2002-09-05 09:02:00) [31]"присваиваться железно" - это как ? Он в EEPROM (или служебку, сейчас уже не помню) прописывается. А что один прописал, другой завсегда сменить может :-) Не верите - приходите, покажу ;-)
Друпи (2002-09-05 08:40:00) [32]2DC-AC
Как это "сменить серийный" - он типа на заводе должен присваиваться железно.
DC-AC (2002-09-05 07:05:00) [33]Узнать-то можно, а как же это "после апгрейда ОС или железа" ? Винт - не железо что ли ? Он самый настоящий HARD disk :-)
И потом, сменить серийный номер винта - лично мне очень легко. Хоть 00000000 запишу. Не знаю как вам.
Друпи (2002-09-04 20:34:00) [34]Может как-нибудь програмvно узнавать серийный номер винта и привязываться к нему. Но как его узнать?
DC-AC (2002-09-04 11:24:00) [35]"Серийный номер материнской платы" - стесняюсь спросить ЭТО ЧТО ?
TCrash (2002-09-04 10:42:00) [36]Еще на 286х я делад прогу на паскале, которая запрашивала пароль при переносе на другую тачку. Привязывалась к серийному номеру материнской платы. Если не ошибаюсь - 8 байт (уже не помню). При вводе корректного пароля правилась константа в .exe (прямо в программе), которая и содержала серийный номер. На современных материнках есть ли такое - не знаю. Мож кто подскажет, как добраться до номера. Тогда добирался через реек(адрес).
DC-AC (2002-09-04 07:21:00) [37]Аппаратные ключи (COM, LPT, USB).