Seite 1 von 2
Wie binde ich eine Grafikdatei fest in eine EXE ein?
Verfasst: 26.01.2005 22:52
von ZaPPa
Also ich hab folgendes Problem:
Ich schreibe ein Datenbank Tool... im sogenannten "Über..." bzw. "About..." fenster soll nun neben einem kleinen text ein logo angezeigt werden!
da es sich um eine GIF datei handelt muss ich es erstma über die movie-funktionen laden... und damit es niemand verändert hab ichs mit der PB-pack routine gepackt....
so. ich würd das GIF File(von mir auch aus png, jpg, oder so) gern direkt direkt in der EXE haben damit sich die ladezeit verkürzt und die grafik datei noch besser geschützt ist
deshalb meine frage: Wie geht das???
MfG ZaPPa
Verfasst: 26.01.2005 23:08
von GPI
konvertier das Bild als PNG.
includebinary und catch* solltest du dir mal anschauen.
Ansonsten als Resource...
Verfasst: 26.01.2005 23:13
von ZaPPa
ok soweit bin ich inzwischen auch.... nur stürzt das seit dem immer ab...
Verfasst: 26.01.2005 23:31
von MVXA
musst da auch ein DataSection und ein EndDataSection haben sonst denkt der Prozessor das Bild ist was ausführbares

Verfasst: 26.01.2005 23:31
von MARTIN
>die grafik datei noch besser geschützt ist
Oh ja, damit ist sie bombensichr gesützt
>nur stürzt das seit dem immer ab...
Poste mal den Code.
Verfasst: 26.01.2005 23:37
von ZaPPa
ok stürzt nimmer ab...
DataSection hat gefunzt... jetz zeigt er das bild aber nich an...
Code: Alles auswählen
UsePNGImageDecoder()
DataSection
HelpLogo : IncludeBinary ("dbc.png")
EndDataSection
CatchImage(666,?HelpLogo)
so einma zum laden...
Code: Alles auswählen
StartDrawing(WindowOutput())
DrawImage(666,10,10)
StopDrawing()
und das zum anzeigen....
>die grafik datei noch besser geschützt ist
Oh ja, damit ist sie bombensichr gesützt
damit mein ich nur das nich jeder daran kommt... nich das es für NIEMANDEN erreichbar is....
Verfasst: 27.01.2005 00:02
von ZaPPa
ok habs geschafft! ganz allein :P
Code: Alles auswählen
UsePNGImageDecoder()
DataSection
HelpLogo : IncludeBinary ("dbc.png")
EndDataSection
HelpLogo = CatchImage(1,?HelpLogo)
das is die lade funktion
und zum anzeigen einfach nur
trotzdem danke an alle!
Verfasst: 27.01.2005 00:39
von Laurin
Hast du den PNG-Decoder vergessen, oder wo lag nun der Fehler?
Verfasst: 27.01.2005 01:00
von MARTIN
oder wo lag nun der Fehler?
Code: Alles auswählen
StartDrawing(WindowOutput())
DrawImage(666,10,10);<- Hier, richtig wäre DrawImage(UseImage(666) ,10,10) oder ImageID()
StopDrawing()
Grafik in EXE
Verfasst: 27.01.2005 03:43
von Hroudtwolf
Also bei meinem ZX81(das was so um 1985) hab ich das so gemacht.
[c]
PRINT "############"
PRINT "##++++++++##"
PRINT "##+##++##+##"
PRINT "##+##++##+##"
PRINT "##++++++++##"
PRINT "##+##++##+##"
PRINT "##+######+##"
PRINT "##++++++++##"
PRINT "############"
[/c]