avatar
文章
26
标签
89
分类
6
首页
文章
标签
分类
墨池码窖 | Sentixxx's Blog
搜索
首页
文章
标签
分类

墨池码窖 | Sentixxx's Blog

阿里云OSS资源路径避坑
发表于2025-02-18|技术实践
阿里云 OSS 在解析请求时会把 + 转义成 (空格),这点与 S3 恰恰相反,需要做预处理
CPPCLI将第三方DLL链接到CSharp项目
发表于2025-02-14|技术实践
最近需要将第三方的 DLL 封装成 csharp 的模块,可是我没有源码,只有头文件,网上综合调查了方案,最后选择了 C++/CLI 具体可见微软的官方文档 第一步,创建 CLR 项目 这里默认你已经通过各种手段获得了 DLL 和头文件 这里使用 Visual Stdio 创建一个新的 C++ CLR 项目 基本编辑 这里的基本语法还是和 C++一样的 进入项目,自行创建一个类,就会生成一个 CPP 和 H 文件 这里需要在头文件中包含 DLL 内相关函数和类定义的头文件,直接使用绝对路径包含即可 #include "path\to\your\header.h"public ref class YourModule {} 然后像 C++创建一个类那样,设置构造函数和成员函数,并实现 这里你的实现可以直接调用 DLL 中的函数,实现封装。 设置编译选项 右键项目,打开属性,将 Release 的配置类型修改为“动态库(. dll)”,注意这里的目标平台需要和你的 DLL...
tcpdump指定dst端口抓包失败
发表于2025-02-07|技术实践
tcpdump 在抓包时使用 libpcap filter 作为过滤,这种过滤语法又叫 BPF 语法,其中可以使用 port num 作为语法过滤指定端口的报文,但是有时会发现,当启用过滤后,反而无法从指定端口抓到包,而没有过滤时却可以看到相关的包 遇到这种问题,可能是由于你监听的网卡是 VLAN,VLAN 网卡在发送报文时会加上一个 VLAN 头来标识,这时需要改变原来的语法,使用 vlan and port num 进行过滤,这样就可以识别出 vlan 报文,进而对报文的端口进行识别。 vlan [vlan_id] True if the packet is an IEEE 802.1Q VLAN packet. If the optional vlan_id is specified, only true if the packet has the specified vlan_id. Note that the first vlan keyword encountered in an expression changes the decoding offsets...
为什么hexo在生成时会修改md文件
发表于2025-01-29|技术实践
最近在搭建个人博客自动化时,我发现 Hexo 在生成时总会修改 markdown 文件的 front-matter 部分,修改内容集中在日期和标题相关的字段,并且会自动为其添加引号。这引起了我的好奇,于是我决定探究一下 省流 标题自动添加引号是为了避免纯数字标题类型错误 日期自动添加引号是因为我的日期格式不正确修改为标准 utc 时间格式后不会自动添加引号(用官方 cli 创建了一个 md 文件后马上就发现了这一点……) 过程 下面放源码 for (const [key, item] of Object.entries(data)) { if (moment.isMoment(item)) { data[key] = item.utc().format('YYYY-MM-DD HH:mm:ss'); } else if (moment.isDate(item)) { data[key] = moment.utc(item).format('YYYY-MM-DD...
zerotier自建planet容器迁移
发表于2025-01-29|技术实践
最近续费域名发现阿里云服务器 99 一年 2c2g,感觉自己血亏用了一整年的 78/month 的腾讯云,遂决定迁移。 经过测试发现 Zerotier 在迁移后需要根据 IP 重新生成 planet 文件,仍然需要重新分发,目前似乎没有好的解决办法,不如重新安装,安装时服务器的防火墙端口记得开 Nginx 配置 这次有一个阿里云的域名,干脆顺便配个 nginx 首先安装 nginx yum install nginx 然后进入到 nginx 的目录,新建一个配置文件,写入以下内容 cd /etc/nginxvim conf.d/zerotier.conf upstream zerotier { server 127.0.0.1:3443;}server { listen 80; server_name {your_site}; # 替换为自己的域名 location /zerotier/ { proxy_pass http://zerotier/; ...
基于ARM架构交叉编译libpcap库的技术指南
发表于2025-01-26|技术实践
基于 ARM 架构交叉编译 libpcap 库的技术指南 一、交叉编译环境搭建 1. 获取交叉编译工具链 推荐使用 Linaro 官方提供的 6.2 版本工具链: wget https://releases.linaro.org/components/toolchain/binaries/6.2-2016.11/arm-linux-gnueabihf/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf.tar.xz 文件校验信息: SHA256: 5eb7ab2f8a0b4b960900321505cd6923a072cb3e2412102f5f72a6e74c2f0a55 2. 配置编译环境 # 解压工具链tar -xvf gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf.tar.xz# 添加至环境变量export...
FTP同步服务静默崩溃故障分析:SIGPIPE信号与TCP半关闭状态的致命陷阱
发表于2025-01-26|技术实践
问题 故障情景 业务背景: 技术栈:C++线程池 + FTP 协议长连接 分布式系统中的文件 FTP 同步服务 故障描述: 本地FTP目录同步服务存在非正常进程终止缺陷。当远程FTP服务器发生非计划性停机(服务崩溃/网络中断/强制kill进程)时,本地同步进程发生静默崩溃(无退出状态码、无异常抛出) 故障分析 首先通过打印的 LOG 信息,快速定位到了 tcpSocket 的 Send() 方法中,Send() 方法的实现如下: ssize_t TcpSocket::Send(const void *buf, int len) const { if (!connected_) { return 0; } return ::write(skt_, buf, len);} 添加 try-catch 语句 首先先对其添加了 try-catch 语句尝试捕获异常,发现程序仍然直接退出 事后查阅资料发现,POSIX 的系统调用的错误以返回值出现,因此这里 try-catch 完全无效,应该针对返回值进行...
WSL2 配置 tensorflow 环境
发表于2025-01-24|技术实践
Windows 系统中更新 NVIDA 驱动 这里可以直接通过 Geforce Experience 直接更新 更新完成后可以在命令行/wsl 中输入 nvidia-smi 可以看到输出 这里的 CUDA Version 指的是该驱动版本最高可支持的 CUDA 版本 安装 CUDA 到 NVIDIA官网下载符合条件的 CUDA 这里我一开始直接选择安装了最新版的 CUDA 12.4,随后发现 Tensorflow 目前 (2024.3.17) 并不支持 12.4,于是重新安装,选择了 CUDA 11.2 直接下载 EXE 版本安装即可 在安装时,会发现安装报错 cuda you already have a newer version of the nvidia frameview sdk installed 这里需要到系统设置里卸载NVIDIA frameview sdk 组件,我使用的是 Geek 进行卸载,很干净 注意:不要直接到 NVIDIA 文件夹删除对应文件 下载 ANACONDA 到最新下载地址找到对应的 ANACONDA...
基于Nexus的第三方Nuget源搭建
发表于2025-01-23|技术实践
Nexus 是支持 Nuget、Docker、Npm 等多种包的仓库管理器,可用做私有包的存储分发,缓存官方包。 https://help.sonatype.com/en/sonatype-nexus-repository.html 环境需求 Docker 安装 创建数据挂载目录并赋予权限 mkdir data && chown -R 200 data 创建 docker-compose. Yml 文件 version: '3.1'services: nexus: # 这里使用latest可能拉不动 image: m.daocloud.io/docker.io/sonatype/nexus3:3.61.0 container_name: nexus3 restart: always environment: # Nexus 上下文路径 NEXUS_CONTEXT: / # 指定jvm参数 INSTALL4J_ADD_VM_PARAMS: -Xms1g...
告别“搬运式”更新,打造丝滑写作流(Obsidian + Hexo + Github Page)(如告,暂时只告别了本地搬运版)
发表于2025-01-23|工程方法
如果你在其他平台看到这篇文章,这可能不是最终版本。为了获得更好的阅读体验(包含最新的评论讨论和勘误),欢迎移步原文 写在前面 作为一个强迫症兼折腾爱好者,我一直梦想有一套完美的博客工作流:在 Obsidian 里像写日记一样随手记录,然后博客就自动静默发布到了网页上。 在折腾出这套方案之前,我每天都在重复极其琐碎的体力活:写完 Markdown -> 手动复制到 Hexo 目录 -> 手动敲指令 -> 等待上传。这种低效的流程不仅累,而且极其消磨写作的热情。 经过持续的踩坑,我终于基本跑通了这套基于 GitHub Actions 的 Obsidian-Hexo 自动化发布方案”。它的核心优势只有三个字:全自动。 写作在 Ob: 享受 Obsidian 强大的插件和管理能力。 图床在 Git: PicGo 配合 GitHub 仓库,图片随粘贴随上传。(这个得小心点,别白嫖太多,图片多了就得买个服务器了,不过那样指不定哪天图片就全 404 了,欢迎分享更好用的方案) 发布在云端: 只要我在 Git 提交,GitHub Actions...
12
avatar
Sentixxx
记录点点滴滴
文章
26
标签
89
分类
6
Follow Me
最新文章
渲染测试
渲染测试2026-06-11
测试
测试2026-06-11
从一个状态栏到一套框架:AI 如何改变了软件的写法
从一个状态栏到一套框架:AI 如何改变了软件的写法2026-06-11
谈谈Codex的一些坑
谈谈Codex的一些坑2026-06-06
代码里没写下来的那条规矩:AI 时代被放大的老 bug
代码里没写下来的那条规矩:AI 时代被放大的老 bug2026-05-30
分类
  • 个人日记4
  • 学习笔记2
  • 工程方法4
  • 归档测试2
  • 技术实践13
  • 随笔评论1
标签
软件开发 深度学习 PicGo TCP 环境配置 C OpenAI Typst 生活记录 阶段总结 C++/CLI CommonMark GitHub 排障 Markdown 开源 分布式存储 写作流 故障分析 AI Socket ZeroTier 日记 Nexus NuGet 图床 FTP 软件架构 私有源 GitHubPlugin WSL2 .NET hide Hexo 开发环境 论文阅读 AIAgent DLL 工程规范 tcpdump
归档
  • 六月 2026 2
  • 五月 2026 4
  • 四月 2026 5
  • 二月 2026 1
  • 十二月 2025 1
  • 三月 2025 1
  • 二月 2025 3
  • 一月 2025 8
网站信息
文章数目 :
26
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2025 - 2026 By Sentixxx
框架 Hexo|主题 Butterfly
沪ICP备2025112621号-1
搜索
数据加载中