/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
kopisikring - unik maskine kode...
Fra : Peter Petersen


Dato : 10-05-05 21:59

Jeg har lavet et program, som jeg gerne ville beskytte mod at blive kopieret
fra en maskine til en anden. Dette forestiller jeg mig skulle ske gennem en
registrering af programmet på en hjemmeside med noget udvæksling af nogle
koder, som er specielle for selve maskinen.

P.g.a. de lidt specielle omstændigheder, hvorunder programmet nogle gange
benyttes, kan jeg ikke gemme værdier andre steder end i selve programmappen,
hvorfor jeg skal generere en speciel fil, som jeg på en elller anden måde
kan sammenholde med systemet for at sikre mig at den ikke er kopieret
fra/generet på en anden maskine. (jeg er naturligvis opmærksom på, at det
betyder at brugeren ikke så kan skifte hardware/os, men det er ikke af
større betydning i denne sammenhæng)

Nogen enkle forslag til hvad jeg kan sammenligne med?
Findes der en unik værdi i f.eks. registringsdatabasen eller lignende, som
jeg kan aflæse? (Husk igen, at jeg ikke selv kan gemme værdier her...)
f.eks. et tilfælding generet løbenummer for de enkelte
windows-installationer....

Bemærk iøvrigt, at der ikke behøver være tale om noget ubrydeligt system.
Blot en sikring for den gennemsnitlige windows-bruger. Pirater og andre
super-nørder er ikke en trusel i denne sammenhæng....

M.v.h.
Peter



 
 
Finn Bindeballe (11-05-2005)
Kommentar
Fra : Finn Bindeballe


Dato : 11-05-05 07:50

hej ....

Du kunne jo læse diskens serienr. og saa gemme det i en eller anden
krypteret fil....

/Finn

Peter Petersen (11-05-2005)
Kommentar
Fra : Peter Petersen


Dato : 11-05-05 09:35


> Du kunne jo læse diskens serienr. og saa gemme det i en eller anden
> krypteret fil....

Nogen der har erfaringer med det i delphi?



Finn Bindeballe (11-05-2005)
Kommentar
Fra : Finn Bindeballe


Dato : 11-05-05 10:16

Peter Petersen wrote:

>>Du kunne jo l犘e diskens serienr. og saa gemme det i en eller anden
>>krypteret fil....
>>
>>
>
>Nogen der har erfaringer med det i delphi?
>
>
>
>
med at læse diskens serienr ?? eller med at kryptere ??? der findes
masser af komponenter til begge dele....

/F

Ove Kjeldgaard (11-05-2005)
Kommentar
Fra : Ove Kjeldgaard


Dato : 11-05-05 17:54

"Peter Petersen" <the.1@get2net.dk> wrote:

>Nogen der har erfaringer med det i delphi?


Kig lidt på FindFirst, TSearchRec og faVolumeID.

Men der er selvfølgelig problemer Volume ID når folk formaterer deres harddisk.


--
Med venlig hilsen, Ove Kjeldgaard, nospam AT privat DOT dk
Natur og Friluftsliv: <http://hiker.dk>

Finn Bindeballe (12-05-2005)
Kommentar
Fra : Finn Bindeballe


Dato : 12-05-05 07:53

hej

omformatering....???? var det ikke noget man brugte paa matadors tid...
jeg har ikke gjort det i mange år.......

/F

Uffe Kousgaard (12-05-2005)
Kommentar
Fra : Uffe Kousgaard


Dato : 12-05-05 12:19

"Finn Bindeballe" <postmaster@127.0.0.1> wrote in message
news:4282fd46$0$299$edfadb0f@dread11.news.tele.dk...
> hej
>
> omformatering....???? var det ikke noget man brugte paa matadors tid...
> jeg har ikke gjort det i mange år.......

