use memmap2::{Mmap, MmapMut}; use std::{ ops::{Deref, DerefMut}, sync::Mutex, }; use crate::pe_parse::pe::PE; pub mod file; // 全局文件路径 pub static mut GLOBAL_FILE_PATH: Option = None; pub(crate) struct PeData(pub Vec); // 实现Deref impl Deref for PeData { type Target = [u8]; fn deref(&self) -> &Self::Target { &self.0 } } // 实现DerefMut impl DerefMut for PeData { fn deref_mut(&mut self) -> &mut Self::Target { &mut self.0 } } impl PE for PeData {} // 文件的内存映射clone pub static GLOBAL_FILE_DATA: Mutex> = Mutex::new(None);