#dos #lfanew #dll等文件的dos头信息 #可读取exe #一个基于rust实现的dos文件读取器

rust_dos_header

一个基于Rust实现的dos文件读取器,可读取exe,dll等文件的dos头信息

2 releases

0.1.1 Feb 4, 2025
0.1.0 Feb 3, 2025

#6 in #dos

Download history 144/week @ 2025-01-29 88/week @ 2025-02-05 9/week @ 2025-02-12 7/week @ 2025-02-26

199 downloads per month
Used in rust_pe_header

MIT license

13KB
257 lines

rust_dos_header

基于 rust 实现的 dos 头解析器依赖库

介绍

基于 rust 实现的 dos 头解析器依赖库,可以解析 dos 头信息,包括 e_magic、e_cblp、e_cp、e_crlc、e_cparhdr、e_minALLOC、e_maxALLOC、e_ss、e_sp、e_csum、e_ip、e_cs、e_lfarlc、e_ovno、e_res、e_oemID、e_oeminfo、e_lfanew 等字段。

安装

cargo add rust_dos_header

使用

use rust_dos_header::dos::DosHeader;
fn main() {
    let dos_header = DosHeader::new();
    let file_path = "rust_decode_exe.exe";
    // 读取文件内容
    let file_content = std::fs::read(file_path).expect("无法读取文件");

    let dos_header = dos::decode(file_content);
    if !dos_header.is_ok() {
        println!("文件格式不正确");
        return;
    }
    let dos_header = dos_header.unwrap();
    println!("{}", dos::print(dos_header).unwrap());
}

No runtime deps