Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Binärdateien (https://www.delphipraxis.net/2081-binaerdateien.html)

Mr_T 6. Jan 2003 11:32


Binärdateien
 
Hi Leute!
Ich habe ein kleines Preoblem: für ein Projekt von mir brauche ich reine Binärdateien. Kann man irgendwie dem Delphi-Compiler beibringen, dass dieser reine Binärfiles ausgeben soll? Wenn ja, wie?
Vielen Dank schonmal

sakura 6. Jan 2003 12:37

Was genau willst Du machen? Letztenendes ist auch eine Textdatei eine Binärdatei. Jede EXE ist eine Binärdatei... Was ist Dein Ziel :?:

CalganX 6. Jan 2003 12:41

Er meint sicher, dass er Dateien auslesen will, die nur aus 1 und 0 besteht (also vom Inhalt). Und ich denke, dass er diese Speichern will, dass jeder Block eine Bedeutung hat.

Chris

Christian Seehase 6. Jan 2003 13:50

Moin Chris,

ob man eine Datei als Binär, oder als Textdatei auffasst ist reine Definitionssache.
Lange Zeit galten Dateien, die keine binären Nullen enthielten als Textdateien, bzw. Dateien die diese enthielten als Binärdateien.
Im Zuge von Unicode dürfte sich diese Ansicht aber wohl erledigt haben.

Mr_T 6. Jan 2003 16:17

Ich meinte damit ne Ausführbare Datei, ohne EXE-Header, die bei Offset 0 beginnt, das heißt: auch keine Com-file......

sakura 6. Jan 2003 17:00

Delphi-Exec-Dateien sind immer EXE Files, allein schon wegen der Resourcen... EXE-Files sind auch (gerade) Binär-Files. (Command.com und Co sind die wenigen Ausnhamen)

Nop, der Delphi-Compiler, macht keine COM-Files.

Christian Seehase 6. Jan 2003 18:11

Moin Mr. T,

oder reicht es Dir, wenn Du Object Files für C/C++ erzeugst?

Das könntest Du über Projekt\Optionen\Linker einstellen.

Mr_T 7. Jan 2003 14:45

Also die Sache ist folgendes: Ich code mom relativ viel in ASM, so das mir irgendwann der Wunsch gekommen ist, mal es ein wenig mit Systemprogrammieren auszunehmen. Das funzt auch soweit ganz gut, blos wird für längere Sachen ASM dann doch ziemlich nerfig... mein Paln war also, mir selber ein Paar Units zu schreiben (welche den nötigen ASM - Code enthält) und dann mit Delphi/Pascal diese Units zu verwenden d.h: ne Art Konsolenanwendung zu bauen, die meine System-Units verwendet. Problem: das Delphi-Ausgabevormat ist nunmal EXE, was in meinem Falle total unbrauchbar ist, da logischerweite Flat-Binärys, die genau bei Offset 0 beginen am besten sind.... vieleicht versteht ihr mich nun besser
(Auf solche Sachen wie Resourcen, usw kann ich also verzichten... besser:ich kann sie gar nicht verwenden....)

Christian Seehase 7. Jan 2003 14:52

Moin Mr T,

das hab' ich jetzt nicht so ganz verstanden.
Du kannst Deine ASM Units doch ganz einfach als Units mit einbinden, oder, wenn Dir das nichts hilft, als Sourcen direkt (Include Dateien).

Mr_T 7. Jan 2003 16:24

Ok, ich glaube, ich muss das nochmal erklären: Ich schreibe an einem eigenen kleinen OS, welches also auch eigene Funktionen mitbringt (alle Windows-Funktionen gibts net mehr). Nun will ich dafür Programme schreiben, blos ist es sehr umständlich, diese Komplett in ASM schreiben zu müssen. Meine Idee war nun, mir Delphi-Units zu schreiben, welche in ASM - Blöcken die Betriebssystemfunktionen kapseln, und damit meine Programme zu schreiben. Mein Prob liegt nun an sich nur noch darin, dass leider Delphi nur EXE-Files ausgeben will, das heißt, dass diese Dateien nen EXE-Header, Resourcen,usw drinne haben. Leide kann ich für die ganze Angelegenheit aber nur Ausführbare Files gebrauchen, die genau bei 0 beginen, was heißt, das weder Res, noch irgendwelche Fileheader drin gesaved sind.....
Wie ich sehe, scheint dies mit Delphi aber leider nicht mögluich zu sein.... kennt irgendwer vielleicht ne freie Pascal-Entwicklungsumgebung, mit der dies evtl machbar wäre? einige C-Compiler sollen dies zumindest können.....


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz