打包_7z生成自解压打包exe
准备 安装7z后,在官网下载LZMA SDK,然后下面几个文件拷贝到7z安装目录 LZMA SDK 7zS2.sfx 7zS2con.sfx 7zSD.sfx 压缩目标文件 准备好要打包的目标文件,放到一个文件夹 把独立的UI程序放到这里,并改名为setup.exe 在7z安装目...
准备 安装7z后,在官网下载LZMA SDK,然后下面几个文件拷贝到7z安装目录 LZMA SDK 7zS2.sfx 7zS2con.sfx 7zSD.sfx 压缩目标文件 准备好要打包的目标文件,放到一个文件夹 把独立的UI程序放到这里,并改名为setup.exe 在7z安装目...
进程地址空间 概述 Windows 进程地址空间和 Linux 一样采用虚拟地址空间,每个进程有独立的虚拟地址空间,由 Windows 内核和硬件 MMU 联合管理 核心区别在于: Windows 使用 PE(Portable Executable)格式代替 ELF 使用 Hea...
终止进程 方法 主线程的入口点函数返回。 进程中的一个线程调用ExitProcess函数(要避免这种方式)。 另一个进程中的线程调用TerminateProcess函数(要避免这种方式)。 进程中的所有线程都“自然死亡”(几乎从来不会发生)。 入口点函数返回 让主线程的入口点函数...
启动流程 BasicEntry 作为dll导出接口 PrepareEnv 先构建运行时 ntdll.dll kernel32.dll 获取当前dll句柄 EXE被当做DLL加载时,首先修复重定位数据,此时的全局变量等还无法访问 因为Windows操作系统不会修复当做DLL加载的E...
数据部分 数据部分用于声明常量。 该数据在运行时不会改变。 代码部分 文本部分用于代码。 该部分必须以声明 global _start 开始,它告诉内核程序执行的开始位置。 注释 hello,world 前面两行定义了数据,并在其中放置了具有hello, world值的msg常量...
大小端 可以将内存想象为一个大数组。它包含字节。 每个地址存储内存“数组”的一个元素。每个元素都是一个字节。 例如我们有 4 个字节:AA 56 AB FF 小端字节序 低地址存低位字节 大段字节序 高地址存低位字节 汇编程序组成 data 用于声明初始化数据或常量 bss 用于...
概述 是 Windows 操作系统中的虚拟内存页面文件,其作用、管理方式及对系统的影响是系统性能优化的核心内容 核心作用 物理内存的扩展 当物理内存(RAM)不足时,Windows 会将不活跃的数据从 RAM 转移到 pagefile.sys 中,释放 RAM 给当前活跃程序使用...
概述 在用户模式下进行线程同步的最大好处就是速度非常快。 与用户模式下的同步机制相比,内核对象的用途要广泛的多。实际上,内核对象的唯一缺点就是性能。 对线程同步来说,内核对象的每一种要么处于触发状态,要么处于未触发状态。 Microsoft为每种对象创建了一些规则,规定如何在这两...
遗弃问题 互斥量概述 互斥量与所有其他内核对象有所不同,这是因为它们具有“线程所有权”的概念。 换句话说,互斥量会记住自己是哪个线程等待成功的。 互斥量的这种特殊性,使得它即使在未触发的状态下,也能为线程所获得。 什么是遗弃问题 当线程调用ReleaseMutex的时候,函数会检...
WTL下载 WTL WTL 基础概念 定位与优势 基于 ATL 的扩展库,专注于高效 Win32 GUI 开发,无 MFC 的臃肿 优势 模板驱动:零成本抽象,代码体积小 兼容 Win32 API:直接操作窗口句柄,灵活性高。 现代 C++ 风格:支持 RAII、模板元编程 WT...
搜索当前标签