PE历史简介: portable excute 可移植的,可执行的文件(exe、dll) Microsoft最开始做的Dos系统,开头是MZ标识,又叫MZ系统(这tm是个人名,碉堡了),是16位操作体统。 Microsoft后开开发了Windows NT系统,最大的特点是桌面,是32位操作系统。 那么文件格式需要重新设计,出现了PE,希望一统江湖,考虑了所有的操作系统厂家,但是Apple和Linux没有使用PE,而是用ELF(unix、Linux)格式。 因此PE的文件格式里面有很多字段是 windows 系统用不到的,有些是给已经被淘汰的dos系统用的,还有一些是给其他系统用的,所以不是每个字段都非常有用,只需要关注在 windows 上用的,即windows会检查的一些字段 畸形PE:做过手脚的PE,用于对抗 msdn: 代码解释结构 #include <stdio.h> #include <Windows.h> //#include <winnt.h> // 定义了pe结构体的所有成员 int main() { /******************************* Dos header ************************************/ IMAGE_DOS_HEADER Header; // Dos头 /******************************* PE header ************************************/ //IMAGE_FILE_HEADER peHeader; // 新的文件格式从这里开始,并开始区分32和64位程序,但是文件头被NT头包含 IMAGE_NT_…
Linux下gcc编译链接库: -lz 压缩库(Z) -lrt 实时库(real time):shm_open系列 -lm 数学库(math) -lc 标准C库(C lib) -dl 显式加载动态库的动态函数库 参考: [1]. Linux环境下gcc编译链接库-lz -lrt -lm -lc都是什么库?
《那山那人那狗》 《我是谁?没有绝对安全的系统》 双赢才是最终目的 《破碎人生》 从始至终,保持着压抑的气氛。 《 如何真正放下自我?专访山东籍的美国黑帮小伙,曾抢劫、贩毒、沉沦 》 人的终点就是神的起点 《 李想: 关于产品的见解 (演讲) 》 价值、安全感、优越感 更多的是用心和热爱,发自内心的想做好一个产品的时候才能做好一个产品。 《 失控玩家 (电影) 》 关键字:离谱,梗,创意,change 《 心灵捕手 (电影) 》 印象最深刻的片段:片尾的长镜头,查克还是一如既往的去接威尔,却发现威尔已经不辞而别了,从开始的疑惑都后面的豁然开朗继而会心一笑,这就是真朋友该有的样子吧。人生就应该有这样一段豁然开朗。 《 教父 第一部 (电影) 》 非常牛皮的"黑帮"组织 《 偷自行车的人 (电影解说) - 木鱼水心 》 不同社会层次的人,看到的问题也是不同的 《 喜剧之王 (电影解说)- 木鱼水心 》 一种狠心的角度解读电影,最后一部分竟然是尹天仇的梦境,这无疑是沉重的 尹天仇问柳飘飘:“喂 能不能不工作啊” 柳飘飘:“不工作你养我啊” 随后两人勉强的微笑,充满了无奈和心酸 还有大家都只看到尹天仇那句我养你啊,却没注意柳飘飘那句你先照顾好你自己吧,傻瓜。 《 无问西东 (电影解说) - 木鱼水心 》 一杯敬明天,一杯敬过往;一杯敬自由,一杯敬死亡! 《 憨豆的黄金周 (电影) 》 生活就是这些琐碎的点点滴滴组成的,真实就是最好的答案 主角全程说话不足20句,唯一印象深刻的台词,可能就是憨豆的眼睛,另外电影结尾非常浪漫,环境是真的美 《 300天4万公里传遍中国,漂流相机终于回来了!》 一场漂流的对话,却沉淀了坚定的力量。摄影最终还是人的情感表达啊~
重装系统都救不了它,在b站发现神仙做法
点击查看:主引导程序的扩展(下) 知识详情 代码 #include <QtCore/QCoreApplication> #include <QFile> #include <QDataStream> #include <QDebug> #include <QVector> #include <QByteArray> #pragma pack(push) #pragma pack(1) struct Fat12Header { char BS_OEMName[8]; ushort BPB_BytsPerSec; uchar BPB_SecPerClus; ushort BPB_RsvdSecCnt; uchar BPB_NumFATs; ushort BPB_RootEntCnt; ushort BPB_TotSec16; uchar BPB_Media; ushort BPB_FATSz16; ushort BPB_SecPerTrk; ushort BPB_NumHeads; uint BPB_HiddSec; uint BPB_TotSec32; uchar BS_DrvNum; uchar BS_Reserved1; uchar BS_BootSig; uint BS_VolID; char BS_VolLab[11]; char BS_FileSysType[8]; }; struct RootEntry { char DIR_Name[11]; uchar DIR_Attr; uchar reserve[10]; ushort DIR_WrtTime; ushort DIR_WrtDate; ushort DIR_…
这篇文章更容易理解ospf原理,标记一下 OSPF的基本工作原理 OSPF协议介绍
使用环境: ubuntu 4.4.3-1 Linux version 2.6.32-21 gcc version 4.4.3 ELDK4.2 下载eldk的不同版本 :eldk下载 配置时参考文章如下: [1]. 在ubuntu上打造ELDK4.2开发环境 [主要参考] [2]. Ubuntu18.04 安装ELDK交叉编译Linux kernel [3]. eldk (Embeded Linux Development Kit)安装 步骤: 1 挂载 先把下载的文件(.iso文件)放到任意目录下,在.iso所在路径下进行挂载,挂载到任意一个目录(这个目录自己创建即可,/mnt/eldk4.2/ ) sudo mount -o loop arm-2008-11-24.iso /mnt/eldk4.2/ 注意: 挂载后的文件夹不能直接删除,因为系统不让删。需要在eldk4.2下先卸载,再次sudo rm -rf删除文件夹 sudo umount /mnt/eldk4.2/ 2 安装 再创建一个文件夹/opt/eldk4.2(位置随意),在/opt/eldk4.2文件下进行安装 sudo /mnt/eldk4.2/install arm 更高一点的版本eldk,安装命令使用这个是有效的 sudo ./install.sh -d /opt/eldk-5.0 -s 注意: 如果这里安装有提示 .gvfs权限不够 ,赶紧到这个提示的路径下把.gvfs文件删掉 原因: 参考文章 Linux Root下的.gvfs出现异常解决办法,亲测有效。 删除命令: sudo umount .gvfs sudorm -rf .gvfs 3 配环境变量 在/home路径或者/home/..的相关路径(我的是在/home的第…
成年人对"人情世故"熟练的让人心疼。 --------- 关于小区停车位事件,我从我们小区物业得到的回复,小区的停车位只有一种收费方式,按照时间来计费,像我这样不经常用车的人来说,很不划算,这几天正在思考怎么解决这个问题。偶然的机会从热情的门卫大叔那里得知,他可以通过"关系"来帮我办理,直接包年就行,我心里非常清楚,我绝对不可能在这里再待上一年的,但是半价包年还是很香的,看他抽烟,于是给热情的门卫大叔买了包烟,请他通过他的"关系"来处理一下,他也同意了。竟然往后拖了一个周才处理好,好吧,我觉得这个需要一定的时间,也并没有任何的催促。 今天办好了,热情的大叔非常热情的给我发微信,告诉我办好了(意思是想要我付掉尾款),我还没有去验一下,直接就转钱给他了,我觉得这没什么。但是我这个行为造成一个问题,给了大叔一个信号"我很有钱"??,真的是可怕,大叔随后就说 借钱?? 好吧,我看上去应该是很好说话,不过我立刻回绝了,让他放弃了他的想法,一整个下午,他也没有再回消息了。 瞬间感觉到更多的是心疼,但我绝不能借给他。 如果没猜错,只有第一次和无数次。 --------- 然而,事情并没有结束,他想"收拾"我了,于是 我回复了他最下面那一句,买烟这个事情并没有做出回复,这时候,他的语气有些改变,我知道的,他一定会想办法让我给他买烟,如果,我不呢? 继续 --------- 我看在门禁上写的是月卡,我问了下,我应该是写的剩余多少天才对啊,这是他做出的回复 很显然,他这时候有些激动了 但是,最后又再次提醒我买烟 后续,那就用沉默来告诉他答案吧 --------- 当日更新 .... 逐渐离谱 0918更新 ... “…
mark 下次用 /********************************************************************************* *Copyright(C),Your Company *FileName: // 文件名 *Author: //作者 *Version: //版本 *Date: //完成日期 *Description: //用于主要说明此程序文件完成的主要功能 //与其他模块或函数的接口、输出值、取值范围、 //含义及参数间的控制、顺序、独立及依赖关系 *Others: //其他内容说明 *Function List: //主要函数列表,每条记录应包含函数名及功能简要说明 1.………… 2.………… *History: //修改历史记录列表,每条修改记录应包含修改日期、修改者及修改内容简介 1.Date: Author: Modification: 2.………… **********************************************************************************/ 参考: [1]. https://blog.csdn.net/fmxfmx2013/article/details/30999095?ydreferer=aHR0cHM6Ly9jbi5iaW5nLmNvbS8%3D
/* 时间:2023/09/12 作者:马文杰 代码功能:存储文件之前,检查内存使用百分比,内存使用超过80%会自动删除最老旧的文件,以此来保证系统正常运行 函数名称: getLogUsePercentage / findMatchingFile / compareFileNames / delOldLogFile / main 历史: 日期:2023/09/21 作者:mawenjie 修改:函数delOldLogFile中有一处没有释放资源,是在combinedTime 申请资源失败时没有释放,文中已有记录标记。 */ #include <stdlib.h> #include <dirent.h> #include <stdio.h> #include <string.h> /* 函数功能: 获取系统指定路径下内存使用的百分比 */ int getLogUsePercentage() { int iUsePcent = -1; char line[512] = {0}; // 执行df命令并读取输出 FILE* pipe = popen("df /home/delphi/solo", "r"); if (pipe == NULL) { perror("Failed to execute df command"); exit(EXIT_FAILURE); } // 读取df命令的输出 while(fgets(line, sizeof(line), pipe)); printf("[+][%s:%d] line: %s\n",__FUNCTION__,__LINE__,…
电脑系统空间清理的一个脚本 sysClear.bat @echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %systemdrive%\*._mp del /f /s /q %systemdrive%\*.log del /f /s /q %systemdrive%\*.gid del /f /s /q %systemdrive%\*.chk del /f /s /q %systemdrive%\*.old del /f /s /q %systemdrive%\recycled\*.* del /f /s /q %windir%\*.bak del /f /s /q %windir%\prefetch\*.* rd /s /q %windir%\temp & md %windir%\temp del /f /q %userprofile%\cookies\*.* del /f /q %userprofile%\recent\*.* del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*" del /f /s /q "%userprofile%\Local Settings\Temp\*.*" del /f /s /q "%userprofile%\recent\*.*" echo 清除系统垃圾完成! echo. & pause