随笔分类 -  C/C++

摘要:前言 本文记录在 Windows 下使用 GCC/MinGW-w64 编译 Boost 静态库的流程。示例以 Boost 1.88.0 为例,编译目标为 Windows x86_64 和 x86 两种架构。 1. 背景说明 Windows 下常见的 Boost 编译方式有两类: 编译器 典型产物 适 阅读全文
posted @ 2026-08-06 17:38 倚剑问天 阅读(7) 评论(0) 推荐(0)
摘要:前言 本文记录使用 Visual Studio 2019 / MSVC v142 编译 Boost Windows ARM64 静态库时遇到的问题与解决过程,目标场景是为 Windows on ARM 设备生成 .lib 静态库。 示例环境: Boost 1.88.0 Visual Studio 2 阅读全文
posted @ 2026-08-06 15:46 倚剑问天 阅读(11) 评论(0) 推荐(0)
摘要:前言 本文详细记录如何在 Windows 环境下,借助 MacOSX12.3.sdk 和 LLVM/Clang 工具链,交叉编译适用于 macOS 的 Boost 静态库(.a),并涵盖 x86_64(Intel)和 arm64(Apple Silicon)两种架构的构建方法及后续合并为通用库的操作 阅读全文
posted @ 2026-08-05 23:10 倚剑问天 阅读(14) 评论(0) 推荐(0)
摘要:前言 本文记录在 Windows 环境下,使用 android-ndk-r26d 编译 Boost 1.74 Android 静态库的完整过程。 目标 ABI: armeabi-v7a arm64-v8a x86 x86_64 ⚠️ 说明:较新的 NDK 已移除 armeabi ABI,androi 阅读全文
posted @ 2026-08-05 14:56 倚剑问天 阅读(15) 评论(0) 推荐(0)
摘要:简介 有时候我们拿到了函数的调用地址,但是需要在call之前做一些判断或者预处理,这时我们就需要封装一个自定义的函数call模板。 代码 #include <iostream> #include <cstdio> #include <cstdlib> #include <cstdint> #incl 阅读全文
posted @ 2025-06-28 18:21 倚剑问天 阅读(41) 评论(0) 推荐(0)
摘要:代码 #!/usr/bin/env python # encoding: utf-8 import os import binascii from datetime import datetime, timezone colnum_per_row = 16 file_path = 'demo.sys 阅读全文
posted @ 2025-03-20 00:54 倚剑问天 阅读(75) 评论(0) 推荐(0)
摘要:前言 Boost 版本: boost_1_70_0 编译器选择: MSVC 14.41(对应 VS2022) 主要参考文章: https://blog.csdn.net/ljjjjjjjjjjj/article/details/122312270 详细步骤 1. 确认 MSVC 编译器版本与路径 使 阅读全文
posted @ 2024-11-15 16:41 倚剑问天 阅读(1821) 评论(0) 推荐(0)
摘要:代码 // 单精度转半精度 unsigned short cpu_float2half(float f) { unsigned short ret; unsigned x = *((int*)(void*)(&f)); unsigned u = (x & 0x7fffffff), remainder 阅读全文
posted @ 2024-09-18 17:01 倚剑问天 阅读(282) 评论(0) 推荐(0)
摘要:通用工程模板 1. 输出目录:$(ProjectDir)..\output\$(ProjectName)\$(Platform)_$(Configuration)\ 2. 中间目录:$(ProjectDir)..\output\$(ProjectName)\$(Platform)_$(Configu 阅读全文
posted @ 2024-09-04 23:13 倚剑问天 阅读(117) 评论(0) 推荐(0)
摘要:正文 将字符串转换成等效int数组 std::vector<uint32_t> convert_wstring_to_int_array(const wchar_t* str) { std::vector<uint32_t> vec; for (size_t i = 0; i < wcslen(st 阅读全文
posted @ 2024-04-19 19:56 倚剑问天 阅读(287) 评论(0) 推荐(0)
摘要:前言 本文旨在记录在较新版本的 Visual Studio(2019)中编译 Luabind 这个较为陈旧的 C++/Lua 绑定库时,所需进行的代码兼容性修改与完整流程。由于该库已停止维护,网上参考资料大多基于旧版开发环境,因此将实际可行的步骤整理如下,供参考。 请注意: Luabind 依赖大量 阅读全文
posted @ 2024-04-16 11:44 倚剑问天 阅读(297) 评论(0) 推荐(0)
摘要:前言 本文记录在 Windows 平台下,使用 Visual Studio 2019 编译 Google V8 JavaScript 引擎的完整流程。由于项目需要兼容 Windows 7 系统,因此选择了较早的稳定分支 chromium-5414 (10.9-lkgr) 进行编译。 说明 除参考本文 阅读全文
posted @ 2024-04-12 15:35 倚剑问天 阅读(883) 评论(0) 推荐(0)
摘要:Visual Studio 2010 授权修改 阅读全文
posted @ 2024-01-14 23:17 倚剑问天 阅读(96) 评论(0) 推荐(0)
摘要:下列提出两种获取对象名的方式 通过_OBJECT_TYPE::Name获取对象名称,通过_OBJECT_TYPE::Index获取对象索引; 通过NtQueryObject的方式获取,r0与r3通用,代码如下: #include <cstdio> #include <cstdlib> #includ 阅读全文
posted @ 2023-11-29 16:25 倚剑问天 阅读(281) 评论(0) 推荐(0)
摘要:多核处理器同步函数KiIpiGenericCall函数在XP SP3下的寻址方式 阅读全文
posted @ 2022-04-11 00:38 倚剑问天 阅读(926) 评论(0) 推荐(0)
摘要:Clang-Format 常用命令 @echo off set CLANG_FORMAT_PATH=..\tools\clang-format\ %CLANG_FORMAT_PATH%clang-format.exe --assume-filename=.clang-format -i src/cl 阅读全文
posted @ 2022-01-24 23:43 倚剑问天 阅读(103) 评论(0) 推荐(0)
摘要:简介 此文转载自:https://www.cnblogs.com/gwsbhqt/p/5092390.html 代码 阅读全文
posted @ 2019-09-27 14:12 倚剑问天 阅读(1251) 评论(0) 推荐(0)
摘要:简介 很多人喜欢在自己写的命令行工具开头加上软件名字的Ascii插画LOGO,这在Python下利用多行字符串还是很容易实现的,但是在C语言下会有很多的复杂转义的问题,而且格式不容易控制,所以笔者写了一个简单的Python脚本来将Python下的多行字符串转换成C语言可用的字符数组,亲测有效~ 代码 阅读全文
posted @ 2019-08-02 14:39 倚剑问天 阅读(314) 评论(0) 推荐(0)
摘要:简介 在之前的文章中曾说过利用 CreateRemoteThread 函数进行远线程注入是最经典的一种方式。但是这种方式却无法成功注入系统进程,因为系统进程是处在SESSION0高权限级别的会话层,用户进程在执行CreateRemoteThread函数时会失败。所以经过前辈们的研究发现,Create 阅读全文
posted @ 2019-03-26 17:04 倚剑问天 阅读(2634) 评论(0) 推荐(0)
摘要:简介 在之前的文章中笔者曾经为大家介绍过使用 CreateRemoteThread 函数来实现远程线程注入( "链接" ),毫无疑问最经典的注入方式,但也因为如此,这种方式到今天已经几乎被所有安全软件所防御。所以今天笔者要介绍的是一种相对比较“另类”的方式,被称作 “APC注入” 。APC(Asyn 阅读全文
posted @ 2019-03-23 18:10 倚剑问天 阅读(945) 评论(0) 推荐(0)