Autor Beitrag
Jens Hartmann
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 120

XP
Delphi
BeitragVerfasst: Do 18.12.08 23:46 
Hallo Leute,

jetzt habe ich mal eine hier im Forum schon öfter aufgegriffen Frage, allerdings mit einem für mich anderen Hintergrund.

Ich habe eine Software geschrieben, die ich einmal als DEMO-Version in abgespeckter Version zur Verfügung stelle und als Vollversion.

Ich möchte allerdings ein klein bißchen Sicherheit in die Exe-Datei bringen, was heißt das ich nach dem Installieren nicht einfach die Exe nehmen kann und auf einen anderen Rechner kopieren kann.

Ich denke das man das mit der Registry am besten lösen könnte, bin allerdings durch viele aussagen hier sehr verunsichet.

Ich weiß auch das ich, wenn man weiß wo die Registryeinträge sind das ohne weiteres ändern könnte. aber Grundlegend würde mich einfach interesiieren, wie ich das ein bißchen geschickt anstellen kann.

Man muss dazu sagen, das bei dieser Software der Nutzer zu 99% nicht auf die Idee kommen wird diesen Aufwand zu betreiben.

Ich möchte halt nur nicht, das jemand einfach die Exe nehmen kann, kopiert und ÄTSCH läuft.

Also was meint Ihr wäre da der bessere Weg.

MFG

Jens


Moderiert von user profile iconNarses: Topic aus VisualCLX (Component Library for Cross Platform) verschoben am Do 18.12.2008 um 22:47
jfheins
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 918
Erhaltene Danke: 158

Win 10
VS 2013, VS2015
BeitragVerfasst: Fr 19.12.08 00:11 
Du könntest es an die Hardware binden, was aber doof ist, weil man die ja tauschen können möchte.

Also an den Benutzer binden.

Das ginge z.B. so, dass du jedem Benutzer eine Seriennumer gibst. Wenn dein Proigramm dann zum ersten mal auf einem PC ausgeführt wird, registriert sich das Programm im Internet mit einer Hardwarekennung.

Wenn die Anzahl an unterschiedlichen Hardwarekennungen > 20 oder so ist, mal nachhaken :stupid:
Dunkel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 682

Mac OS X Snow Leopard
Xcode 3.1
BeitragVerfasst: Fr 19.12.08 02:01 
user profile iconJens Hartmann hat folgendes geschrieben Zum zitierten Posting springen:
Hallo Leute,

jetzt habe ich mal eine hier im Forum schon öfter aufgegriffen Frage, allerdings mit einem für mich anderen Hintergrund.


Hallo!

Find' ich toll, dass Du die Suchfunktion benutzt hast! :D

Darf ich fragen, welchen, recht allgemeinen, Tenor Du aus den ganzen "Kopierschutz"-Threads rausgelesen hast, dass Du der Meinung bist, dass Du einen anderen Hintergrund verfolgst?


Ich fasse mal kurz den Inhalt so ziemlich aller dieser Threads zusammen:

Es gibt keinen 100%igen Schutz vor Raubkopien! Alles kann geknackt werden. Selbst Hardware-Dongles, welche wichtige Berechnungen in einer "USB-Blackbox" durchführen, ohne die das Programm nicht läuft, wurden schon reassembliert und in Software nachgebildet. Ein super Beispiel, wie ich finde, sind die ganzen schon gecrakten Spielekonsolen; und so Firmen wie MS oder Sony haben sicherlich einiges an Geld in die Entwicklung von diversen Kopierschutz-Mechanismen gesteckt, früher oder später war es für die Katz'.

Softwareseitige Sprünge a la "wenn Maschinen-ID nicht ok dann Programm beenden" lassen sich recht problemlos durch ein NOP (NoOperation) im Assembler-Code übergehen. Hardware-Dongles sind schon sicherer, kosten aber Geld (und können ebenfalls, mit etwas mehr Aufwand, geknackt werden). Ein Registrierungsserver im Internetz kann, schlecht implementiert, genau wie die schon angesprochene "Wenn-Dann"-Sprünge geknackt werden. Und so weiter, und so fort...

Steck lieber ein wenig mehr Entwicklungszeit in mehr Funktionen Deines Programms. Wenn Dein Programm aus der Masse heraussticht, dann werden auch Kunden eher bereit sein ein paar Scheine den Besitzer wechseln zu lassen.

