머니박스

서울역지점

Hxd Plugins May 2026

HxD is widely regarded as one of the most reliable freeware hex editors for Windows. While it is celebrated for its speed and ability to handle files of any size, its extensibility through HxD plugins is a specialized area primarily focused on the Data Inspector. Understanding the HxD Plugin Framework

Unlike some editors that use plugins for UI themes or macros, HxD uses a dedicated plugin framework to extend how the editor interprets and displays raw binary data. These plugins allow the Data Inspector (the panel that shows values like integers, floats, or dates) to support custom data types.

Language Support: The official framework provides interfaces for C, C++, and Delphi.

Purpose: Plugins are used to create custom converters that take a selection of bytes and display them as specific, often complex, data structures.

Architecture: Because HxD runs on x86-32 and x86-64, plugins are typically compiled as DLLs. The editor handles memory management for these components, ensuring that strings or byte arrays returned by a plugin are copied safely. Key Features for Developers

If you are looking to develop or use HxD plugins, the framework focuses on several core technical guidelines:

Endianness Handling: Data passed to and from plugins is assumed to be in the architecture's preferred byte order (little-endian for x86).

Modular Implementation: Each plugin manages its own internal memory, reducing the risk of crashes in the main HxD application.

Low-Level Interaction: The plugin interface provides functions like hxdread, hxdwrite, and hxdseek to allow plugins to interact directly with the file buffer. Comparison: Plugins vs. Built-in Features

Many users search for "HxD plugins" to find features that are actually already built into the software:

Data Analysis: HxD includes native tools for checksum/hash generation and graphical statistics.

Exporting: You can export data to formats like C, Pascal, Java, and HTML without additional plugins.

System Access: It provides raw access to main memory (RAM) and disk drives out of the box. Where to Find and Install Plugins

Official and community-driven resources for HxD extensions are primarily hosted on developer platforms:

GitHub: The hxd-plugin-framework repository is the central hub for the API and example code.

MH-Nexus Forum: The official developer forum is the best place to find community-made data inspector plugins or ask for help with the API.

While HxD is powerful, users needing advanced binary templates or heavy scripting might also explore 010 Editor or ImHex, which offer more extensive third-party plugin ecosystems for visual data parsing. 10 Best Hex Editor Software - UltraEdit

, a popular freeware hex editor, the "plugins" feature primarily extends the Data Inspector

. This allows you to add custom type converters so you can view and edit binary data in specialized formats beyond the default options like integers, floats, or dates. Key Feature: Custom Data Type Conversion

The plugin framework is designed to let developers create their own Data Inspector types. Instead of just seeing raw hex bytes (e.g., 48 65 6C 6C 6F

), a plugin can automatically translate those bytes into specific structures, such as: Base64 encoding/decoding directly within the inspector. Custom timestamps for specific operating systems or software. Unique file headers or proprietary data structures used in reverse engineering. How to use or develop them: Open Source Framework

: HxD provides an open-source plugin framework (often including examples like DataInspectorPluginExample.dll

) that allows you to write your own extensions in languages like C++. Installation : Plugins are typically files placed in the folder of your HxD installation directory. : Once installed, these custom types appear in the Data Inspector

panel (usually on the right side of the editor window), where they update in real-time as you click on different offsets in a file. or a guide on how to start coding your own for HxD?

Handy HxD plugin for various conversions like base64 - GitHub 12 Oct 2020 —

Drafting a post about HxD plugins requires highlighting the tool's shift toward extensibility, specifically through its Data Inspector. While HxD was traditionally a static, high-performance editor, the release of version 2.5 introduced a plugin framework that allows developers to add custom data types and disassemblers.

Below are three post drafts tailored for different platforms. Option 1: Technical Deep-Dive (LinkedIn or Blog)

Title: Extending HxD: Building Custom Converters with the New Plugin Framework

For years, HxD has been the gold standard for lightweight hex editing on Windows. However, the recent 2.5 update changed the game by introducing a public plugin interface for the Data Inspector. Why this matters: hxd plugins

Custom Type Support: You can now define your own data structures (e.g., Int24 for WAV files) and see them rendered instantly in the inspector.

Disassembly on the Fly: Developers have already released plugins for retro CPUs like the 6502 and MC6809, making it a powerful tool for ROM hacking.

Simplified Memory Management: The framework handles string/byte array copying automatically, so plugin DLLs don't need a shared memory manager.

If you're a developer working with proprietary binary formats, the HxD Plugin Framework on GitHub provides the C++ and Delphi headers needed to start building your own converters. Option 2: Community & Modding Focus (Reddit or Discord)

Subreddit: r/ReverseEngineering / r/RomHackingHeadline: HxD isn't just a basic editor anymore—Check out these plugins

If you're still using HxD just to search for hex strings, you're missing out on the new plugin ecosystem. Since the 2.5 release, the Data Inspector is fully extensible. Must-have plugins for your toolkit:

Disassembler Plugin: Supports MC6800, 6502, and more. Perfect for looking at retro code directly in your hex view.

Conversion Plugin: Quickly copy data as string literals or Python arrays.

Base64 Tooling: To/from Base64 conversions directly within the editor.

Pro Tip: To install them, just drop the .dll and any required .ini or .csv files into a Plugins sub-directory in your HxD folder. Option 3: Short & Punchy (X/Twitter)

Post Text:HxD Hex Editor just got a major power-up. 🛠️ The new Plugin Framework lets you extend the Data Inspector with custom types and disassemblers.

Check out these community-built tools:✅ Retro CPU Disassembler (6502, 6809)✅ Python Array/Base64 Converter

Time to upgrade your binary analysis game! #ReverseEngineering #HxD #Coding Plugin framework for HxD's data inspector - GitHub

HxD plugins refer to extensions developed for the Data Inspector within the HxD Hex Editor, a popular freeware tool for low-level data manipulation. While HxD is primarily known for its speed and ability to handle files up to 8 exabytes, its plugin framework allows developers to extend its analytical capabilities by creating custom data type converters. The Core: Data Inspector Plugins

The primary application for HxD plugins is the Data Inspector, which interprets raw byte sequences at the current cursor position into human-readable formats like integers, floats, or dates.

Extension Mechanism: The HxD Plugin Framework allows users to create DLLs that act as new "types" in the inspector.

Language Support: Plugins can be written in several languages, including Delphi, C, C++, and PureBasic.

Functionality: These converters translate byte sequences into strings for display and, conversely, translate strings back into bytes for editing. Notable Plugin Examples

Disassembly Plugin: One of the most prominent community-contributed tools is the Disassembly Plugin for HxD. It converts raw machine code into assembly instructions (opcodes) for various CPUs, such as the MC6809 or Intel 8085.

Custom Converters: Experts often build niche converters for proprietary file formats (e.g., specific game save data or scientific logs) to view raw binary as meaningful data instantly. Installation and Usage

To use these plugins, the specific DLLs must be placed in a Plugins folder located in the same directory as the HxD.exe file.

Match Bitness: Both HxD.exe and the plugin DLL must share the same architecture (either both 32-bit or both 64-bit).

Activation: Once installed, the new data types appear automatically in the Data Inspector panel.

Troubleshooting: If types do not appear, users can right-click the Data Inspector and select Options > Reset to refresh the list. Limitations and Future Development

While the Data Inspector is extensible, HxD currently lacks a broad scripting or automation interface comparable to premium rivals like 010 Editor or IDA. The developer has expressed long-term interest in a more comprehensive plugin API that could handle tasks like custom views, highlight areas, or an embedded C-style script interpreter. If you'd like to explore this further, let me know:

If you are looking for a specific plugin (e.g., for game modding or forensics).

If you are a developer looking for technical help with the C/C++ or Delphi headers. If you need help troubleshooting an existing installation. HxD: Plugin interface - mh-nexus.de

HxD is widely considered the peak of Windows hex editors due to its speed and ability to handle massive files and raw memory HxD is widely regarded as one of the

. While the core program is intentionally lean, its functionality can be extended through a Plugin Framework

Here is a blog post exploring how you can use and develop plugins for HxD. Supercharging HxD: A Guide to Plugins and Extensions

HxD has long been the "gold standard" for developers and reverse engineers who need a fast, reliable way to peek into binary data. But did you know you can extend its capabilities beyond simple hex viewing? Whether you want to add custom data interpretations or build a specialized disassembler, HxD’s plugin system is the key. What Can HxD Plugins Do? The most powerful extension point in HxD is the Data Inspector

. By default, this tool interprets bytes at your cursor as integers, floats, or dates. Plugins allow you to add support for: Custom Disassemblers:

View raw hex as CPU-specific assembly (e.g., support for older CPUs like the 6502). Specialized Data Types:

Create inspectors for proprietary file formats or complex metadata structures. Automated Analysis:

Speed up repetitive tasks by having the editor automatically "read" specific byte patterns. Getting Started with the HxD Plugin Framework

If you’re a developer looking to build your own tools, the HxD Plugin Framework on GitHub is your starting point. The framework is licensed under the MPL (Mozilla Public License) , making it accessible for open-source projects. Example Plugins: Check out community projects like Greg Clare’s disassembler plugin

for MC6800 and 6502 CPUs to see how the API works in practice. Language Support:

While the core editor is built in Delphi, the framework provides the necessary interfaces to bridge your custom code into HxD’s Data Inspector. Why Use Plugins Instead of Other Editors? While other editors like

(with its HexEditor plugin) offer various features, HxD remains the preferred choice for two reasons: Memory Management:

HxD only loads the part of the file it is currently displaying, allowing it to open multi-gigabyte files without crashing. Raw Access:

It can open entire block devices or even the RAM of other running processes for live editing. How to Install a Plugin Download the plugin DLL from a trusted source (like Place the DLL into the folder within your HxD installation directory.

Restart HxD. You should now see the new data types or tools available in the Data Inspector coding example for a basic Data Inspector plugin, or are you looking for a list of pre-made plugins for a specific file type? Crashes when comparing large files · Issue #325 - GitHub

HxD is a highly popular freeware hex editor for Windows, known for its ability to handle massive files and provide direct-to-disk editing of files, RAM, and physical disks. While HxD is powerful out of the box, it supports a plugin framework specifically designed to extend its Data Inspector. HxD Plugin Framework Overview

The HxD plugin framework allows developers to create custom Data Inspector extensions. These extensions act as new "types" that the inspector can interpret and display in real-time as you navigate through a file.

Primary Function: The framework is used to write Data Type Converters. These convert raw byte sequences into human-readable strings and vice-versa.

Supported Languages: The framework is natively written in Delphi, but it includes headers for C and C++. It can also be utilized by any language capable of creating standard DLLs and exporting C-like functions (such as PureBasic). Capabilities:

Supports fixed-width (e.g., 32-bit integers) and variable-width encodings (e.g., UTF-8, x86 assembly).

Allows for custom endianness handling, making it possible to define mixed-endian data types.

Enables custom navigation for "array" elements within the inspector. Key Plugin Examples

Because HxD’s plugin ecosystem is specialized for the Data Inspector, most available plugins focus on complex data conversion or disassembly:

HxD Disassembly Plugin: A notable third-party plugin that adds a disassembly view directly to the Data Inspector. It supports various CPU architectures (like Motorola 6800/6809) by loading external definition files.

stong/hxd-plugin: A collection of handy conversion tools, including Base64 decoding/encoding, specifically for the HxD inspector. How to Install HxD Plugins

Since HxD does not have a "one-click" plugin manager, installation is typically manual:

Locate your HxD installation directory (usually in C:\Program Files\HxD). Create a folder named Plugins if it doesn't already exist.

Place the plugin's .dll file (ensuring it matches your HxD architecture, Win32 or Win64) and any required configuration files (like .ini or .csv) into this sub-directory.

Restart HxD; the new data types should appear in the Data Inspector sidebar. Future Expansion Example: A Simple Structure If you have a

The developer of HxD, Maël Hörz, has indicated that a more robust plugin system for custom editors and viewers (such as a full structure viewer or partition table editor) is a long-term goal for the software. Currently, the plugin system remains focused on the Data Inspector interface. AI responses may include mistakes. Learn more Plugin framework for HxD's data inspector - GitHub

This plugin framework allows to create extensions for HxD's data inspector, as plugin DLLs, which can be written in Delphi, C, C++ Disassembly Plugin for HxD's Data inspector - GitHub

The silence of Elias’s apartment was broken only by the rhythmic clicking of his mechanical keyboard. On his monitor, the HxD Hex Editor

interface glowed—a stark grid of black background and white hexadecimal pairs. To most, it was just a sea of digits; to Elias, it was the DNA of a long-forgotten software project.

HxD was his tool of choice for its speed and reliability in handling massive files. But tonight, Elias wasn't just viewing data; he was experimenting with a custom HxD plugin for conversions he'd found on GitHub.

The plugin was designed for tasks like converting strings to Python arrays or

. However, as Elias ran a block of cryptic code from a corrupted game file through the converter, the output didn't look like a standard array. It looked like a message. “0x48 0x65 0x6C 0x70 0x20 0x6D 0x65”

He used the plugin's "Copy as string literal" feature. The screen refreshed. "Help me."

Elias froze. He was a reverse engineer, used to finding hidden data structures and debugging encoding issues. But this felt different. He opened the Analysis menu to compare

the original file against a backup he’d made minutes ago. The HxD "File compare" tool highlighted the differences in bright red.

The code wasn't just corrupted; it was changing. Every time he used the plugin to validate the data, the bytes shifted. It was as if something inside the raw memory of the file was trying to communicate through the very tools he used to dissect it.

He sat back, the blue light of the HxD interface reflecting in his glasses. He had come looking for game cheats, but he had found a digital ghost instead. more technical details on how HxD handles large file analysis or how to write your own data conversion plugins?

Handy HxD plugin for various conversions like base64 - GitHub

Based on the context of HxD (the popular Hex Editor) and the request for a "paper," the most valuable technical contribution would be a formalization of its scripting extension system.

HxD does not natively support a complex plugin architecture (like IDA Pro or x64dbg), but it supports Pascal Scripting to automate tasks. This creates a de-facto plugin ecosystem.

Here is a technical white paper outlining a proposed framework for standardizing and securing HxD extensions.


Example: A Simple Structure

If you have a game save file where the first 4 bytes are Gold and the next 4 bytes are Health, you can write a script:

GameSave = record
  Gold: Integer;   // 4 bytes
  Health: Integer; // 4 bytes
end;

Once applied, HxD will label those bytes for you automatically.


Writing Your First HXD Plugin (Conceptual)

While a full tutorial is beyond this write-up, the basic steps are:

  1. Set up a DLL project in Visual Studio (or MinGW) with C/C++.
  2. Include hxd_plugin.h – provided with the HXD SDK (downloadable from the official site).
  3. Implement required exportsIsPlugin, GetPluginInfo, PluginInit, PluginExit.
  4. Register a menu item using HXD_AddMenuItem.
  5. In your menu callback, call HXD_GetSelectedData to operate on user-selected bytes.
  6. Compile to DLL and place in the plugins folder.

Example pseudo-code for a "Count Zeros" plugin:

void OnCountZeros() 
    BYTE* data;
    size_t len = HXD_GetSelectedData(&data);
    int zeros = 0;
    for (size_t i=0; i<len; i++) if (data[i]==0) zeros++;
    char msg[100];
    sprintf(msg, "Zero bytes: %d", zeros);
    HXD_MessageBox(msg);

2.1. External Scripting via Clipboard & Command Line

The most common "HxD plugin" workaround involves linking HxD to external scripts.

How it works:

Example "Plugin" Workflow:

  1. Select a raw byte sequence in HxD.
  2. Copy as Python list: [0x48, 0x65, 0x6C, 0x6C, 0x6F].
  3. Run a custom script that converts it to a floating-point array.
  4. Generate output and copy back.

Recommended Companion Scripts (GitHub):

Pro Tip: Use AutoHotkey to assign a keyboard shortcut (e.g., Ctrl+Shift+P) that triggers your external script with the current HxD selection. This mimics a plugin button.

4. How HxD Plugins Work (Under the Hood)

HxD’s plugin system is C/C++ friendly. A plugin must export a function with a specific signature:

__declspec(dllexport) int __cdecl HxDMenuClick(
    HWND hParentWnd,
    unsigned char* pData,
    unsigned __int64 qwDataSize,
    unsigned __int64 qwCurrentOffset
);

When the user clicks the menu item added by the plugin, HxD calls this function.

Creating HxD Plugins

To create an HxD plugin, you'll need:

Here's a simple example of an HxD plugin written in C++:

#include <hxdplugin.h>
// Define the plugin's metadata
HxDPluginInfo pluginInfo = 
    "MyPlugin",
    "1.0",
    "My Plugin Description",
    "Author Name"
;
// Define the plugin's entry point
extern "C" HxDPluginInfo* GetPluginInfo() 
    return &pluginInfo;
// Implement plugin functionality
void MyPluginFunction() 
    // Add plugin code here

How to Install and Manage Plugins

  1. Locate the Plugins Folder – By default, HXD looks for a plugins subdirectory in its installation folder (e.g., C:\Program Files\HxD\plugins\).
  2. Place the DLL – Copy the plugin .dll file into that folder.
  3. Enable the Plugin – Launch HXD, go to Extras > Plugins... and check the box next to your plugin.
  4. Access Functionality – The plugin’s menu items appear under the Plugins menu or the Extras menu depending on how it was coded.

Note: HXD must be restarted if plugins are added or removed manually while the editor is running.

Copyright @ 머니박스 서울역지점hxd plugins