Text in Binärdaten und zurückwandeln?
Moderator: Moderatoren
Text in Binärdaten und zurückwandeln?
Hallo
Habe mit Binärdaten in XBase++ noch nicht viel gemacht und habe folgendes vor:
Ein String mit fester Länge - z-B. 100 Zeichen - müsste in Binärdaten umgewandelt werden und wieder zurück.
Dieser Text soll vor einen beliebigen Dateiinhalt kopiert und an anderer Stelle wieder abgeschnitten werden.
Eventuell ist dieses Vorgehen gar nicht notwendig und ich könnte auch einen normalen Text-String vor die Datei stellen und nachher wieder abschneiden?
Könnte das bei Binärdateien (z.B. EXE) Probleme geben?
Der Hintergrund ist ganz einfach:
Der entsprechenden Datei sollen Zusatzinformationen verpasst werden, z.B. was nach dem Download aus dem Internet damit passieren soll.
Habe mit Binärdaten in XBase++ noch nicht viel gemacht und habe folgendes vor:
Ein String mit fester Länge - z-B. 100 Zeichen - müsste in Binärdaten umgewandelt werden und wieder zurück.
Dieser Text soll vor einen beliebigen Dateiinhalt kopiert und an anderer Stelle wieder abgeschnitten werden.
Eventuell ist dieses Vorgehen gar nicht notwendig und ich könnte auch einen normalen Text-String vor die Datei stellen und nachher wieder abschneiden?
Könnte das bei Binärdateien (z.B. EXE) Probleme geben?
Der Hintergrund ist ganz einfach:
Der entsprechenden Datei sollen Zusatzinformationen verpasst werden, z.B. was nach dem Download aus dem Internet damit passieren soll.
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Text in Binärdaten und zurückwandeln?
Hallo,
Geht es hier darum, dass dein WEB-SERVER Infos an eine binärdatei hängen und dein IMPORTPROGRAMM diese Infos wieder trennen soll ?
Wenn ja ist das recht einfach. Du bist Herr dessen was versand wird. Du musst nur eine eindeutige Kennung zwischen beides bringen und der
MIME Datentyp muss auf binär (irgendwas mit octed ...) stehen.
Der Server (CGI / XB2NET / etc.):
Der Empfänger (eine EXE ...)
eventuell muss man das ganze auch noch encoden() ... base64 z.B. ... dabei immer die Reihenfolge der Verarbeitung beachten und umdrehen.
Geht es hier darum, dass dein WEB-SERVER Infos an eine binärdatei hängen und dein IMPORTPROGRAMM diese Infos wieder trennen soll ?
Wenn ja ist das recht einfach. Du bist Herr dessen was versand wird. Du musst nur eine eindeutige Kennung zwischen beides bringen und der
MIME Datentyp muss auf binär (irgendwas mit octed ...) stehen.
Der Server (CGI / XB2NET / etc.):
Code: Alles auswählen
cInfo := "was auch immer"
cTrenner := "##1#2#3#4#5#6#7##"
cExe := FileToString(...)
cSend := cInfo + cTrenner + cEXE
Code: Alles auswählen
cEmpfang := ...
x = at(... Trenner suchen)
cInfo := left(cEmpfang,x-1)
cExe := substr(cEmpfang,x+len(cTrenner))
Str2Disk(nExeName, cExe)
eventuell muss man das ganze auch noch encoden() ... base64 z.B. ... dabei immer die Reihenfolge der Verarbeitung beachten und umdrehen.
Gruß
Hubert
Hubert
Re: Text in Binärdaten und zurückwandeln?
genau richtig, Hubert, so soll das laufen.
Ein Teil der Arbeit erledigt das Datenbanksystem auf dem WebServer (die Recherche).
Wenn die Daten gefunden sind wird der Rest lokal erledig.
Und damit der Benutzer die Recherchewerte nicht noch einmal eingeben muss sollen diese mit übertragen werden und die lokale Ergebnisanzeige damit gestartet werden.
Wenn das was mir (und meinem Kunden) vorschwebt funktioniert ist das dann eine feine Sache.
Wenn es läuft zeige ich das auch gerne hier...
Ein Teil der Arbeit erledigt das Datenbanksystem auf dem WebServer (die Recherche).
Wenn die Daten gefunden sind wird der Rest lokal erledig.
Und damit der Benutzer die Recherchewerte nicht noch einmal eingeben muss sollen diese mit übertragen werden und die lokale Ergebnisanzeige damit gestartet werden.
Wenn das was mir (und meinem Kunden) vorschwebt funktioniert ist das dann eine feine Sache.
Wenn es läuft zeige ich das auch gerne hier...
Re: Text in Binärdaten und zurückwandeln?
Ergänzung:
werde das vielleicht anders lösen:
in meine Datei auf dem WebServer werde ich nur die Kommandos für mein lokales Programm schreiben. Z.B.:
Das XBase++-Programm lädt dann die Datei "test.pdf" vom WebServer,
startet den Viewer und das Such-Tool.
Dann muss ich die Original-Datei nicht verändern.
werde das vielleicht anders lösen:
in meine Datei auf dem WebServer werde ich nur die Kommandos für mein lokales Programm schreiben. Z.B.:
Das XBase++-Programm lädt dann die Datei "test.pdf" vom WebServer,
startet den Viewer und das Such-Tool.
Dann muss ich die Original-Datei nicht verändern.
Re: Text in Binärdaten und zurückwandeln?
Hallo Hubert
habe das jetzt mit der Steuerdatei gelöst - und es funktioniert.
Sollte das jetzt nur in einer anderen Programmiersprache machen,
damit ich nur eine EXE habe beim Kunden...
habe das jetzt mit der Steuerdatei gelöst - und es funktioniert.
Sollte das jetzt nur in einer anderen Programmiersprache machen,
damit ich nur eine EXE habe beim Kunden...
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Text in Binärdaten und zurückwandeln?
Das verstehe ich jetzt aber nicht, welche Sprachen hast du denn nötig ?
Xbase++ kann (mit LoadFromUrl() aus Wissensbasis oder AsiNet) die Steuerdatei und die PDF downloaden und den Viewer auch steuern ...
Xbase++ kann (mit LoadFromUrl() aus Wissensbasis oder AsiNet) die Steuerdatei und die PDF downloaden und den Viewer auch steuern ...
Gruß
Hubert
Hubert
Re: Text in Binärdaten und zurückwandeln?
Hallo Hubert
jetzt mache ich das ja mit LoadFromURL() und es geht (hatte ich ja schon geschrieben).
Dieses "Front-End"-Tool soll möglichst einfach zu installieren sein. Am einfachsten wäre da eben eine einzige EXE. Und das ist mit XBase++ nicht zu schaffen. Muss ja auch nicht, schließlich hat XBase++ ja Datenbankaufgaben...
Der User welcher irgendwo sitzt und das Tool verwenden müsste soll es da maximal einfach haben.
Natürlich - wenn ich es nicht anders hinbringe - wird dann eben ein selbstextrahierendes EXE herhalten für die Installation mit zig DLLs.
(Meine Zeiten mit C++ sind schon eine Weile her, da müsste ich mich erst wieder einarbeiten.)
jetzt mache ich das ja mit LoadFromURL() und es geht (hatte ich ja schon geschrieben).
Dieses "Front-End"-Tool soll möglichst einfach zu installieren sein. Am einfachsten wäre da eben eine einzige EXE. Und das ist mit XBase++ nicht zu schaffen. Muss ja auch nicht, schließlich hat XBase++ ja Datenbankaufgaben...
Der User welcher irgendwo sitzt und das Tool verwenden müsste soll es da maximal einfach haben.
Natürlich - wenn ich es nicht anders hinbringe - wird dann eben ein selbstextrahierendes EXE herhalten für die Installation mit zig DLLs.
(Meine Zeiten mit C++ sind schon eine Weile her, da müsste ich mich erst wieder einarbeiten.)
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Text in Binärdaten und zurückwandeln?
Jetzt verstehe ich, was du mit einer EXE gemeint hast
PS: OHNE GUI braucht man nicht viele DLL Dateien !
Sowas mach ich dann mit PowerBasic, wobei Xbase++ beim download schneller ist.
Die Befehle von PowerBasic (für TCPIP Sockets) warten immer auf timeouts, das muss aber ein Fehler in meiner Verwendung sein ...
PS: OHNE GUI braucht man nicht viele DLL Dateien !
Sowas mach ich dann mit PowerBasic, wobei Xbase++ beim download schneller ist.
Die Befehle von PowerBasic (für TCPIP Sockets) warten immer auf timeouts, das muss aber ein Fehler in meiner Verwendung sein ...
Gruß
Hubert
Hubert