Autor Beitrag
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 04.10.08 23:21 
Der sieht sehr interessant aus...
...und ähnlich zu dem was ich vor hatte.

Wenn du da noch eine Komponente drum bauen würdest, der man den Pfad zum HxD gibt und dann per Befehl einen Stream angeben könnte, dessen Adresse dann extern an HxD übergeben wird, sodass dort der Streaminhalt sichtbar und inspizierbar wäre, wäre das zur Analyse von Streamoperationen sehr schön.

Ich hatte das so ähnlich wie in deinem Screenshot als Komponente vor, die dann ein ähnliches Formular anzeigt, aber wenn das mit HxD ginge wäre das eine schöne Lösung.
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Sa 04.10.08 23:27 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Wenn du da noch eine Komponente drum bauen würdest, der man den Pfad zum HxD gibt und dann per Befehl einen Stream angeben könnte, dessen Adresse dann extern an HxD übergeben wird, sodass dort der Streaminhalt sichtbar und inspizierbar wäre, wäre das zur Analyse von Streamoperationen sehr schön.

Ich hatte das so ähnlich wie in deinem Screenshot als Komponente vor, die dann ein ähnliches Formular anzeigt, aber wenn das mit HxD ginge wäre das eine schöne Lösung.

Wäre dann nicht eine IPC-basierte API besser geeignet? Sprich, dass du den HxD einmal über solch eine Komponente startest und dann über einen IPC-Kanal (z.B. mit Shared Mem) zwischen den beiden Instanzen die Daten austauschen kannst?

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 04.10.08 23:46 
Ich hatte eher daran gedacht, dass mit den Parametern die neue Instanz der alten die Parameter übergibt und so die Anzeige aktualisiert, aber so wäre natürlich eine bessere Lösung, die aber auch mehr Aufwand bedeutet.

Egal wie realisiert würde mich ein solches Feature jedenfalls sehr interessieren.
uall@ogc
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1826
Erhaltene Danke: 11

Win 2000 & VMware
Delphi 3 Prof, Delphi 7 Prof
BeitragVerfasst: Di 07.10.08 12:45 
Wird es auch irgendwann mal Pluginsupport geben? Ich würd ja schon gerne z.B. ein Plugin erstellen welches Programmdateien (.exe) anzeigen kann (Import/Export/Relocation Sections, Assembler Instructions, Resourcen etc.)

_________________
wer andern eine grube gräbt hat ein grubengrabgerät
- oder einfach zu viel zeit
Hidden
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Di 07.10.08 12:53 
user profile iconuall@ogc hat folgendes geschrieben Zum zitierten Posting springen:
Wird es auch irgendwann mal Pluginsupport geben? Ich würd ja schon gerne z.B. ein Plugin erstellen welches Programmdateien (.exe) anzeigen kann (Import/Export/Relocation Sections, Assembler Instructions, Resourcen etc.)

Schreib' doch schonmal los und schick' ihm den Quelltext :mrgreen:

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Do 23.10.08 20:52 
Hallo mael,

