Привязка к жесткому диску...
Код:
Function TfmMain.Get_C_Tom_Number: dword;
var
SerialNum : dword;
a, b : dword;
Buffer : array [0..255] of char;
begin
if GetVolumeInformation('c:\', Buffer, SizeOf(Buffer),
@SerialNum, a, b, nil, 0) then
result:=SerialNum;
end;
дальше уж сам думай, как будешь шифровать этот номер диска и как проверять при запуске...