Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
cxAlex
Beiträge: 2111 Registriert: 26.06.2008 10:42
Beitrag
von cxAlex » 01.02.2009 15:52
Aufgrund dieses Threads
http://www.purebasic.fr/german/viewtopic.php?t=18995 hab ich ein kleines Include geschrieben mit dem es kinderleicht ist beliebige Daten in eine Executable zu speichern und wieder auszulesen. Alternativ kann sich eine Executable sogar selbst konfigurieren. Es liegen auch Democodes und 3 fertige Programme zum testen bei. Viel Spaß damit
.
Download:
http://paladiumproject.q-soft.ch/public ... Config.zip
Beispiel:
Builder:
Code: Alles auswählen
; ------------------------------------------------------------------------------------
; Config- oä. Daten aus Exe laden
; Source: Builder
; (cl) Alexander Aigner
; PB 4.x
; ------------------------------------------------------------------------------------
XIncludeFile "EC_Include.pbi"
Define File.s, msg.s
File = OpenFileRequester("Wo erstellen?", "test.exe", "*.exe", 0)
If File
msg = InputRequester("Meldung", "Meldung eingeben", "Testnachricht")
CopyFile("loader.exe", File)
EC_Builder_SaveToFile(@msg, Len(msg), File)
EndIf
Loader:
Code: Alles auswählen
; ------------------------------------------------------------------------------------
; Config- oä. Daten aus Exe laden
; Source: Loader
; (cl) Alexander Aigner
; PB 4.x
; ------------------------------------------------------------------------------------
; Democode
XIncludeFile "EC_Include.pbi"
Define Loader
Loader = EC_Load_All()
If Loader
*Mem = EC_Loader_GetMem(Loader)
MemSize = EC_Loader_GetMemSize(Loader)
MessageRequester("Test", PeekS(*Mem, MemSize))
EndIf
Selfconfig:
Code: Alles auswählen
; ------------------------------------------------------------------------------------
; Config- oä. Daten aus Exe laden
; Source: Selfconfig
; (cl) Alexander Aigner
; PB 4.x
; ------------------------------------------------------------------------------------
XIncludeFile "EC_Include.pbi"
EC_Builder_SelfConfigHead() ; Benötigt
Define Loader, msg.s
Loader = EC_Load_All()
If Loader
*Mem = EC_Loader_GetMem(Loader)
MemSize = EC_Loader_GetMemSize(Loader)
msg.s = PeekS(*Mem, MemSize)
EndIf
msg = InputRequester("Test", "Eigener Text", msg)
If msg
If MessageRequester("Selfconfig", "Geänderten Text speichern?", #PB_MessageRequester_YesNo) = #PB_MessageRequester_Yes
EC_Builder_SelfConfig(@msg, Len(msg))
EndIf
EndIf
Zuletzt geändert von
cxAlex am 30.03.2009 17:25, insgesamt 2-mal geändert.
Oliver1994
Beiträge: 321 Registriert: 15.06.2008 21:52
Beitrag
von Oliver1994 » 01.02.2009 16:56
HEY! Ich finds cool das du das für mich geschrieben hast! Danke!
ICh werds mir sofort angucken...
Gruß
JENS
Oliver1994
Beiträge: 321 Registriert: 15.06.2008 21:52
Beitrag
von Oliver1994 » 01.02.2009 17:03
Ich denke mal bei mir liegt das Problem an PB 4.20!
Bei mir gibt es bei folgender Zeile einen Error:
Code: Alles auswählen
*Loader\MarkerOffset = *Loader\FileSize - SizeOf(INTEGER)
Macro Error
cxAlex
Beiträge: 2111 Registriert: 26.06.2008 10:42
Beitrag
von cxAlex » 01.02.2009 17:06
INTEGER gibts glaub ich noch nicht in 4.2....
Oliver1994
Beiträge: 321 Registriert: 15.06.2008 21:52
Beitrag
von Oliver1994 » 01.02.2009 17:09
heißt das es gibt keine Möglichkeit das Ding in PB 4.20 auszuführen?
Gruß
JENS
cxAlex
Beiträge: 2111 Registriert: 26.06.2008 10:42
Beitrag
von cxAlex » 01.02.2009 17:13
Doch. Alle INTEGER durch LONG ersetzten.
Oliver1994
Beiträge: 321 Registriert: 15.06.2008 21:52
Beitrag
von Oliver1994 » 01.02.2009 17:18
Okay aber diese: tMarker = ReadInteger(\hFile) Funktion gibt es ned!
cxAlex
Beiträge: 2111 Registriert: 26.06.2008 10:42
Beitrag
von cxAlex » 01.02.2009 17:22
ReadLong() Statt ReadInteger()
rolaf
Beiträge: 3843 Registriert: 10.03.2005 14:01
Beitrag
von rolaf » 01.02.2009 17:26
Oliver1994 hat geschrieben: Okay aber diese: tMarker = ReadInteger(\hFile) Funktion gibt es ned!
Jetzt mal ehrlich, bissle (mit)denken sollte man aber schon können.
@cxAlex dein Code
Zuletzt geändert von
rolaf am 01.02.2009 17:31, insgesamt 2-mal geändert.
:::: WIN 10 :: PB 5.73 :: (x64) ::::
AND51
Beiträge: 5220 Registriert: 01.10.2005 13:15
Beitrag
von AND51 » 01.02.2009 17:30
Wo ist denn das Problem auf 4.30 up zu daten?