一些问题:vs相关、dll相关、编译相关
编译相关 #pragma init_seg 概述 是微软C++编译器中的一个编译指令,专门用于精细控制全局静态对象(包括静态变量)的构造和析构顺序 在解决复杂的初始化依赖或DLL加载问题时非常有用 语法 优先级 compiler 最高优先级 此组别的对象最先构造,最后析构 通常保...
编译相关 #pragma init_seg 概述 是微软C++编译器中的一个编译指令,专门用于精细控制全局静态对象(包括静态变量)的构造和析构顺序 在解决复杂的初始化依赖或DLL加载问题时非常有用 语法 优先级 compiler 最高优先级 此组别的对象最先构造,最后析构 通常保...
概述 C++中,thunk技术主要用于处理多继承和虚函数调用时复杂的this指针调整问题 在构造对象的过程中,为虚函数表(vtable)填充函数指针时,编译器可能会插入thunk代码,以确保后续通过基类指针调用虚函数时,this指针能被正确调整 触发场景 通过非首个基类指针调用派...
duilib相关 局部静态变量初始化失败的问题 描述 调试一个实现了exe和dll双形态的程序时发现,duilib一些局部的static变量new出来是空的 原因 可能是exe和dll对于全局变量、静态变量的初始化时机不一样 解决 把实现放到头文件里面 dui里面FindReso...
相关功能 定义 bool型 直接使用值 直接修改值 string型 直接使用 修改值 int型 其他编译单元引用 其他 问题 似乎不支持Windows风格的参数 似乎用--help会有奔溃,没研究原因
RC2135: file not found 简述 修改了rc文件后,发现一直报这个错误,编译失败 默认情况下英文版本的 rc 文件能够顺序编译通过 但为了让工程支持多语言,将字符串修改为其他语言时,编译就会出错 解决 首先项目得使用Unicode字符集 将rc 文件用记事本打开...
主窗口 提示弹窗 其他 关于进度条实现 实际上在xml里面使用了Slider 经验是: 这个test1.png,test2.png图片,得使用Slider的尺寸,这样,如果图片使用了圆角,才不会模糊 如果是直角进度条,应该就不需要 点击 关闭 事件处理 比如CRichEditUI...
启动流程 BasicEntry 作为dll导出接口 PrepareEnv 先构建运行时 ntdll.dll kernel32.dll 获取当前dll句柄 EXE被当做DLL加载时,首先修复重定位数据,此时的全局变量等还无法访问 因为Windows操作系统不会修复当做DLL加载的E...
脚本相关 setup.nsi 一些定义 setup.nsh app.nsh app_s.nsh 对应静默 脚本相关-其他 卸载删文件 普通 静默 开机自启 快捷方式 调用浏览器打开网页 调用本地notepad 关于函数 在un.DUIPage脚本函数里面调用的其他脚本函数,同样要...
lm lmv 概述 是 lm命令的详细模式,用于显示所有已加载模块的完整信息,包括: 模块基地址(Start/End):模块在内存中的起始和结束地址 模块路径(Image path):文件在磁盘中的完整路径 符号状态(Symbols):如 Loaded(符号已加载)、Deferr...
IDA92 步骤 安装ida后把安装目录下的 ida.dll ida32.dll拷贝到 key_patch.py下 运行下面的脚本就会生成patched后的 ida.dll ida32.dll 以及一个 license文件 都拷贝到安装目录 keygen 9.2 需要修改为绝对路...