AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Program nur bei engelegter CD nutzen

Ein Thema von joya · begonnen am 12. Dez 2003 · letzter Beitrag vom 15. Dez 2003
Antwort Antwort
Seite 2 von 2     12   
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
934 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 11:18
Hallo,

Ich habe dieses Problem einmal wie folgt gelöst:

Die Installationsroutine ermittelte über GetVolumeInformation die Serien-Nr. der CD.
Dieser Wert wurde in die Registry geschrieben und jedesmal beim Aufruf mit der CD verglichen.

Das wars, es ist zwar kein Kopierschutz, zwingt jedoch zum einlegen der CD.
  Mit Zitat antworten Zitat
joya

Registriert seit: 12. Dez 2003
5 Beiträge
 
#12

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 12:01
Ja,

genau das könnte ich brauchen, können sie mir das genauer erklären, wie und wo mache ich so was, (beim install-schield, oder wo), und wie kann ich dann diesen wert aufrufen und vergleichen. wenn sie auch noch code haben, dass wäre prima.

Danke
  Mit Zitat antworten Zitat
Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#13

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 12:09
Hi Alter Mann...

Ist es dann auch so, dass eine zweite CD auf dem Rechner nicht Funktioniert? Hört sich danach an... Und wie würde sich das auf eine Kopie (wie auch immer, ob nun berechtigt oder nicht) der CD auswirken? Ich hab das doch richtig verstanden? Ist die ID der CD selber, oder?

Ist das eine Delphi-Funktion? Wo gibts die? Ist das WinAPI? Code?

Fragen über Fragen...
Interessiert mich wirklich...
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#14

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 13:18
Zitat:
Hallo,

Ich habe dieses Problem einmal wie folgt gelöst:

Die Installationsroutine ermittelte über GetVolumeInformation die Serien-Nr. der CD.
Dieser Wert wurde in die Registry geschrieben und jedesmal beim Aufruf mit der CD verglichen.

Das wars, es ist zwar kein Kopierschutz, zwingt jedoch zum einlegen der CD.
Zitat:
Ja,

genau das könnte ich brauchen, können sie mir das genauer erklären, wie und wo mache ich so was, (beim install-schield, oder wo), und wie kann ich dann diesen wert aufrufen und vergleichen. wenn sie auch noch code haben, dass wäre prima.

Danke
Klar, hab jetzt mal ein bisschen rumprobiert und bin zu folgendem Ergebniss gekommen:

Delphi-Quellcode:
uses Registry;

function Seriennummer(Laufwerk: PChar): string;
var
  NotUsed: DWORD;
  VolumeFlags: DWORD;
  VolumeInfo: array[0..MAX_PATH] of Char;
  VolumeSerialNumber: DWORD;
begin
  GetVolumeInformation(PChar(Laufwerk + ':\'),
    nil, SizeOf(VolumeInfo), @VolumeSerialNumber, NotUsed,
    VolumeFlags, nil, 0);
  Result := Format('%8.8X',[VolumeSerialNumber])
end;

procedure TForm1.FormCreate(Sender: TObject);
var
  Reg: TRegistry;
  Serial, RegSerial: String;
begin
  Serial:=Seriennummer('E');
  try
  Reg:= TRegistry.Create;
  Reg.Rootkey:=HKEY_CURRENT_USER;
  if not Reg.KeyExists('Software\Uncle Cracker')
  then begin
  Reg.Openkey('Software\Uncle Cracker',true);
  Reg.WriteString('Seriennummer', Serial)
  end else begin
  Reg.Openkey('Software\Uncle Cracker',true);
  RegSerial:=Reg.ReadString('Seriennummer');
  if not (RegSerial=Serial) then begin Showmessage('Falsche CD im Laufwerk'); halt
  end;
  end;
  finally
  Reg.Free;
end;
end;

Ist zwar nicht der schönste Code, doch er funktioniert.

Also:

Beim 1. starten schreibt das Programm die CD-Seriennummer in die Registry.
Beim 2. starten überprüft es jedesmal, ob es die gleiche Seriennummer ist wie beim letztem Start auch.

Das ganze könnte man jetzt ins Programm einbauen, doch anstatt Seriennummer('E') zu übergeben einfach den Laufwerkstypen auf dem das Programm gestartet wurde.


[Edit]PS: Falls es noch fragen zum Code gibt, einfach stellen [/Edit]
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Lillebrohr
(Gast)

n/a Beiträge
 
#15

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 13:44
Hi,

Zitat:
Beim 1. starten schreibt das Programm die CD-Seriennummer in die Registry.
Beim 2. starten überprüft es jedesmal, ob es die gleiche Seriennummer ist wie beim letztem Start auch.
Achja, ich liebe meinen Debugger !
Sowas bringt nichts !! kopierschutz wäre in kürzester zeit behoben, mit der Methode.

Bye
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#16

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 13:50
Wie gesagt, es ist nur eine simple Methode wie man es machen könnte.

Wie würdest du es sonst machen um es immer noch leicht mit Delphi umzusetzen zukönnen?
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#17

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 14:05
Moin

Ich könnte mir auch vorstellen, dass wenn man einen Cracker mit acht verschiedenen Kopierschutz-Funktionen (warum nicht auch zwanzig oder mehr) gleichzeitig konfrontiert, und sich auch noch ein bissel gewitzt dabei anstellt, dann hat der bald keine lust mehr.

Man kann ja auch die Seriennummer in der Registry crypten. und nach einem unlogischen Muster wechseln lassen.

Jeder einzelne Kopierschutz müsste unabhängig vom anderen funktionieren und einfach nur verwirrend sein und ständig wechselnd.

ABER, wie ich und Uncle C schon mehrfach festgestellt haben: Es macht für ein einfaches SWF oder Flash-Game überhauptkeinen Sinn !!!

Ich denke die Methode von Uncle C ist okay für diese Zwecke - wahrscheinlich sogar überdimensioniert

Bis denne...
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#18

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 14:47
man kann diese Abfrage auch etwas sicherer machen, indem man entweder DLLs nutzt oder mehrer Threads hat, dies bringt schon die meisten Cracker durcheinander und man sollte nicht nur eine Abfrage nach der Seriennummer haben.
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Lillebrohr
(Gast)

n/a Beiträge
 
#19

Re: Program nur bei engelegter CD nutzen

  Alt 15. Dez 2003, 15:34
Zitat:
man kann diese Abfrage auch etwas sicherer machen, indem man entweder DLLs nutzt oder mehrer Threads hat, dies bringt schon die meisten Cracker durcheinander und man sollte nicht nur eine Abfrage nach der Seriennummer haben.
Dlls bringen denke ich mal niemanden durcheinander, und mehrere threads ... naja.

Ich überlege mir aber auch schon was.
be Patient !!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz