Programm nur einmal ausführbar
Übersicht

![]() |
MisterIKSBetreff: Programm nur einmal ausführbar |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo zusammen,
ich hätte mal eine Frage, lässt es sich mit BlitzBasic realisieren, dass sich ein Programm nur einmal starten lässt? Also, dass der Benutzer es z.B. herunterläd, einmal startet, solange benutzt wie er möchte, aber nach dem Schließen nicht mehr starten kann. Ich wüsste in Visual Basic eine Lösung indem ich die eine Programmvariable verwende, die ich nach dem ersten öffnen auf False setze. So eine Variable würde nach dem Beenden gespeichert und könnte erneutes Starten verhindern. In BlitzBasic habe ich aber keine Idee. |
||
http://www.mphsoftware.de.vu |
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
*Sorry, Frage falsch verstanden!* | ||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
- Zuletzt bearbeitet von ChristianK am So, Jan 25, 2009 15:38, insgesamt einmal bearbeitet
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sebles Prinzip, du musst eine Datei anlegen und wenn die vorhanden ist wird nicht mehr gestartet. Allerdings wird es Leute geben die die Datei finden. Und andere die sich ärgern wenn man ihnre nso das System zumüllt. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Eine Alternative wäre es mit einem Registry-eintrag zu lösen, such mal inner Forumsuche danach ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
coolo |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oder man macht es über die Server Methode. Du suchst dir Computer spezifische Sachen also Auflösung, Hardware, IP Adresse,... und sobald ein Eintrag mit den Einträgen, kannst du ziemlich sicher sein, dass es der Gleiche Computer ist.
Ansonsten würde ich dir anraten einfach eine Datei irgendwo zu erstellen. |
||
http://programming-with-design.at/ <-- Der Preis ist heiß!
That's no bug, that's my project! "Eigenzitate sind nur was für Deppen" -Eigenzitat |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Sebles Prinzip, du musst eine Datei anlegen und wenn die vorhanden ist wird nicht mehr gestartet. Allerdings wird es Leute geben die die Datei finden. Und andere die sich ärgern wenn man ihnre nso das System zumüllt.
Nja, Blade.... Es wäre sinnvoller eine Datei mit ganz vielen sinnlos aussehenden Bytes zu erstellen, und nach Programm start ein Byte an Position x mit dem Wert Y auf einen anderen Wert zu setzen. Beim nächsten Start ist der wert dann nichtmehr den Wert Y, und damit würde das Programm nicht starten. Nja, knacken kann man es aber trotzdem leicht, indem man die Datei kopiert, und dann das Programm erst startet......... |
||
Twitter
Download Jewel Snake! Windows|Android |
Rocys |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] killer_stream=WriteFile("killer.bat") WriteLine killer_stream,"echo destroyed>[Name des Programms].exe" CloseFile killer_stream ExecFile "killer.bat" End Das zerstoert einfach die Exe-Datei. EDIT: Ups, da ist beim Testen was schief gelaufen. Das geht ja tatsaechlich nicht. Sorry |
||
- Zuletzt bearbeitet von Rocys am Mi, Jan 28, 2009 0:52, insgesamt einmal bearbeitet
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
setz ne umgebungsvariable.
Oder vergiss einfach diese einmal-starten-späße. Die meisten user mögen das garnicht und vergrault man mit sowas. Grüße, Smily @Rocys: Man kann ein programm nicht löschen, während es läuft. |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
smily: doch kann man, aber nicht von bb aus... moment doch kann man, werde aber nicht sagen wie.
rocys: ich seh in der bat kein killprocess. wo beendet es also den prozess? mich vergrault es auch das man ein programm nur einmal aufmachen kann(find ich eigentlich fies dem user gegenüber) |
||
Warbseite |
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe es ein Mal vor vielen Jahren für das Demo eines bedeutungslosen Mini-Spiels so gemacht:
Es gab eine Datei mit Informationen, die zum Teil für das Programm nötig waren, zum größten Teil aber nicht. Es gab auch eine Menge Müll drin (absichtlich), damit es nach viel aussah. Eine einzige Ziffer davon, in einer bestimmten Zeile UND an einer bestimmten Stelle innerhalb der Zeile (zum Beispiel in Zeile 24 ist die Zahl "341121") war ein Counter, der bei jedem Programmstart um 1 erhöht wurde. In dem Beispiel könnte das die "4" sein. Es ist absichtlich so, daß diese Variable obwohl es als null gilt, nicht bei null anfängt (denn das wäre auffällig), sondern beispielsweise bei 4. Intern wird von dieser Variable bei der Auswertung immer 4 abgezogen. Die Datei nicht da zu haben würde zum Absturz führen. Die einzige Möglichkeit den "nur 3 mal starten erlaubt Einschränkung" umzugehen wäre herauszufinden welche Ziffer der Counter ist oder den ganzen Programmcode knacken. Beides wäre für Profis möglich. Das ist keine sichere Methode. Aber, wozu auch ? Es lohnt sich meiner Überzeugung nach nicht, harte Kopierschutzmechanismen zu verwenden, es reicht wenn man es Otto Normal PC User nicht zu trivial macht. Leute, die was aufbrechen oder kopieren wollen können und werden es trotzdem tun. |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Omenaton_2
Möglich wäre aber eine kopie der Datei zu erstellen, und die jedes mal wieder zu ersetzen ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Server Variante ist wohl eine der wenigen sinnvollen, aber auch eine Schwere.
Warum machst du es nicht wie alle, und machst einfach eine Zeitbegrenzung rein, oder eine Funktionsbegrenzung. Kannst ja auch machen, dass das Programm nur zwischen 28.1.2009 und 17.2.2009 läuft. |
||
between angels and insects |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Jan
LoL dann kann man ja einfach das Datum ändern ![]() eine Zeit begrenzung wär auch ne gute idee, also im Sinne Code: [AUSKLAPPEN] if vergangenezeit > 5 min
end endif |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Klar, kann man das Ozzi, aber wer macht denn das schon noch? | ||
between angels and insects |
AvaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Zylom macht das z.B. noch ... grad gestern noch gehabt "Sie dürfen diese Demo 30min ausprobieren, dann müssen Sie das Spiel kaufen oder von Anfang neu beginnen" ... blah ... *gg* | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group