_________________
Ich streite einsam mich mit dieser Oberflächenwelt
Gutes sei ein löblich Brot von dem ich zehre - bis zum Tod [Das Ich - Im Ich]
Jens Hartmann Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 120

XP
Delphi
BeitragVerfasst: Sa 20.12.08 14:20 
Es geht mir gar nicht so darum das es jemand kopieren kann. Die Software die ich geschrieben habe, setze ich als Drucker ein. Sie ließt Daten von einer seriellen Schnittstelle ein und speichert diese als Textdateien Datumsbezogen.

Ich will lediglich erreichen, das man nicht einfach die EXE Datei nehmen kann auf einen anderen Rechner kopiert und läuft.

Die Kunden die diese Software beziehen werden, werden sie automatisch beim Kaufen der dzugehörigen Hardware kaufen. Sie werden sich nicht damit beschäftigen wie ich die Software eventuell knacken kann.

Gebe ich aber dem Kunden die Möglichkeit einfach ne kopierte Version zu nutzen, wird er für weiter Hardwaresystem die er nutzt einfach die Kopierfunktion nutzen.

Was ich somit erreichen will, ist das man gezwungen ist ein Setup auszuführen und somit wenigstens im Besitz der Setup Daten zu sein. Dann kann ich die Software beim Kunden installieren wie es auch in unserem Fall gemacht wird und das Setup wieder mit nehmen. Schon ist der Kunden das nächste mal gezwungen einen neue Lizens zu bestellen und diese installieren zu lassen.

Da die Druckersoftware nur Störmeldungen von einer Störmeldezentrale mitschreibt ist die warscheinlichkeit gering, das sich eine 50 jährige Hausmeister die Mühe macht und anfängt die Versionzu knacken.

Deswegen verfolge ich einen anderen Hintergrund.

Mir ist schon bewußt, wenn jemand das möchte das das auch mit einem Hardwaredongle möglich wäre.

MFG

Jens
platzwart
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1054
Erhaltene Danke: 78

Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
BeitragVerfasst: Sa 20.12.08 14:52 
Das Verhindern des Kopierens einer EXE würde ja bedeuten, dass du deinen eigenen Kunden nix geben kannst, weil du selbst vom Kopierschutz betroffen wärst...

Wie soll denn ein erzwungenes Setup verhindern können, dass man ein Programm koopiert? -> Vor dem Setup ein Image vom System machen, nach dem Setup das System mit dem Image vergleichen und das wars auch schon. Auch wenn DIESER Schritt nicht vom 50-jährigen Hausmeister gemacht wird, irgendjemand macht es und bringt es in Umlauf...

Ich persönlich halte Dongles für am sichersten, allerdings wirst du für gute Dongles bei geringen Stückzahlen etwa 50€ bezahlen müssen...

Meiner Meinung nach ist es besser, _kein_ Setup zu haben. So zeichnet sich beispielsweise unsere Software gegenüber anderen Lösungen aus. Einfach USB-Stick rein und das Prog läuft ohne lästige Installationen. An deiner Stelle würde ich das als Wettbewerbsvorteil ansehen.


Noch was ganz allgemeines zum Thema Kopierschutz: Wie auch immer du es machst, es bedeutet einen hohen Zeiaufwand zum Implementieren und Testen! Außerdem muss der Kopierschutz, wenn er effizient sein soll, immer wieder verändert/weiter entwickelt werden. Das ist ein nicht zu unterschätzender Aufwand!

_________________
Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Sa 20.12.08 16:17 
user profile iconJens Hartmann hat folgendes geschrieben Zum zitierten Posting springen:
Die Kunden die diese Software beziehen werden, werden sie automatisch beim Kaufen der dzugehörigen Hardware kaufen. Sie werden sich nicht damit beschäftigen wie ich die Software eventuell knacken kann.

Gebe ich aber dem Kunden die Möglichkeit einfach ne kopierte Version zu nutzen, wird er für weiter Hardwaresystem die er nutzt einfach die Kopierfunktion nutzen.

Was ich somit erreichen will, ist das man gezwungen ist ein Setup auszuführen und somit wenigstens im Besitz der Setup Daten zu sein. Dann kann ich die Software beim Kunden installieren wie es auch in unserem Fall gemacht wird und das Setup wieder mit nehmen. Schon ist der Kunden das nächste mal gezwungen einen neue Lizens zu bestellen und diese installieren zu lassen.


