Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.12.30;
Скачать: [xml.tar.bz2];

Вниз

Защита программ!!!   Найти похожие ветки 

 
Jiurasdg45   (2003-12-16 11:45) [0]

Здравствуйте.Вот такая проблема.Сделал программу и ее необходимо защитить.Изначально сделал алгоритм, который генерирует необходимый серийный номер из серийного номера жесткого диска компьютера.Но!Если компьютер подключен к локальной сети (а таких моих клиентов большинство), то программа выдает критическую ошибку, говоря что невозможно обнаружить этот серийный номер.Видимо, сетевая версия Windows блокирует эту функциу.А как сделать защиту?
Требование к защите:
1.Пользователь не должен иметь возможности скопировать программу на другой компьютер и работать с ней там
2.Желательно чтобы алгоритм не обращался к системным функциям Windows (реестру и.п.) так как в сетевом варианте там может стоять защита.
Помогите пожалуйста!


 
PVOzerski   (2003-12-16 11:54) [1]

http://delphibase.endimus.com/?action=viewfunc&topic=appprotect&id=10461


 
Digitman   (2003-12-16 11:55) [2]


> Требование к защите:
> 1.Пользователь не должен иметь возможности скопировать программу
> на другой компьютер и работать с ней там
> 2.Желательно чтобы алгоритм не обращался к системным функциям
> Windows (реестру и.п.) так как в сетевом варианте там может
> стоять защита.


1. В общем случае обеспечить ЭТО требование невозможно

2. Создай RCDATA-ресурс в своем EXE. В него в шифр.виде запиши некие уникальные параметры, определяемые тобой при инсталляции твоего ПО на ориг.компьютер. В ран-тайм считывай ресурс, расшифровывай сравнивай с тек.параметрами. Взлом такой защиты возможен лишь под отладчиком, а отладка/трассировка исп.кода - привелегия далеко не каждого пользователя, тем паче - рядового


 
Amoeba   (2003-12-16 12:11) [3]

Можно воспользоваться отныне бесплатной библиотекой OnGuard от TurboPower. Найдешь на SourceForge.
http://sourceforge.net/projects/tponguard/


 
Ivolg   (2003-12-16 12:34) [4]

Поппробуй так : procedure TForm1.Edit1Change(Sender: TObject);
begin
if edit1.Text="12" then
На месте этого текста пишешь процидуру которую надо выполнить
end;
эта вещь работает так: Если вписываешь пароль в едит ,а
сверяет вписываемый пароль с 12-это пароль! Есль вписываемый пароль равен 12, то процидура выполнится!


 
zapped   (2003-12-16 12:49) [5]

2Ivolg (16.12.03 12:34) [4]
крррасавчик!!!


 
pasha_golub   (2003-12-16 12:53) [6]

2Ivolg
Блин, оказывается все так просто. А мы тут головы ломаем, спасибо большое.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.12.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
3-99439
moyavital
2003-12-06 13:54
2003.12.30
Функция Lower в FireBird


6-99680
adv
2003-10-31 07:15
2003.12.30
Подключение к нескольким ресурсам LAN


14-99791
belyh
2003-12-05 14:20
2003.12.30
обмен опытом


1-99557
Intro
2003-12-17 23:42
2003.12.30
Как подключить принтер?


8-99659
VISA
2003-08-29 16:46
2003.12.30
Проиграть midi в фоновом режиме





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский