AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte HxD - schneller Hexeditor, Disk-Editor und RAM-Editor
Thema durchsuchen
Ansicht
Themen-Optionen

HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

Ein Thema von mael · begonnen am 4. Feb 2005 · letzter Beitrag vom 11. Feb 2021
Antwort Antwort
Seite 22 von 32   « Erste     12202122 2324     Letzte »    
Benutzerbild von mael
mael

Registriert seit: 13. Jan 2005
391 Beiträge
 
Delphi XE3 Professional
 
#1

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 31. Mär 2008, 23:16
Hallo Frank,
Zitat von _frank_:
ich hab da mal nen bug in der aktuellen stable gefunden...

wenn ich eine neue Datei erstelle (Datei->neu) und versuche etwas zu schreiben (Einfüge- und Überschreib-Modus, text und hex-bereich) bekomme ich mit der neuen Version die Fehlermeldung:
Danke, habe den Fehler korrigiert. Werde noch ein bißchen warten ob weitere Fehlermeldungen kommen bevor ich die neue Version hochlade.

Zitat von _frank_:
hast du schonmal überlegt hxd evtl. Opensource zu machen?
Ist zuviel Arbeit drin, die ich eventuell mal in anderen Projekten verwenden kann. Deswegen Freeware aber nicht OpenSource.
HxD, schneller Hexeditor:
http://mh-nexus.de/hxd
  Mit Zitat antworten Zitat
Junior22

Registriert seit: 29. Mär 2008
3 Beiträge
 
Delphi 7 Professional
 
#2

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 1. Apr 2008, 21:57
Hallo mael
Du wann kann man mit der englischen version 1.7.5 rechnen? bzw solltest du mal deine hp auf aktuelsten stand bringen.
Habe dein Programm in einem forum postet und die dachten es währe ein april schertz meiner seitz.
Ps Ein super Tools nutze ich nur^^
  Mit Zitat antworten Zitat
Benutzerbild von mael
mael

Registriert seit: 13. Jan 2005
391 Beiträge
 
Delphi XE3 Professional
 
#3

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 2. Apr 2008, 01:29
Auf meiner Website ist absichtlich noch nicht die neuste Version verfügbar (zumindest nicht über einen Link), weil ich erst noch abwarten wollte ob Fehlermeldungen kommen bevor ich die neue Version "ganz groß" veröffentliche.

In ein paar Tagen sollte es aber soweit sein, ich schreibe dann hier nochmal rein.
HxD, schneller Hexeditor:
http://mh-nexus.de/hxd
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#4

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 11. Apr 2008, 10:40
so wie es aussieht kann ich im Ram-Modus nicht mehr suchen.
hab den explorer-prozess geladen und einfach bei suchen nach textstring+unicode gesucht...es passiert nix...keine Meldung "nicht gefunden" und kein Treffer. beim schließen des Prozesses eine AV.

was noch schön wäre...wenn man ne zweite instanz startet, dass die erste instanz restored wird.

Gruß Frank
  Mit Zitat antworten Zitat
Benutzerbild von mael
mael

Registriert seit: 13. Jan 2005
391 Beiträge
 
Delphi XE3 Professional
 
#5

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 11. Apr 2008, 13:38
Zitat von _frank_:
so wie es aussieht kann ich im Ram-Modus nicht mehr suchen.
hab den explorer-prozess geladen und einfach bei suchen nach textstring+unicode gesucht...es passiert nix...keine Meldung "nicht gefunden" und kein Treffer. beim schließen des Prozesses eine AV.
Danke, habe ich auch schon gemerkt und korrigiert. Vielleicht kommt heute noch ein Update.

Zitat von _frank_:
was noch schön wäre...wenn man ne zweite instanz startet, dass die erste instanz restored wird.
Wurde aktiviert aber nicht wiederhergestellt. Jetzt auch korrigiert.
HxD, schneller Hexeditor:
http://mh-nexus.de/hxd
  Mit Zitat antworten Zitat
werwiewas

Registriert seit: 13. Apr 2008
2 Beiträge
 
#6

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 13. Apr 2008, 11:30
Hallo Mael,

ich habe eine kurze Anmerkung und Bitte für die nächste "offizielle" Version von HxD:

Das Kopieren von Zeilenumbrüchen in die Zwischenablagae funktioniert nicht (1.7.5 Deutsch). Statt #10 / #13 / #13#10 erhalte ich einfach nur die '.' Punkte aus der Ansicht.

Es wäre besser, stattdessen den Inhalt byte-genau zu kopieren, so daß es möglich ist, einzelne Abschnitte aus großen Binärdateien auch schnell über die Zwischenablage zu extrahieren.

Mögliche Alternative: Export -> Binär in Zischenablage.

Meinungen?
  Mit Zitat antworten Zitat
Benutzerbild von mael
mael

Registriert seit: 13. Jan 2005
391 Beiträge
 
Delphi XE3 Professional
 
#7

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 14. Apr 2008, 15:03
Hallo WerWieWas
Zitat von werwiewas:
Das Kopieren von Zeilenumbrüchen in die Zwischenablagae funktioniert nicht (1.7.5 Deutsch). Statt #10 / #13 / #13#10 erhalte ich einfach nur die '.' Punkte aus der Ansicht.

Es wäre besser, stattdessen den Inhalt byte-genau zu kopieren, so daß es möglich ist, einzelne Abschnitte aus großen Binärdateien auch schnell über die Zwischenablage zu extrahieren.
Die Zeilenumbrüche und andere Steuerzeichen wie Tabulatorzeichen sollten wohl besser erhalten bleiben, das stimmt.
Eine Binärkopie wird es aber nicht werden, da z.B. auch #0-Zeichen vorkommen können und die Windows-Zwischenablage den Text bei einem Nullzeichen abschneidet. Außerdem wird auch der Zeichensatz beachtet (z.B. DOS/OEM anstatt ANSI), also ist es keine wirkliche Binärkopie (das macht aber nichts, da die Bytedaten sowieso zusätzlich kopiert werden). Es geht also sowieso nur um die Textrepräsentation z.B. für den Austausch mit Texteditoren oder um es in der Text-Suche zu verwenden. Beim Kopieren und Einfügen innerhalb HxDs geht nichts verloren.

Das einzige Problem, daß ich bei dieser Umstellung sehe wäre, daß im DOS/OEM-Zeichensatz alle Steuerzeichen außer #0 als spezielle Symbole dargestellt werden wie unter DOS üblich, #13 ist z.B. ein Notenzeichen. Ich denke es ist sinnvoll zu kopieren, daß es so weit wie möglich der Darstellung am Bildschirm entspricht. Punkte sind nur Platzhalter, sie können also problemlos durch die echte Darstellung (sprich Zeilenumbruch) beim Kopieren in die Zwischenablage "ersetzt" werden. Aber das Notenzeichen für #13 z.B. ist nicht nur ein Platzhalter, sondern wird tatsächlich im DOS/OEM-Zeichensatz so dargestellt, ich kann es also nicht einfach durch einen Zeilenumbruch ersetzen.

Die beste Idee die ich bis jetzt dazu habe ist es optional zu machen ob Steuerzeichen (wie #13, #10, etc.) als Steuerzeichen erhalten bleiben, oder Sonderzeichen darzustellen wenn der Zeichensatz es anbietet.

Eine Frage stellt sich noch: Falls Nullzeichen, die nicht als Nullzeichen kopiert werden können, vorkommen, soll der Text an der Stelle abgeschnitten werden oder das Nullzeichen als Punkt(=Platzhalter) in die Zwischenablage kopiert werden?
HxD, schneller Hexeditor:
http://mh-nexus.de/hxd
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#8

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 14. Apr 2008, 16:26
Hi mael,
ich weiß nicht ob diese Bitte schon gestellt wurde, aber wäre es möglich ein "Hex to Dec" bzw. "Dec to Hex" Feld einzubauen? So ähnlich wie manche Suchen (z.B. Firefox oder TV Browser).

MfG
xZise
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
werwiewas

Registriert seit: 13. Apr 2008
2 Beiträge
 
#9

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 15. Apr 2008, 12:11
Zitat von mael:
Die Zeilenumbrüche und andere Steuerzeichen wie Tabulatorzeichen sollten wohl besser erhalten bleiben, das stimmt.
Danke, freut mich zu lesen.

Zitat von mael:
Eine Binärkopie wird es aber nicht werden, da z.B. auch #0-Zeichen vorkommen können und die Windows-Zwischenablage den Text bei einem Nullzeichen abschneidet.
Das stimmt so nicht: Es ist nicht die Windows Zwischenablage, die den Text abschneidet, sondern der Editor, der den Text einfügen. Ich will hier keine Werbung machen, aber es gibt Editoren, die #0 inkl. anschließendem Text problemlos einfügen.

Zitat von mael:
Außerdem wird auch der Zeichensatz beachtet (z.B. DOS/OEM anstatt ANSI), also ist es keine wirkliche Binärkopie (das macht aber nichts, da die Bytedaten sowieso zusätzlich kopiert werden).
Binär <> Zeichensatz! Die 100% Binärkopie ist absolut wichtig, z.B. um Blöcke aus 10 MB XML Dateien zu extrahieren und Parser zu testen.

Zitat von mael:
Es geht also sowieso nur um die Textrepräsentation z.B. für den Austausch mit Texteditoren oder um es in der Text-Suche zu verwenden. Beim Kopieren und Einfügen innerhalb HxDs geht nichts verloren.
Mir geht es eben genau nicht um die Textrepräsentation, sondern um binär ohne wenn und aber!

Alternativ habe ich versucht, aus HxD heraus zu kopieren und in eine neue, leere Datei in HxD einzufügen. Leider geht das nicht, solange die neue Datei noch wirklich leer ist. Fehlermeldung: Ungültige Hex-Werte.

Aber ich will hier bestimmt nicht meckern: HxD ist schon jetzt ein tolles Programm!
  Mit Zitat antworten Zitat
Benutzerbild von mael
mael

Registriert seit: 13. Jan 2005
391 Beiträge
 
Delphi XE3 Professional
 
#10

Re: HxD - schneller Hexeditor, Disk-Editor und RAM-Editor

  Alt 15. Apr 2008, 15:10
Zitat von xZise:
wäre es möglich ein "Hex to Dec" bzw. "Dec to Hex" Feld einzubauen?
Ja, ist geplant

Zitat von werwiewas:
Zitat von mael:
Eine Binärkopie wird es aber nicht werden, da z.B. auch #0-Zeichen vorkommen können und die Windows-Zwischenablage den Text bei einem Nullzeichen abschneidet.
Das stimmt so nicht: Es ist nicht die Windows Zwischenablage, die den Text abschneidet, sondern der Editor, der den Text einfügen. Ich will hier keine Werbung machen, aber es gibt Editoren, die #0 inkl. anschließendem Text problemlos einfügen.
Das Problem ist, daß der Speicher den man über GlobalAlloc für die Kopie in der Zwischenablage reservieren muß größer sein kann als angefordert (Also für "Text" brauche ich 4 oder 5 Bytes (falls Nullzeichen mitkopiert wird), es werden tatsächlich aber 16 Bytes reserviert). In der WinAPI-Dokumentation steht zu GlobalAlloc "The size of a memory block may be larger than the size requested when the memory was allocated.". D.h. entweder enthält das Zwischenablagenformat eine Größenangabe (Bei Bitmaps ist das z.B. Teil des Formats) oder man verwendet GlobalSize um die Anzahl der Bytes zu ermitteln die man aus der Zwischenablage lesen soll. GlobalSize wird aber wie gesagt eventuell mehr zurückgeben als eigentlich reserviert und geschrieben wurde, am Ende stehen also eventuell uninitialisierte Daten. Um zu verhindern daß diese zusätzlichen Daten mit eingefügt werden wird bei Text das #0-Zeichen als Ende-Zeichen verwendet. Dazu gibt es daher keine Alternative. Wäre in Windows das CF_TEXT Format so definiert worden, daß die ersten vier Bytes z.B. die Länge des Textes angeben gäbe es diese Problem nicht, aber da kein aktuelles Programm diese Längenangabe erkennen würde hat dies auch keinen Sinn.

Zum Ansehen der Zwischenablage (mit allen Bytes in "Rohform") habe ich mal was Kleines gemacht: http://mh-nexus.de/downloads/RawClipView.exe (Unter Windows XP liefert GlobalSize normalerweise die "richtigen" Werte, aber es ist nicht garantiert, daß dies immer und in jeder Windows-Version so ist).


Zitat von werwiewas:
Zitat von mael:
Außerdem wird auch der Zeichensatz beachtet (z.B. DOS/OEM anstatt ANSI), also ist es keine wirkliche Binärkopie (das macht aber nichts, da die Bytedaten sowieso zusätzlich kopiert werden).
Binär <> Zeichensatz!
Sicher, "Binär <> Zeichensatz". Lade mal irgendeine Datei in HxD, dann kopiere (in der Textspalte!) einen Teil, einmal mit ANSI-Zeichensatz einmal mit DOS-Zeichensatz, und füge beides in einen Unicode-fähigen Editor ein, z.B. Wordpad/Notepad. Die gleichen Daten werden also zu verschiedenem Text übersetzt und das ist auch so gewollt.

Zitat von werwiewas:
Die 100% Binärkopie ist absolut wichtig, z.B. um Blöcke aus 10 MB XML Dateien zu extrahieren und Parser zu testen.
Es gibt keine Möglichkeit Binärkopien zwischen verschiedenen Programmen zuverlässig über die Zwischenablage auszutauschen, weil das Textformat CF_TEXT vom aktuellen Windows-Zeichensatz abhängig ist und CF_UNICODETEXT zwei Bytes pro Zeichen verwendet. Die einzige Möglichkeit ist eine Folge von Hex-Zeichen die dann wieder zurückkonvertiert werden können.

Das ändert nichts daran, daß HxD zusätzlich eine Binärkopie anlegt, d.h. wenn man innerhalb HxD's kopiert und einfügt bekommt man eine identische Kopie. (Texteditoren können mit "Binärdaten" nicht viel anfangen, denn Text ist immer von einem Zeichensatz abhängig, daher halte ich diese Implementierung für sinnvoll).

Zitat von werwiewas:
Mir geht es eben genau nicht um die Textrepräsentation, sondern um binär ohne wenn und aber!
Zwischen Programmen, abgesehen von Hexeditoren die eine Folge von Hex-Zeichen verstehen ist das nicht machbar. Innerhalb HxDs einfach kopieren und einfügen (strg+c/strg+v) und es sollte eine identische Kopie gemacht werden (unabhängig vom Zeichensatz). Was in der Windows-Zwischenablage als Text steht ist dann unerheblich.

Zitat von werwiewas:
Alternativ habe ich versucht, aus HxD heraus zu kopieren und in eine neue, leere Datei in HxD einzufügen. Leider geht das nicht, solange die neue Datei noch wirklich leer ist. Fehlermeldung: Ungültige Hex-Werte.
Dann muß man auf die Hex-Spalte gehen und von dort kopieren. Falls HxD nicht zwischenzeitlich geschlossen wurde sollte das aber gar nicht passieren (da noch in der internen Zwischenablage).
Wie genau bist Du vorgegangen? Z.B. Kopiert, dann im Texteditor XY bearbeitet, dann wieder eingefügt. Oder kopiert, HxD geschlossen, wieder in HxD eingefügt.
HxD, schneller Hexeditor:
http://mh-nexus.de/hxd
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 22 von 32   « Erste     12202122 2324     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:46 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 by Thomas Breitkreuz