Форум: "Прочее";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];
ВнизПолучение уникального кода компьютера... Найти похожие ветки
← →
Mr.Devil © (2006-09-04 00:51) [0]Не подскажите как? :)
← →
DrPass © (2006-09-04 00:57) [1]Взять серийный номер процессора, материнки, модулей памяти, корпуса, винта, видеокарты и мышки и составить из них строку
← →
Cyrax © (2006-09-04 01:00) [2]Забыл про коврик (если дрова стоят...)
← →
default © (2006-09-04 01:05) [3]уникальный код = функция(первое в чём могут различаться компьютеры, второе в чём могут различаться компьютеры, ...., последнее (рассматриваемое) в чём могут различаться компьютеры)
← →
Cyrax © (2006-09-04 01:13) [4]А как её скомпилить ?
← →
default © (2006-09-04 01:14) [5]Cyrax © (04.09.06 01:13) [4]
скомпилить дело последнее
главное написать
← →
Джо © (2006-09-04 01:17) [6]> [4] Cyrax © (04.09.06 01:13)
> А как её скомпилить ?
Ctrl-F9, хотя, конечно, [5] :)
← →
Cyrax © (2006-09-04 01:20) [7]У меня синтаксическая ошибка на "=" ... может, gcc попробовать...
← →
default © (2006-09-04 01:22) [8]Cyrax © (04.09.06 01:20) [7]
если ты пытаешься это скомпилить, то это не синтаксическая ошибка, а ошибка времени выполнения и не программы, а твоего головного мозга:)
← →
Ketmar © (2006-09-04 01:25) [9]> [7] Cyrax © (04.09.06 01:20)
PL/1. говорят, он и не такое мог скомпилять.
← →
Mr.Devil © (2006-09-04 01:31) [10]
> DrPass © (04.09.06 00:57) [1]
> Взять серийный номер процессора, материнки, модулей памяти,
> корпуса, винта, видеокарты и мышки и составить из них строку
Во-первых не у каждого процессора и т.д. есть серийный номер, во-вторых как же узнать серийный номер хотя бы веника? Он же ж гад не даецца... винда не пускает залезть напрямую в порты... :(
← →
Джо © (2006-09-04 01:35) [11]> Он же ж гад не даецца... винда не пускает залезть напрямую
> в порты... :(
Этого и не требуется.
← →
Mr.Devil © (2006-09-04 01:35) [12]А че же тогда делать?
← →
Джо © (2006-09-04 01:36) [13]> [12] Mr.Devil © (04.09.06 01:35)
> А че же тогда делать?
Выпить, например. :)
← →
Ketmar © (2006-09-04 01:37) [14]> [10] Mr.Devil © (04.09.06 01:31)
не надо в порты веники пихать. вениками подметают. а серийные номера надо искать где-то на ручке, наверное...
← →
Mr.Devil © (2006-09-04 01:38) [15]:) острите....
← →
default © (2006-09-04 01:39) [16]а зачем требуется уникальный код компьютера?
← →
DrPass © (2006-09-04 01:41) [17]
> Mr.Devil © (04.09.06 01:31) [10]
> Во-первых не у каждого процессора и т.д. есть серийный номер
У каждого. Только не всегда добывается программным путем, иногда нужно и под кулер заглянуть...
:)
А вообще да, острим :)
← →
Ketmar © (2006-09-04 01:41) [18]> [15] Mr.Devil © (04.09.06 01:38)
нет. натурально не понимаю связи между веником и портами.
← →
Mr.Devil © (2006-09-04 01:41) [19]Программу от копирования защитить...
← →
DrPass © (2006-09-04 01:45) [20]
> Программу от копирования защитить...
Это что ж ты такого достойного напрограммировал, что пользователь готов будет стерпеть привязку программы к железу? Я, например, даже у Windows не терплю активацию. Хоть и лицензионная, а все равно ломаю креком... больше мне делать нечего, как звонить в Микрософт после очередного апгрейда.
← →
Mr.Devil © (2006-09-04 01:46) [21]
> Ketmar © (04.09.06 01:41) [18]
Видишь вот такой вот код не работает в NT:
{$IFDEF Windows}
uses WinCrt;
{$ENDIF}
var
InfoArray : array[0..255] of word;
IdeInfo : record
Config : word;
CylsTotal : word;
Unused : word;
HeadTotal : word;
BPT : word;
BPS : word;
SPT : word;
Vendor : array[0..2] of word;
Serial : array[1..20] of char;
BufType : Word;
BufSize : Word;
ECC : Word;
Revision : array[1..8] of char;
Model : array[1..40] of char;
end absolute InfoArray;
Count : byte;
i : byte;
begin
writeln("Информация о дисководах IDE:"^M^J);
{$IFDEF WINDOWS}
for count := 1 to mem[ $0040:$0075] do begin
{$ELSE}
for count := 1 to mem[Seg0040:$0075] do begin
{$ENDIF}
FillChar(InfoArray, SizeOf(InfoArray), 0);
{Проверить готовность}
while (port[$1F7] and $80<>0) do ;
{Запретить прерывания}
port[$3f6] := 2;
port[$1f6] := $A0 + ((count-1) shl 4);
port[$1f7] := $EC;
{Проверить готовность}
while (port[$1F7] and $80<>0) do ;
{Получить информацию}
for i := 0 to 255 do InfoArray[i] := swap(portw[$1F0]);
{Hапечатaть информацию}
writeln("Информация о физическом диске ",count-1,^M^J);
with IdeInfo do begin
writeln("Емкость неформатированная :", 9.5367431641E-7* {1/2^20}
swap(BPT)*swap(CylsTotal)*swap(HeadTotal):5:0, "Mb");
writeln("Емкость форматированная :",
longint(swap(SPT))*swap(CylsTotal)*swap(HeadTotal) div 2048:5, "Mb");
writeln("Число цилиндров :", swap(CylsTotal):7);
writeln("Число головок :", swap(HeadTotal):7);
writeln("Число секторов на дорожку :", swap(SPT):7);
writeln("Число байт на дорожку* :", swap(BPT):7);
writeln("Число байт на сектор* :", swap(BPS):7);
writeln("Размер буфера :", swap(BufSize):7);
writeln("Код ECC :", swap(ECC):7);
writeln(" * -- неформатированная емкость", ^M^J);
writeln("Серийный номер :", serial);
writeln("Версия :",revision);
writeln("Модель :",model);
end;
write("Hажмите любую клавишу...");
{$IFDEF WINDOWS}
readkey;
{$ELSE}
asm xor ah,ah ; int 16h end;
{$ENDIF}
writeln(^M^J);
end;
end.
← →
Mr.Devil © (2006-09-04 01:49) [22]
> DrPass © (04.09.06 01:45) [20]
Видишь ли.. там такой пользователь, что он все стерпит.. т.к. выбора у него нет )) Это конфигурация к 1С
← →
default © (2006-09-04 01:50) [23]Mr.Devil © (04.09.06 01:46) [21]
это код не под винду:)
← →
Mr.Devil © (2006-09-04 01:51) [24]
> default © (04.09.06 01:50) [23]
Это под 3.11 :)
← →
Германн © (2006-09-04 01:53) [25]
> Mr.Devil © (04.09.06 01:46) [21]
>
>
> > Ketmar © (04.09.06 01:41) [18]
>
> Видишь вот такой вот код не работает в NT:
Так ведь это тебе Ketmar и сказал! В Ketmar © (04.09.06 01:37) [14].
Чем же ты недоволен?
← →
Ketmar © (2006-09-04 01:54) [26]> [21] Mr.Devil © (04.09.06 01:46)
ну и не работает. а где тут веник прошёлся? я лично знаю венику только одно достойное применение -- полы подметать.
← →
default © (2006-09-04 02:00) [27]Mr.Devil © (04.09.06 01:51) [24]
ну так тебе же надо, чтобы под NT пахало
ищи соотв-ие Win32 API функции
в факах смотри, поисковиках
← →
Mr.Devil © (2006-09-04 02:14) [28]
> default © (04.09.06 02:00) [27]
Нашел только GetVolumeInformation...
← →
Mr.Devil © (2006-09-04 02:15) [29]
> default © (04.09.06 02:00) [27]
Нашел только GetVolumeInformation... но это дает только с/н раздела на венике, который меняется при переформатировании..
← →
Alex Konshin © (2006-09-04 02:18) [30]Зайди ко мне на сайт, указанный в анкете.
← →
Германн © (2006-09-04 02:25) [31]
> Alex Konshin © (04.09.06 02:18) [30]
>
> Зайди ко мне на сайт, указанный в анкете.
>
Наверно стоит как-то разместить на Мастаках ссылки на сайты некоторых Мастаков. Ну сколько же раз нужно в ответах указывать адреса сайтов АП, ИШ, AKonshin и т.п. Хотя "умного" совета я не придумал. :-(
← →
Mr.Devil © (2006-09-04 02:27) [32]
> Alex Konshin © (04.09.06 02:18) [30]
> Зайди ко мне на сайт, указанный в анкете.
Спасибо.. :)
← →
vidiv © (2006-09-04 03:23) [33]Вот у людей, допустим, бизнес... Вот, допустим, купили твою конфигурацию - работают, дела хорошо идут. И тут случайно перегарает процессор. Дела останавливаются, проводятся срочные меры по ремонту. В итоге Администратор молодец, за пару часов успел уже и в магазине новый купить, а что дальше? Активация по-новой? Еще часы, или дни ожиданий?
← →
Mr.Devil © (2006-09-04 03:36) [34]А дальше звонят по телефону (или пишут е-маил), называт (или пишут) мне код компа и я говорю (или высылаю) новый код активации.... все просто
← →
Don Nikola © (2006-09-04 05:33) [35]2Mr.Devil:
Тупиковая ветвь развития :( Проверено на людях. Возможны частые апгрейды, при большом количестве клиентов устанешь к телефону подходить, возможны непреднамеренные софтовые изменения сведений сторонними программами или настройками биоса, контора-разработчик может закрыться. Вообще по-уму стоило бы делать автоматическую деактивацию защиты скажем через 3-5 лет после выпуска продукта, так наверняка найдется какой-нибудь кульзизоп который будет время переставлять.
Хорошо тем у кого программа должна для работы в инете находиться, тот же reget взять, а если программа попала во владения пользователя, то все защиты мрут или программа не юзабельна из-за навешанных защит. Еще здорово тем у кого программа должна общаться с внешним девайсом, имеется ввиду не ключ, а базовый девайс интерфейс к которому программа предоставляет, во-первых девайс не "скопируешь", а во-вторых защиту можно в протокол воткнуть.
← →
TUser © (2006-09-04 08:32) [36]Предлагаю автору рендомом генерить уникальный номер. И сохранять его в темных закоулках реестра, чтобы во второй раз выдавался тот же самый.
← →
DVM © (2006-09-04 12:09) [37]
> И сохранять его в темных закоулках реестра, чтобы во второй
> раз выдавался тот же самый.
RegMonitor отменили?
← →
Furyz © (2006-09-04 17:32) [38]можно через макадресс
← →
Anatoly Podgoretsky © (2006-09-04 21:34) [39]Mr.Devil © (04.09.06 03:36) [34]
Ну да, а автор на канары уехал или забил на программирование или начинает деньги вымогать и это или можно продолжить. А бизнес страдает, из-за таких озабоченных на голову программистов.
Сервис активации тебе явно не под силу организовать.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.045 c