Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork5
Resource Editor for parsing and modification of Windows Portable Executables, supporting icon replacement, resource transfer between files, and more.
License
Systemcluster/editpe
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Resourceeditor forportableexecutables.
Enables cross-platform parsing and modification of Windows executables and their resources.
- Parsing and modification of portable executables
- Resource editing including icons, manifests, version info and more
- Resource transfer between files
Compared to other resource editors likercedit, editpe takes great care to keep the modified executable in a valid state. It does this by parsing and rebuilding the complete resource directory as well as all file and section headers, keeping existing sections intact, and leaving any additional data at the end of the file in place.
Note that packed executables (like packed withUPX) might not start with a modified resource table and might have compressed resources that can not be read. If you need a packed executable with modified resources, edit the resources first, and pack it afterwards.
Addeditpe as a dependency. Support for converting and resizing images in other formats when setting icons is provided by theimage crate.
editpe ="0.2"image ="*"# optional
Thestd andimages features are enabled by default and can be disabled forno-std support.
See thetests for additional usage examples.
use editpe::Image;letmut image =Image::parse_file("damocles.exe")?;// get the resource directoryletmut resources = image.resource_directory().cloned().unwrap_or_default();// set the icon fileresources.set_main_icon_file("sword.png")?;// set the resource directory in the imageimage.set_resource_directory(resources)?;// write an executable image with all changes appliedimage.write_file("damocles.exe");
use editpe::Image;let image =Image::parse_file("damocles.exe")?;// get the resource directory from the sourcelet resources = image.resource_directory()?;letmut image =Image::parse_file("fortuna.exe")?;// copy the resource directory to the targetimage.set_resource_directory(resources)?;// write an executable image with all changes appliedimage.write_file("fortuna.exe");
About
Resource Editor for parsing and modification of Windows Portable Executables, supporting icon replacement, resource transfer between files, and more.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.