Matador blev vist fra 1978-82, og på den tid var der ikke mange private som
havde en computer og da slet ikke en harddisk. Selv 8" floppyerne forekom
kun i dyre systemer, hvorimod kasettebåndoptageren netop var ankommet som
lagermedium for diverse hobbycomputere. Og de skulle altså ikke formateres !

hilsen
Uffe



Thor (12-05-2005)
Kommentar
Fra : Thor


Dato : 12-05-05 05:21

Hej Peter

Mac adressen på netværkskortet er måske lidt bedre end disk volume.
Jeg fandt denne kodestump på Torry's, - den virker fint under delphi 7.

uses NB30;

function GetMACAdress: string;
var
NCB: PNCB;
Adapter: PAdapterStatus;

URetCode: PChar;
RetCode: char;
I: integer;
Lenum: PlanaEnum;
_SystemID: string;
TMPSTR: string;
begin
Result := '';
_SystemID := '';
Getmem(NCB, SizeOf(TNCB));
Fillchar(NCB^, SizeOf(TNCB), 0);

Getmem(Lenum, SizeOf(TLanaEnum));
Fillchar(Lenum^, SizeOf(TLanaEnum), 0);

Getmem(Adapter, SizeOf(TAdapterStatus));
Fillchar(Adapter^, SizeOf(TAdapterStatus), 0);

Lenum.Length := chr(0);
NCB.ncb_command := chr(NCBENUM);
NCB.ncb_buffer := Pointer(Lenum);
NCB.ncb_length := SizeOf(Lenum);
RetCode := Netbios(NCB);

i := 0;
repeat
Fillchar(NCB^, SizeOf(TNCB), 0);
Ncb.ncb_command := chr(NCBRESET);
Ncb.ncb_lana_num := lenum.lana[I];
RetCode := Netbios(Ncb);

Fillchar(NCB^, SizeOf(TNCB), 0);
Ncb.ncb_command := chr(NCBASTAT);
Ncb.ncb_lana_num := lenum.lana[I];
// Must be 16
Ncb.ncb_callname := '* ';

Ncb.ncb_buffer := Pointer(Adapter);

Ncb.ncb_length := SizeOf(TAdapterStatus);
RetCode := Netbios(Ncb);
//---- calc _systemId from mac-address[2-5] XOR mac-address[1]...
if (RetCode = chr(0)) or (RetCode = chr(6)) then
begin
_SystemId := IntToHex(Ord(Adapter.adapter_address[0]), 2) + '-' +
IntToHex(Ord(Adapter.adapter_address[1]), 2) + '-' +
IntToHex(Ord(Adapter.adapter_address[2]), 2) + '-' +
IntToHex(Ord(Adapter.adapter_address[3]), 2) + '-' +
IntToHex(Ord(Adapter.adapter_address[4]), 2) + '-' +
IntToHex(Ord(Adapter.adapter_address[5]), 2);
end;
Inc(i);
until (I >= Ord(Lenum.Length)) or (_SystemID <> '00-00-00-00-00-00');
FreeMem(NCB);
FreeMem(Adapter);
FreeMem(Lenum);
GetMacAdress := _SystemID;
end;



procedure TForm1.Button1Click(Sender: TObject);
begin
caption := getmacadress;
end;



Henry (30-05-2005)
Kommentar
Fra : Henry


Dato : 30-05-05 20:23

> Jeg har lavet et program, som jeg gerne ville beskytte mod at blive
kopieret
> fra en maskine til en anden. Dette forestiller jeg mig skulle ske gennem
en
> registrering af programmet på en hjemmeside med noget udvæksling af nogle
> koder, som er specielle for selve maskinen.
>

Hej Peter

Turbopower firmaet (RIP) lavede et udemærket komponent bibliotek som løser
dit problem, efter de gik nedenom og hjem gjorde de sourcen til open source,
du kan finde den på www.sourceforge.net søg efter turbopower, og onguard.

mvh
Henry



Søg
Reklame
Statistik
Spørgsmål : 177579
Tips : 31968
Nyheder : 719565
Indlæg : 6409074
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste