Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Angehängtes Bild anzeigen?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Pille95



Anmeldungsdatum: 11.10.2008
Beiträge: 48
Wohnort: Kuhdorf

BeitragVerfasst am: 09.11.2009, 20:46    Titel: Angehängtes Bild anzeigen? Antworten mit Zitat

hallo,
ich hoffe ich nerve nicht mit meinen noobfragen xD. hab die sufu benutzt aber nichts gefunden. ich hab mit dem code hier:
Code:
CLS
? "***************"
? "Datei anhaengen"
? "***************"
? ""
DIM ort AS INTEGER
DIM a AS UBYTE
DIM lang AS UINTEGER
DIM AS STRING exe,file


INPUT "Name der Exe-Datei: ",exe
? ""
INPUT "Name der anzuhaengenden Datei: ",file
 
OPEN exe FOR BINARY AS #1 
OPEN file FOR BINARY AS #2
 
lang=LOF(1)
? ""
?     "Die Exe-Datei ist "; lang; " Bytes lang."
? ""
INPUT "Ab welcher Byte-Nummer soll die Datei anhaengt werden? ",ort
 
IF ort<=lang THEN
       
    CLS
    ? "*******"
    ? "Fehler!"
    ? "*******"
    COLOR 4
    ? ""
    ? "Sie schreiben vor das Datei-Ende!"
    ? "Dadurch kann die Exe Datei beschaedigt werden!"
    ? "Vorgang abgebrochen."
    SLEEP                                       
ELSE
    ? ""
    ? "Vorgang gestartet..."
    SEEK 1,ort
 
    DO
        GET #2,,a
        PUT #1,,a
    LOOP UNTIL EOF(2)
    ? ""
    ? "Vorgang abgeschlossen."                     
END IF
SLEEP

ein bild an ne exe angehängt die dieses wiederum über bload öffnen sollte. das hat nur i.wie nicht geklappt. muss ich trotz das das bild an die exe angehängt is ein verzeichnis angeben? den ich wollte eine exe schreiben und die bilder eigentlich nicht in einem ordner mit der exe packen.
Hilfe!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Muttonhead



Anmeldungsdatum: 26.08.2008
Beiträge: 566
Wohnort: Jüterbog

BeitragVerfasst am: 09.11.2009, 22:22    Titel: Antworten mit Zitat

Ich gehe mal davon aus, dass das nicht so einfach geht, ein Bild o.ä binär an eine Execute zu hängen und
diese danach noch lauffähig ist.

Für die Einbindung von Recourcen ist 28398 der Fachmann lächeln

Ansonsten hab ichs mal so gemacht, siehe
http://forum.qbasic.at/viewtopic.php?t=6350
wenns denn nicht mördergrosse BMPs sind

Mutton
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 09.11.2009, 23:28    Titel: Antworten mit Zitat

Da eine EXE genau weiß, wo sie endet, ist es problemlos möglich, Dateien an eine EXE dranzuhängen. Hab ich selber bei diversen Programmen so gemacht.
Im Prinzip sehr einfach:

- Ende der EXE-Datei merken (LOF-Befehle), ende& = Lof(1)
- Dort die Daten hinpacken
- Hintendran das LONG von vorher packen: put #1,,ende&

Zum Auslesen:
- Get #1, Lof(1) - 4, ende&
- Seek #1, ende&
- Daten lesen... (LOF(1) - ende& - 4 bytes)

Das kann man natürlich beliebig erweitern, damit es auch mehrere dateien unterstützt (index-tabelle bilden) - kreativität ist gefragt!
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Muttonhead



Anmeldungsdatum: 26.08.2008
Beiträge: 566
Wohnort: Jüterbog

BeitragVerfasst am: 10.11.2009, 00:25    Titel: Antworten mit Zitat

... da hab ich wohl mal wieder Müll verbreitet *kopfkratz*
(Naja, warum soll der Tag nicht genau so enden, wie er angefangen hat - bescheiden)
Meinen obigen Post bitte löschen!!!
grinsen
War felsenfest überzeugt dat beim Anhängen irgend wer meckert
Mutton
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 10.11.2009, 12:07    Titel: Antworten mit Zitat

Hallo,

praktischer als die Anhängevariante mit anschließendem Öffnen der eigenen EXE-Datei im BINARY-Modus, wie man sie in QB benutzt hat, könnte in FreeBASIC Folgendes sein: http://www.freebasic.net/forum/viewtopic.php?t=8504

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Muttonhead



Anmeldungsdatum: 26.08.2008
Beiträge: 566
Wohnort: Jüterbog

BeitragVerfasst am: 10.11.2009, 20:33    Titel: Antworten mit Zitat

muss mich hier doch noch mal reinhängen.

@Jojo: beim "normalen Laden" übernimmt ja BLOAD das korrekte Laden der Bitmap einer .BMP ins Image oder den Screen
Was mache ich aber im BINARY Modus?
Das erinnert mich dann irgendwie an das Chunk-Auslesen einer ungepackten IFF zu AmigaBasic Zeiten.
Ich muss also den Aufbau einer bmp und das interne Bitmap Format
kennen um alles an seinen richtigen Platz "poken" zu können ?

Mutton
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 10.11.2009, 20:52    Titel: Antworten mit Zitat

Es wäre wesentlich einfacher einen fbGFX Puffer abzuspeichern, oder - noch einfacher - reine Bilddaten plus Höhe und Breite. Das reicht bereits, außerdem sparst du dir den Platz für einen BMP Loader. Du brauchst dann zwar ein kleines Hilfsprogramm, dass dir Bilder in dieses Format bringt, das dürfte aber dank Bibliotheken wie FreeImage kein Problem darstellen.
Achja, wenn es etwas flexibler sein soll, würde ich noch den verwendeten Farbraumtypus und die Pixelfarbgrößen (Bei 24-Bit RGB Farben 8/8/cool abspeichern. Farbraum brauchst du aber nicht wirklich, sinnvoll wäre nur die Pixelfarbgrößen (Wieviel Bit jeder Farbanteil belegt)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz