#bindings #memory #loading #windows #module #github #com-fancycode-memory-module

sys memory-module-sys

Bindings to the MemoryModule library for loading libraries from memory on Windows

3 releases (breaking)

0.3.0 Mar 23, 2020
0.2.0 Mar 23, 2020
0.1.0 Feb 26, 2020

#313 in Windows APIs

Download history 4427/week @ 2024-11-17 4143/week @ 2024-11-24 3363/week @ 2024-12-01 4159/week @ 2024-12-08 4250/week @ 2024-12-15 2418/week @ 2024-12-22 2613/week @ 2024-12-29 3507/week @ 2025-01-05 3968/week @ 2025-01-12 3743/week @ 2025-01-19 3534/week @ 2025-01-26 3814/week @ 2025-02-02 4312/week @ 2025-02-09 4173/week @ 2025-02-16 3644/week @ 2025-02-23 3062/week @ 2025-03-02

15,399 downloads per month
Used in 2 crates (via python-oxidized-importer)

MPL-2.0 license

49KB
1K SLoC

C 1K SLoC // 0.1% comments Rust 81 SLoC // 0.1% comments

Rust Bindings to Memory Module Library

This repository contains low-level Rust bindings to the library at https://github.com/fancycode/MemoryModule that facilitates loading Windows PE files from memory on Windows. i.e. it allows you to import a DLL/EXE from a &[u8] without requiring the library to be backed by a file.

The Rust library simply compiles the upstream library and declares extern "C" unsafe bindings to it. This being a -sys crate, that is all it will ever do: higher-level bindings would exist in a separate crate.

License

This crate is licensed under the same terms as the MemoryModule library, which is MPL 2.0.

The MemoryModule library is maintained by Joachim Bauch.


lib.rs:

Load DLLs/EXEs from memory on Windows.

This crate declares a library interface to https://github.com/fancycode/MemoryModule.

The initial developer of the original code is Joachim Bauch. See the copyright in the vendored .c/.h files for a more detailed copyright notice.

Dependencies

~0.4–520KB