styles: 更改一些样式

This commit is contained in:
2024-12-10 11:25:55 +08:00
parent 142a8cd3eb
commit a279a262b7
23 changed files with 879 additions and 262 deletions

View File

@@ -1,4 +1,9 @@
use memmap::*;
use memmap2::*;
use serde::Serialize;
use crate::{app_error::AppError, pe_parse::{header::{ImageDosHeader, ImageFileHeader, ImageNTHeaders32}, pe::PE}};
use super::GLOBAL_FILE_DATA;
// TODO: 打开文件,并将文件映射到内存
pub fn mmap_mut_file(file_path: &str) -> Result<Mmap, std::io::Error> {
@@ -10,3 +15,47 @@ pub fn mmap_mut_file(file_path: &str) -> Result<Mmap, std::io::Error> {
.map_err(|e| std::io::Error::new(std::io::ErrorKind::Other, e.to_string()))
}
}
#[derive(Serialize)]
pub struct ResponseDOSHeaderData {
pub image_dos_header: ImageDosHeader,
pub base_offset: usize,
}
#[derive(Serialize)]
pub struct ResponseNTHeaderData {
image_nt_header: ImageNTHeaders32,
base_offset: usize,
}
pub fn get_nt_headers_data() -> Result<ResponseNTHeaderData, AppError> {
let binding = GLOBAL_FILE_DATA.lock().unwrap();
let file_data = binding.as_ref().unwrap();
let nt_header = file_data.get_nt_headers()?;
let nt_offset = file_data.get_nt_headers_offset()?;
let result = ResponseNTHeaderData {
image_nt_header: nt_header.clone(),
base_offset: nt_offset,
};
Ok(result)
}
// 获取文件头数据
#[derive(Serialize)]
pub struct ResponseFileHeaderData {
pub file_header: ImageFileHeader,
pub base_offset: usize,
}
pub fn get_file_header_data() -> Result<ResponseFileHeaderData, AppError> {
let binding = GLOBAL_FILE_DATA.lock().unwrap();
let file_data = binding.as_ref().unwrap();
let file_header = file_data.get_file_header()?;
let file_header_offset = file_data.get_file_header_offset()?;
let result = ResponseFileHeaderData {
file_header: file_header.clone(),
base_offset: file_header_offset,
};
Ok(result)
}