共享軟件作者中有很多是使用Delphi進行編程的,大家都不希望自己的軟件被註冊機破解吧,這裡交給大家一個好方法,如果程序運行的時候發現有註冊機之類的程序就自己把自己刪除,這樣就可以在一定程度上防止註冊機。
程序自己刪除自己的代碼如下所示:
procedure KillSelf;
var
f:textfile;
begin
assignfile(f,''./killme.bat''); //在程序目錄下新建一個bat文件
rewrite(f); //開始向這個bat文件寫入內容
writeln(f,''@echo off'');
writeln(f,'':loop'');
writeln(f,''
writeln(f,''if exist ./file.exe goto loop'');
writeln(f,''
closefile(f); //寫入內容結束
winexec(''./killme.bat'', SW_HIDE); //調用刪除自己bat文件,
close; //關閉自己
end;
我們還可以用Delphi調用Bios的信息用在共享軟件的註冊碼加密上面,當然,不能只用這個Bios的信息作註冊碼,這樣是非常容易被破解的,你自己需要設計一系列算法,來對Bios信息進行加密。詳細代碼如下:
procedure GetBiosInfo;
begin
lblMainBoardBiosName.Caption :=^I+string(Pchar(Ptr($FE061)));
lblMainBoardBiosCopyRight.Caption :=^I+string(Pchar(Ptr($FE091)));
lblMainBoardBiosDate.Caption :=^I+string(Pchar(Ptr($FFFF5)));
lblMainBoardBiosSerialNo.Caption :=^I+string(Pchar(Ptr($FEC71)));
end;
把這段程序加入到你的程序中,你可以獲得一系列主板Bios的信息,其中的lblMainBoardBiosName,lblMainBoardBiosCopyRight,lblMainBoardBiosDate和lblMainBoardBiosSerialNo都是TLabel。