Naja, sowas lässt sich doch auch an den Bestellungen des Kudnen erkennen?
Wenn jemand nur die Hardware kauft, ohne Software, kann man mal nachfragen, weil die Hardware ja ohne Soft nutzlos ist.
Andererseits, wenn jemand 1 Millionen (jaa, ist vielleicht übertrieben) Geräte kauft, aber nur einmal die Software gekauft hat, weiß man ja auch "hier stimmt was nicht".

_________________
PROGRAMMER: A device for converting coffee into software.
Chryzler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1097
Erhaltene Danke: 2



BeitragVerfasst: Sa 20.12.08 16:41 
Erstell einfach beim Setup einen einigermaßen versteckten Wert in der Registry und dann fragst du bei jedem Start deiner Software ab, ob dieser existiert. :nixweiss:
rizla
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 417
Erhaltene Danke: 2

XP
FPC mit Lazarus
BeitragVerfasst: So 21.12.08 23:44 
Dann nehm ich regmon und sehe, dass sein tool auf die registry zugreift, patche den entsprechenden vergleich und fertig.
ich sage/singe nur: de.youtube.com/watch?v=7pgh3tlia10 :dance2:

(und wieder ein wenig illusion genommen..)

festliche grüße
:r!a:

_________________
if you have what they want - they'll find a way to take it (bruce sterling)
WOW - 10 JAHRE Mitglied beim Delphi-Forum. Wie die Zeit vergeht, Freunde.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19312
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 22.12.08 07:57 
user profile iconplatzwart hat folgendes geschrieben Zum zitierten Posting springen:
So zeichnet sich beispielsweise unsere Software gegenüber anderen Lösungen aus. Einfach USB-Stick rein und das Prog läuft ohne lästige Installationen.
Wobei ich in dem Fall, dass es kein Setup gab teilweise ein gerade heruntergeladenes Tool auch wieder gelöscht habe. Warum soll ich mir die Mühe machen die Datei nach c:\programme zu entpacken und die Vernüpfungen manuell zu erstellen? :nixweiss:
Meistens gibt es dann immer ähnliche Tools, die da mehr Service bieten. Klar dauert es nicht lange, es ist aber lästig. Bei einer Deinstallation muss ich dann nachschauen wo das Programm liegt und manuell löschen anstatt schnell unter Software auf deinstallieren zu klicken. (Und sicher zu sein, dass das Setup - hoffentlich - alles restlos entfernt.)
Am besten versucht es dann noch ins eigene Verzeichnis die Einstellungen zu schreiben, so dass es gleich gar nicht funktioniert. :lol:

An der Stelle gibt es immer verschiedene Meinungen, deshalb: jedem das seine. Solange es beide Möglichkeiten gibt ist das ja auch kein Problem. Ausschließlich nur eine Zipdatei anzubieten fände ich aber nicht gut und sieht (außer bei expliziten portable Versionen oder Software) nicht besonders professionell aus.


user profile iconrizla hat folgendes geschrieben Zum zitierten Posting springen:
Dann nehm ich regmon und sehe, dass sein tool auf die registry zugreift, patche den entsprechenden vergleich und fertig.
Warum das egal ist hat er ja bereits geschrieben, deshalb denke ich, dass diese genannte Möglichkeit hier eine gute Lösung ist:
user profile iconChryzler hat folgendes geschrieben Zum zitierten Posting springen:
Erstell einfach beim Setup einen einigermaßen versteckten Wert in der Registry und dann fragst du bei jedem Start deiner Software ab, ob dieser existiert. :nixweiss:
Besonders versteckt muss der ja hier nicht einmal sein.
baka0815
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 489
Erhaltene Danke: 14

Win 10, Win 8, Debian GNU/Linux
Delphi 10.1 Berlin, Java, C#
BeitragVerfasst: Mo 22.12.08 10:49 
Du könntest eine Datei in irgendein Verzeichnis auf der Festplatte kopieren und abfragen ob die Datei existiert. Existiert sie -> Vollversion, sonst Demo.

Die Datei kopierst du dann natürlich nicht in dein Programmverzeichnis sondern wo anders hin. Windows-Verzeichnis evtl.

Was wichtig ist: Der Benutzer muss lesenden Zugriff auf die Datei haben, sonst findet dein Programm sie beim Start nicht und würde immer als Demo starten.
Vielleicht erstellst du auch einfach einen versteckten Ordner unter "Dokumente und Einstellungen\All Users" oder so.
platzwart
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1054
Erhaltene Danke: 78

Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
BeitragVerfasst: Mo 22.12.08 13:11 
user profile iconbaka0815 hat folgendes geschrieben Zum zitierten Posting springen:
Du könntest eine Datei in irgendein Verzeichnis auf der Festplatte kopieren und abfragen ob die Datei existiert. Existiert sie -> Vollversion, sonst Demo.

