Защита программ

  • Автор темы Автор темы Guest_
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest_

Подскажите, как защитмть программу от перезаписи.
Это должно быть чтото типа кода активации.
 
От чего защитить? От перезаписи? Это как?
Вообще рекомендую воспользоваться чем-либо готовым - HardKey, Armadillo, AsProtect.
 
Привязывай прогу к оборудованию, к примеру к номеру логического диска.
 
А если сменят диск?
И второе а как самому написать код?
 
А если сменят диск?
А если сменят компьютер? В любом случае, чтобы защитить прогу от перезаписи нужно привязываться к конкретной машине, а если пользователь захочет сменить машину или железо в машине, то придется обращаться к автору проги.
Ну можно еще прогу распространять на CD, а CD защищать от перезаписи, но тут свои сложности :ph34r:.
Еще вариант хасп-ключ - запрограммированный микроконтроллер, втыкающийся в какой нибудь порт компьютера и выполняющий часть функций программы.
И второе а как самому написать код?
Для определения номера логического диска юзай функцию GetVolumeInformation.
Короче если сам не сможешь, могу помочь, естественно за умеренную плату.
 
Подскажите, скачал AsProtect зашифровал .exe а он открываться нехочес пишет ,что" не могу открыть".Как быть?
 
ну если лень связываться с саппортом, то забить, и пробовать следующий.
 
Для: Guest_сергей_*

Конечно не хочет ... ему же ключ надо для расшифровки закриптованных кусков...
 
Для: Barmutik: ну привет, а триал как работать будет? Тем более простая обертка в триале Аспа код не шифрует, если мне не изменяет склероз - там надо в исходники маркеры ставить.
Тут явно проблема с совместимостью.
 
Как не шифрует .. шифрует ..

У нас например Триал активируется через инет ... ну в смысле ключ для раскриптовки из инета получает ...

А если что бы совсем без ключа .. так мы просто включаем ключ (универсальный не зависящий от конфигурации) в тело программы и при первом запуске пишем его в реестр и потом уже запускаемся полностью что бы Солодлвников мог себя расшифровать...

Хотя всех возможностей его(АСПРА) мы не используем ...
 
не, я о другом - у человека есть триал Аспра. Он этим триалом оборачивает программу без каких-либо других действий. Программа не запускается. Надо, конечно, посмотреть на сообщение - оно системное или Аспра (может он такие настройки сам дал), но если это системное сообщение - налицо несовместимость. Что с не-свежими версиями не редкость, кстати. А свежие - только после покупки :P

И кстати, без использования шифрования кода - т.е. разделения из исходников что работает всегда, а что только в зарегистр. версии, обертка Аспра отламывается на раз. Может в SKE что и поменяли.
 
Ааа... значит я не понял вопроса ...

Ну по мне (как не крупному специалисту) кажется что АСПР достаточно нормальная защита .. сломать конечно можно всё .. но .. тут хоть повозится надо ...
 
Судя по окну ошибка исходит из самой программы. Я уже запарился с ней бится, всё вроде бы нормально, доходиш до раздела ЗАШИФРОВАТЬ нажимаеш кнопку, пишет, что всё зашифровано, а открываеш программу пишет банан. Может криво стоит может ещё что? Незнаю.
 
<!--QuoteBegin-zubr+12:02:2006, 10:11 -->
<span class="vbquote">(zubr @ 12:02:2006, 10:11 )</span><!--QuoteEBegin-->Для определения номера логического диска юзай функцию GetVolumeInformation.
[snapback]30494" rel="nofollow" target="_blank[/snapback]​
[/quote]
Как-то она у меня странно работает: пишу её в начале процедуры - возвращает одно, помещаю перед ней ещё пару строк кода - уже совсем другой результат.
 
Как-то она у меня странно работает: пишу её в начале процедуры - возвращает одно, помещаю перед ней ещё пару строк кода - уже совсем другой результат.
Код в студию.
 
Код:
 GetVolumeInformation(PChar('C:\'), nil, 0, P, a, a, nil, 0);
f := IntToStr(P^);
вызывает ошибку класса EAccessViolation, в то время как
Код:
 GetVolumeInformation(PChar('C:\'), nil, 0, P, a, a, nil, 0);
Label1.Caption := IntToStr(P^);
работает. Почему? И как тогда присвоить серийник переменной
 
Вот работающий код на Delphi:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 VolumeName,
   FileSystemName: array[0..MAX_PATH - 1] of Char;
 VolumeSerialNo: DWord;
 MaxComponentLength,
   FileSystemFlags: cardinal;
 s:string;
begin
s:=Edit1.Text+':\';//Сюда вводим букву диска
GetVolumeInformation(PChar(s), VolumeName, MAX_PATH, @VolumeSerialNo,
   MaxComponentLength, FileSystemFlags,
   FileSystemName, MAX_PATH);
 Memo1.Lines.Add('VName = ' + VolumeName);
 Memo1.Lines.Add('SerialNo = $' + IntToHex(VolumeSerialNo, 8));
 Memo1.Lines.Add('CompLen = ' + IntToStr(MaxComponentLength));
 Memo1.Lines.Add('Flags = $' + IntToHex(FileSystemFlags, 4));
 Memo1.Lines.Add('FSName = ' + FileSystemName);
end;
 
<!--QuoteBegin-Guest_сергей_*+11:02:2006, 15:30 -->
<span class="vbquote">(Guest_сергей_* @ 11:02:2006, 15:30 )</span><!--QuoteEBegin-->Подскажите, как защитмть программу от перезаписи.
Это должно быть чтото типа кода активации.
[snapback]30479" rel="nofollow" target="_blank[/snapback]​
[/quote]

Есть система защиты программ с привязкой и без к аппаратному номеру HDD через ключевой файл + легкая мутация защиты по желанию + привязка к дате. Написано на С++ и С#.

Примечание: пригодна только для защиты ваших проектов, т.к. компилируется вместе с кодом.

Поменяю её исходные тексты на исходные тексты модуля сырого чтения CD/DVD в файл-образ, написанного на C++ или С#. В случае положительного ответа: draf@mail.ru или +7 921 2500 412 (можно SMS).
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!