gibts eigentlich eine Setuplose Variante? Ich versuche gerade hier in der Uni dein Setup auszuführen - aber ich bin leider kein Admin und 7zip kann des Setup auch nicht entpacken :(.

Grüße
Heiko
mael Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 198
Erhaltene Danke: 39


Delphi XE3 Prof.
BeitragVerfasst: Do 23.10.08 21:17 
user profile iconHeiko hat folgendes geschrieben Zum zitierten Posting springen:
gibts eigentlich eine Setuplose Variante?

Verwende doch die portable Version von der Download-Seite: mh-nexus.de/de/downloads.php?product=HxD

user profile iconuall@ogc hat folgendes geschrieben Zum zitierten Posting springen:
Wird es auch irgendwann mal Pluginsupport geben?
Wird es geben, aber das wird nicht in naher Zukunft sein.

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Wenn du da noch eine Komponente drum bauen würdest, der man den Pfad zum HxD gibt und dann per Befehl einen Stream angeben könnte, dessen Adresse dann extern an HxD übergeben wird, sodass dort der Streaminhalt sichtbar und inspizierbar wäre, wäre das zur Analyse von Streamoperationen sehr schön.

Was man machen kann ist den Streaminhalt in eine Datei speichern, und diese in HxD geöffnet lassen. Da HxD automatisch die Datei neulädt wenn sie sich ändert wäre damit auch der Inhalt immer synchron. Alles andere würde eine kompliziertere API bzw. Skripting benötigen (was ähnlich wie Plugins nicht in naher Zukunft kommt). Alternativ kann man sonst das Programm im RAM-Editor von HxD ansehen, und per "Suchen|Gehe-zu" an die gewünschte Adresse springen. Die Offsets im RAM-Editor und die virtuelle Adresse in deinem Programm sind ja gleich.
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Fr 24.10.08 11:12 
user profile iconmael hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconHeiko hat folgendes geschrieben Zum zitierten Posting springen:
gibts eigentlich eine Setuplose Variante?

Verwende doch die portable Version von der Download-Seite: mh-nexus.de/de/downloads.php?product=HxD


Arg danke. Ich war schon auf der Seite - aber die portable Verison hatte ich nicht gefunden :(. Kannst du ggf. die Portable und die installierbare hintereinander machen? Also die Seite nicht nach installierbar/portable und anschließend nach Sprache zu sortieren, sondern zu erst nach Sprache?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 24.10.08 11:26 
user profile iconmael hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Wenn du da noch eine Komponente drum bauen würdest, der man den Pfad zum HxD gibt und dann per Befehl einen Stream angeben könnte, dessen Adresse dann extern an HxD übergeben wird, sodass dort der Streaminhalt sichtbar und inspizierbar wäre, wäre das zur Analyse von Streamoperationen sehr schön.
[...] Alternativ kann man sonst das Programm im RAM-Editor von HxD ansehen, und per "Suchen|Gehe-zu" an die gewünschte Adresse springen. Die Offsets im RAM-Editor und die virtuelle Adresse in deinem Programm sind ja gleich.
So meinte ich das ja. Dass zum Beispiel mit Kommandozeilenparameter HxD mit dem eigenen Programm an der Adresse im RAM gestartet wird und dann zum Beispiel per Windows-Botschaft die Anzeige von Änderungen in HxD angefordert werden und die jeweils aktuelle Größe übergeben wird. So ließe sich der Teil hervorheben, der zum Stream gehört.

Aber wenn das nicht kommt, werde ich auch irgendwann hoffentlich mit meiner Komponente fertig werden, die das dann komplett in der Exe einkompiliert bietet. Dein Editor hätte allerdings mehr Funktionen ;-).
mael Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 198
Erhaltene Danke: 39


Delphi XE3 Prof.
BeitragVerfasst: So 26.10.08 14:31 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
So meinte ich das ja. Dass zum Beispiel mit Kommandozeilenparameter HxD mit dem eigenen Programm an der Adresse im RAM gestartet wird und dann zum Beispiel per Windows-Botschaft die Anzeige von Änderungen in HxD angefordert werden und die jeweils aktuelle Größe übergeben wird. So ließe sich der Teil hervorheben, der zum Stream gehört.

Das mit der Windows-Botschaft und dem Kommandozeilenparameter wäre natürlich möglich, aber ich würde lieber eine allgemeine API entwickeln um zu vermeiden dass dann ein Wust aus Einzellösungen entsteht. Daher kommt sowas zusammen mit dem Skripting und somit nicht so bald.

user profile iconHeiko hat folgendes geschrieben Zum zitierten Posting springen:
Kannst du ggf. die Portable und die installierbare hintereinander machen? Also die Seite nicht nach installierbar/portable und anschließend nach Sprache zu sortieren, sondern zu erst nach Sprache?

Werde ich in Zukunft umorganisieren. Wahrscheinlich werde ich all die verschiedenen Sprachversionen in Zukunft in eine Datei machen, dann wird es übersichtlicher. Oder auch die Sprache des Webseitenbesuchers wie bei der Firefox-Seite erkennen und nur diese Version anzeigen, mit einem Hinweis auf weitere verfügbare Sprachen.
mindtrap
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 62



BeitragVerfasst: Fr 31.10.08 12:53 
Titel: Bugreport
Hi mael,

ich verwende deinen Hexeditor sehr intensiv, gerade weil ich damit bequem Festplatten etc. anzeigen lassen kann.
(Kurz, ein großes Lob an dich.)

Leider habe ich einen Bug zu berichten:

Die Version: 1.7.6.5
Benutzung: Ich hatte einen USB-Stick gerade in HxD überprüft.
Fehler:
1. Per Ctrl-C habe ich Bytes kopiert und in einen Texteditor (PSPad) eingefügt.
2. Danach habe ich mit Ctrl-C weitere Bytes in HxD kopieren wollen, dabei bekam ich die Fehlermeldung:
"Class already exists."
Bei einem erneuten Versuch bekomme ich die Fehlermeldung
"Zwischenablage kann nicht geöffnet werden." (Dabei bleibt es dann auch.)

Vielleicht spielt es eine Rolle, vielleicht auch nicht:
HxD hatte ich für den Zugriff auf das Device natürlich mit Adminrechten geöffnet, PSPad natürlich nicht. ;)

MfG
mindtrap

P.S.:
Evtl. könntest du noch eine Anpassung machen, was die Rechte zum Bearbeiten von Devices betrifft. Bei USB-Sticks braucht man (in der Regel) keine Adminrechte. Vmtl. verwendest du CreateFile, dann müsstest du bei ungenügenden Zugriffsrechten den Returncode ERROR_ACCESS_DENIED bekommen und könntest den User darauf hinweisen, dass nicht alle Laufwerke aufgrund zu weniger Rechte zugänglich sind. Ist aber nur ein Nice-To-Have. :D

Wenn du magst, schreib ich den Code dafür.
mael Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 198
Erhaltene Danke: 39


Delphi XE3 Prof.
BeitragVerfasst: Mo 03.11.08 19:25 
Titel: Re: Bugreport
user profile iconmindtrap hat folgendes geschrieben Zum zitierten Posting springen:

1. Per Ctrl-C habe ich Bytes kopiert und in einen Texteditor (PSPad) eingefügt.
2. Danach habe ich mit Ctrl-C weitere Bytes in HxD kopieren wollen, dabei bekam ich die Fehlermeldung:
"Class already exists."
Bei einem erneuten Versuch bekomme ich die Fehlermeldung
"Zwischenablage kann nicht geöffnet werden." (Dabei bleibt es dann auch.)

Ja, Danke. Das ist ein Bug in der Zwischenablagenlogik. Habe ich korrigiert, wird bald eine neue Version geben.

user profile iconmindtrap hat folgendes geschrieben Zum zitierten Posting springen:

Evtl. könntest du noch eine Anpassung machen, was die Rechte zum Bearbeiten von Devices betrifft. Bei USB-Sticks braucht man (in der Regel) keine Adminrechte.

Das passiert eigentlich schon, wenn mindestens ein logisches und ein physisches Laufwerk geöffnet werden können sollte keine Fehlermeldung erscheinen.
Bist Du sicher, dass die nötigen Rechte zum Öffnen des USB-Sticks da sind?
mael Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 198
Erhaltene Danke: 39


Delphi XE3 Prof.
BeitragVerfasst: Sa 08.11.08 22:05 
Neue Version (1.7.6.6)

  • Verbesserungen
    • Backup-Dateien werden nun so erstellt, dass alle Meta-Daten erhalten bleiben. Außerdem wird nun .bak angehängt anstatt die Dateierweiterung zu ersetzen.
    • Der RAM-Editor kann nun feststellen ob ein Prozess beendet wurde und aktualisiert die Anzeige dann so dass nur ein gefalteter Abschnitt angezeigt wird, der den ganzen Bereich 0x0 bis 0xFFFFFFFF umfäßt.
    • Die Liste der Änderungen in der "Update suchen"-Funktion wird nun formatiert angezeigt, mit Einrückungen, Listen und klickbaren Links.

  • einige Korrekturen
  • weitere Anpassungen kleinerer Details und interner Funktionen

Eine genauere Liste der Änderungen können Sie hier finden (Englisch): mh-nexus.de/en/hxd/changelog.php

Download:
mh-nexus.de/de/downloads.php?product=HxD
mindtrap
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 62



BeitragVerfasst: So 09.11.08 15:12 
Titel: Re: Bugreport
user profile iconmael hat folgendes geschrieben:

user profile iconmindtrap hat folgendes geschrieben:

Evtl. könntest du noch eine Anpassung machen, was die Rechte zum Bearbeiten von Devices betrifft. Bei USB-Sticks braucht man (in der Regel) keine Adminrechte.

Das passiert eigentlich schon, wenn mindestens ein logisches und ein physisches Laufwerk geöffnet werden können sollte keine Fehlermeldung erscheinen.
Bist Du sicher, dass die nötigen Rechte zum Öffnen des USB-Sticks da sind?


Ziemlich, da ein Programm von mir (mit den gleichen Userrechten), den Bootsektor des USB-Sticks (erfolgreich) manipuliert.
Hier die Meldung, verwendet wird Vista64:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
---------------------------
HxD
---------------------------
Sie benötigen Administratorrechte um direkten Zugriff auf Laufwerke zu erhalten!



Ab Windows Vista, mit aktiviertem Benutzerkontenschutz (UAC), muß HxD explizit als Administrator ausgeführt werden, auch wenn Sie als Administrator angemeldet sind. Dies ist z.B. mit dem Eintrag "Als Administrator ausführen" im Explorer-Kontextmenü möglich, das bei einem Rechtsklick auf das HxD-Startsymbol erscheint.
---------------------------
OK   
---------------------------


Die Meldung ist selbsterklärend, aber in diesem Fall sind Adminrechte garnicht nötig.

(Danke für die neue Version)
mael Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 198
Erhaltene Danke: 39


Delphi XE3 Prof.
BeitragVerfasst: Mo 10.11.08 15:19 
Titel: Re: Bugreport
user profile iconmindtrap hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconmael hat folgendes geschrieben:

user profile iconmindtrap hat folgendes geschrieben:

Evtl. könntest du noch eine Anpassung machen, was die Rechte zum Bearbeiten von Devices betrifft. Bei USB-Sticks braucht man (in der Regel) keine Adminrechte.

Das passiert eigentlich schon, wenn mindestens ein logisches und ein physisches Laufwerk geöffnet werden können sollte keine Fehlermeldung erscheinen.
Bist Du sicher, dass die nötigen Rechte zum Öffnen des USB-Sticks da sind?


Ziemlich, da ein Programm von mir (mit den gleichen Userrechten), den Bootsektor des USB-Sticks (erfolgreich) manipuliert.

Hm, das müßte man dann mal genauer testen. Ist es sowohl als physisches (\\.\PhysicalDriveX) als auch als logisches Laufwerk (\\.\A-Z) beschreibbar?
Boldar
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1555
Erhaltene Danke: 70

Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
BeitragVerfasst: Mi 31.12.08 15:47 
Hi,
Erstmal ein großes Lob:
Respektable Leistung!!
Aber: ich hätte gerne noch eine Funktion in HXD:
Undzwar sollen die Suchergebnisse irgendwo aufgelistet sein, und man soll in den Ergebnissen nochmals suchen können.
Wäre das möglich?
[Ich weiss dass es mir eigentlich nicht zusteht, sowas zu verlangen, aber villeicht ist es ja nicht allzuviel Aufwand...]
mfg Boldar
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Fr 20.02.09 13:54 
Hallo Mael,

hab nen Vorschlag für HxD: Was hälst du von einem reinem Textmodus? Ich habe hier z.B. gerade eine 2GB bzw 4GB Logdatei von meinem Virenscanner und will mal reinschauen, was da soviel Einträge verursacht hat. Problem: alle meine Textprogramme scheitern an der enormen Größe. HxD dagegen lädt die Daten ja OnTheFly, also nicht alles in den RAM. Genau das könnte ich hier gebrauchen. Bestünde die Möglichkeit da was zu machen? Denn mit den ganzen Punkten zw. jedem Zeichen kann man den Text schlecht lesen ;).

Grüße
Heiko
galagher
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2510
Erhaltene Danke: 44

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: Fr 20.02.09 21:49 
Ja, die Idee hat was! Man könnte dann umschalten zwischen Hex- und Textdarstellung. Würde mir auch gefallen!

_________________
gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Fr 20.02.09 22:06 
user profile icongalagher hat folgendes geschrieben Zum zitierten Posting springen:
Man könnte dann umschalten zwischen Hex- und Textdarstellung.

Vor allem bei Dateiformaten die man nicht kennt und dem entsprechend zuerst mit nem Hex-Editor öffnet, bevor man merkt das es ist Text und den Editor verwenden kann (sofern er mit >2GB-Dateien klar kommt). Hauptproblem was ich dabei nur sehe: eigentlich ist es nicht direkt Aufgabe eines HexEditor und zweitens ist es "schwer" herauszufinden wie lang der Scrollbalken sein muss, wieviel Bytes er weiterlesen muss, und welche Zeichenkodierung drin ist (evtl. Option)
Hidden
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Sa 21.02.09 11:23 
Hi :)

Mit anderen Anzeigemöglichkeiten wäre doch noch sehr viel mehr drin: Z.B. in eine .Exe sind ja häufiger Bilder, etc. integriert. HxD könnte dann einige Header erkennen und die Möglichkeit bieten, solche integrierten Dateien als Bild-, Audio- oder Videodatei anzuzeigen(wobei Bild sicherlich das mit Abstand einfachste und wohl eventuell einzig lohnende ist).

mfG,

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)