Die Datei kopierst du dann natürlich nicht in dein Programmverzeichnis sondern wo anders hin. Windows-Verzeichnis evtl.


Das ist ja wohl das allerletzte! NIEMALS in _irgendein_ Verzeichnis Daten ablegen und schon garnicht ins Systemverzeichnis!!!

_________________
Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Mo 22.12.08 13:45 
auch wenn es kein 100%igen Schutz gibt;
Dateien irgentwo abzulegen ist gaga. Eine mögliche Lösung ist, die eigene Anwendung
selbst zu patchen (demo oder Fullversion) und das Patchprogramm nach dessen Ausführung zu löschen.
Ablauf könnte so sein:
Programm.Exe prüft ob es gepatcht ist - nein dann Beenden und Patch.exe aufrufen. Patch.exe modifiziert Programm.exe und ruft anschließend wieder Programm.exe auf. Programm.exe stellt fest, dass es gepatcht ist und löscht Patch.exe.

Wichtig ist, dass patch.exe nur ein einziges mal auf den Rechner vom Installationsmedium kopiert wird. Zum beispiel durch eine eigene Setup Routine, welches dann auch die Quellen (also das was kopiert wird) modifiziert, so dass nicht
mit der weitergabe der Installationsmedien das Patchen wieder stattfinden kann.

Alternativ wäre die Verwendung von profi-Systemen a la Flexnet möglich - aber teuer und setzt eine Verbindung zum Server voraus.

Das Patchen selbst sollte an mehreren Stellen im Programm-code erfolgen - statt Sprünge dann nops und String- und
Zahlen ändern deren Vergleiche dann anschlagen. Schön getreut, dann noch ein paar Debugger-Codes rein:
www.codeproject.com/..._Win_Anti_Debug.aspx
www.ebonk.org/delphi...nti-debug-reference/
und voila - fertisch.

:-)Grez Msch

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
MagicRain
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Do 25.12.08 08:26 
user profile iconMSCH hat folgendes geschrieben Zum zitierten Posting springen:
auch wenn es kein 100%igen Schutz gibt;
Dateien irgentwo abzulegen ist gaga. Eine mögliche Lösung ist, die eigene Anwendung
selbst zu patchen (demo oder Fullversion) und das Patchprogramm nach dessen Ausführung zu löschen.
Ablauf könnte so sein:
Programm.Exe prüft ob es gepatcht ist - nein dann Beenden und Patch.exe aufrufen. Patch.exe modifiziert Programm.exe und ruft anschließend wieder Programm.exe auf. Programm.exe stellt fest, dass es gepatcht ist und löscht Patch.exe.

Wichtig ist, dass patch.exe nur ein einziges mal auf den Rechner vom Installationsmedium kopiert wird. Zum beispiel durch eine eigene Setup Routine, welches dann auch die Quellen (also das was kopiert wird) modifiziert, so dass nicht
mit der weitergabe der Installationsmedien das Patchen wieder stattfinden kann.

Alternativ wäre die Verwendung von profi-Systemen a la Flexnet möglich - aber teuer und setzt eine Verbindung zum Server voraus.

Das Patchen selbst sollte an mehreren Stellen im Programm-code erfolgen - statt Sprünge dann nops und String- und
Zahlen ändern deren Vergleiche dann anschlagen. Schön getreut, dann noch ein paar Debugger-Codes rein:
www.codeproject.com/..._Win_Anti_Debug.aspx
www.ebonk.org/delphi...nti-debug-reference/
und voila - fertisch.

Auch nur sinnlos und langweilig.Sorry aber das ist auch in paar Minuten erledigt Dongels sind auch nicht wirklich eine sehr große Herausforderung kommt halt immer auf das wissen an der ihn knacken will.

Ich gebe dir mal ein tipp wenn du wirklich etwas Brauchbares erstellen willst dann mach es ganz einfach. Eine Full Version und eine Demoversion erstellen. In der Demoversion kann man etliche Sachen nicht benutzen da brauch man die Vollversion aber auf keinen fall den Code in der DEMO drin lassen und nur irgendwie via check abfragen oder so. Somit hast du einen natürlich nicht 100%igen Schutz aber das ist schon das beste was man machen kann weil Code für eine Funktion der nicht vorhanden ist den kann ich nicht wirklich leicht dort einfügen na ja man könnte das vielleicht in Assembler diese Funktion oder was auch immer programmieren aber das doch eher unwahrscheinlich und ziemlich schwer. Somit könnte man nur an eine Vollversion via kauf kommen aber es ist natürlich nicht 100%ig sicher weil wenn es sich einer kauft und wo uploaded warze oder was auch immer wird es auch wieder verteilt. Na ja immer das gleich irgendwie bekommt es dann doch immer einer hin. Man muss sich ja auch denken alles was irgendwie entwickelt wurde bzw Programmiert kann auch irgendwie geknackt werden ;)
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Do 25.12.08 11:57 
Richtig, MagicRain: Der beste Kopierschutz ist eine tolle Anwendung und ein moderater Preis. Ich habe alle guten Tools mittlerweile gekauft (WinRAR, TotalCommander, BeyondCompare etc.) IBExpert ist auch so ein Kandidat. Tolle Features in der Umsonst-Edition. Wer richtig damit arbeiten will/muss, kauft sofort die Vollversion, weil die Qualität der Personal-Edition einfach überzeugt.

_________________
Na denn, dann. Bis dann, denn.
Biarchiv
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 688



BeitragVerfasst: So 04.01.09 15:24 
Hallo,

grundsätzlich wenn jemand ein Programm klaut heist das noch lange nicht das er auch dafür
Geld ausgegeben hätte. Bei Software (Programme) ist es oft so das die zuerst gestohlen wird und
bei gefallen (Qualität, Preis, ... überzeugt) dann viel später gekauft wird.

Da könnten Monate oder Jahre dazwischen liegen. Jeder 2 Kunde kennt die Software schon seit Monaten
bevor er kauft. Zumindest bei mir.

Oder auch gut es es eine spezielle Seriennumer (zip-archiv) bei kauf bereitzulegen um ZB.: mehr Objekte,
mehr Bilder, mehr Module,.. oder auch immer freischalten zu können.

Falls jemand doch einen Kopierschutz braucht. [url]www.webtoolmaster.com/de/[/url]
delphi10
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 447
Erhaltene Danke: 2

W2K, XP, Vista64, Win7 64
RAD-Studio 2010
BeitragVerfasst: Mo 05.01.09 19:32 
user profile iconBiarchiv hat folgendes geschrieben Zum zitierten Posting springen:

Falls jemand doch einen Kopierschutz braucht. [url]www.webtoolmaster.com/de/[/url]

Das einzige was mich da interessiert hätte, wäre der EXE Stealth Protector. Genau der Download ist rottig. Statt 520KB werden nur ca. 80KB geladen, die lassen sich zwar starten, aber es poppt nur ein Fenster auf mit der Meldung "Wrong DownloadLink". Der Anbieter kann auch keine Vollversion liefern, sie wird als nicht verfügbar ausgewiesen. Bei den anderen Tools funktioniert zwar der Download, aber der Virenwächter schlägt Alarm. Also - irgendwie möchte ich da nichts bestellen.

_________________
Salus populi suprema lex esto
Biarchiv
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 688



BeitragVerfasst: Mo 05.01.09 20:59 
Hallo delphi10,

mein Kaspersky findet nichts. Vielleicht eine Falsch-Meldung?

Mail mal zum Admin wegen Exe Stealth, da steht was von nicht offizieller Download.


Zuletzt bearbeitet von Biarchiv am Mo 05.01.09 21:09, insgesamt 1-mal bearbeitet
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19312
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 05.01.09 21:05 
Dass bei solchen Exeschutztools Antivirenprogramme anspringen ist durchaus normal. Es wird von solchen Tools nämlich oft durch die Veränderungen an der Exe eine Erkennung von Viren erschwert oder verhindert. Zudem sind dadurch ähnliche Codeteile in damit bearbeiteten Exedateien.
Und deshalb kommt es oft vor, dass durch Exepacker oder Exeschutztools etc. ein Antivirenprogramm anspringt. Damit muss man leben, wenn man solche Tools verwendet.
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Mo 05.01.09 22:23 
user profile iconBiarchiv hat folgendes geschrieben Zum zitierten Posting springen:
Falls jemand doch einen Kopierschutz braucht. [url]www.webtoolmaster.com/de/[/url]
Ich halte nichts von Websites, die voll mit Rechtschreibfehlern sind. Vermutlich sind die Programme mit der entsprechendend Sorgfalt erstellt.

_________________
Na denn, dann. Bis dann, denn.