<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Posts on kawhing's Blog</title><link>https://kawhing.github.io/zh/posts/</link><description>Recent content in Posts on kawhing's Blog</description><generator>Hugo</generator><language>zh</language><lastBuildDate>Sat, 06 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://kawhing.github.io/zh/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>无意间发现Type-c 3.5mm音频转接头接到我的电脑能替代我的声卡</title><link>https://kawhing.github.io/zh/posts/2026-06-06-audio-card/</link><pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2026-06-06-audio-card/</guid><description>&lt;blockquote&gt;
&lt;p&gt;背景：在今年春节，由于家里网络机顶盒的遥控器出点小问题，所以我想将电脑投屏到电视上，拔下后发现电脑声卡消失了，无论装驱动还是重装系统都无法解决，用Linux测试发现是声卡的一个codec解码芯片坏了，这要修得换主板所以就没修。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="如何解决的"&gt;如何解决的？&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;首先: 用带有声卡的耳机或者PC Audio Stram to Phone类似的软件临时过渡，这样有时候挺麻烦的。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;最后: 我无意间发现Type-c to 3.5mm音频转接头插到电脑上竟然能识别出音频设备，就是这个转接头的DAC芯片发烫。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>卸载visio导致其他Office应用丢失动态链接库</title><link>https://kawhing.github.io/zh/posts/2026-05-18/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2026-05-18/</guid><description>&lt;h2 id="office动态链接库问题"&gt;office动态链接库问题&lt;/h2&gt;
&lt;p&gt;&lt;img alt="visio" loading="lazy" src="https://kawhing.github.io/images/2026-05-18.png"&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;昨天由于卸载visio了，谁知道竟会顺手把其他office依赖的动态链接库给卸载，我于是今天想用c2r安装结果提示网络报错，这么奇怪，我联网了，我想难道是UWP应用的代理环回限制，反正不需要代理下载，我就退出代理软件了，结果还是不行。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;然后我就换软件Office_Tool_with_runtime_v10.22.2.0_x64,之前没用过，感觉界面好多呀，眼花缭乱。今天试着，还行，连上我的热点一会儿下完所需的2G，然后我想可以刻录为ISO，我就刻录下来，以防以后网络卡顿下载慢。一开始少勾选了Excel，少下载安装了，我又重新下载，ISO，安装，又来了一遍。不过最后还是安装好了。以后office还是少单独卸载吧，万一在整这一出有麻烦。有人可能会说为什么我不修复安装呀，省的在下载安装，但是呢我试过了，还是提示网络错误还有其他报错。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="markdown软件"&gt;markdown软件&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;另外呢我安装了Typora的最后一个免费测试的版本。同时根据一个教程把禁止它修改注册表，然后就停止更新提醒了。我也想付费，但是学生党没钱买，服务器都是忍痛买了个便宜的，以后上班一定会补回来。&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>PixPin老版本退出bug</title><link>https://kawhing.github.io/zh/posts/2026-05-17/</link><pubDate>Sun, 17 May 2026 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2026-05-17/</guid><description>&lt;h1 id="pixpin老版本bug"&gt;PixPin老版本bug&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;晚上看网课的时候突然想用PixPin截屏，但截屏后发现程序结束了，也许这就是自动启动是计划任务的弊端吧，然后想是是版本太老了，结果一看版本是2.0.0.3。25年7月下载的，想升级，点击升级提示服务器相应错误。我猜应该是链接改了，我不更新，本地程序没更新&lt;/p&gt;
&lt;p&gt;&lt;img alt="PixPin1" loading="lazy" src="https://kawhing.github.io/images/2026-05-17-1.png"&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;那我点击使用文档发现还能跳转到官网，再一看，原来我当初安装的是 2025年4月9日 2.0.0的版本下的一个小更新版本。现在都有 v3.1.4.0了，2026年04月23日的，看来我得赶紧更新了
&lt;img alt="PixPin2" loading="lazy" src="https://kawhing.github.io/images/2026-05-17-2.png"&gt;
看来更新了不少内容&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>个人遇到的TIM 4.0.98 在 Android 16 上报"无法存储文件"问题的见解</title><link>https://kawhing.github.io/zh/posts/2026-05-01-tim/</link><pubDate>Fri, 01 May 2026 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2026-05-01-tim/</guid><description>&lt;h2 id="问题"&gt;问题&lt;/h2&gt;
&lt;p&gt;TIM 4.0.98 在 Android 16（crDroid）上启动后报&amp;quot;无法存储文件，请检查SD卡状态&amp;quot;，无法加载图片及缓存文件。&lt;/p&gt;
&lt;h2 id="根因"&gt;根因&lt;/h2&gt;
&lt;p&gt;Android 16 存在 bug，应用安装后 &lt;code&gt;/storage/emulated/0/Android/data/&amp;lt;包名&amp;gt;/&lt;/code&gt; 目录不会自动创建。TIM 的 NTKernel（C++ 层）直接拼路径写文件，没有经过 &lt;code&gt;getExternalFilesDir()&lt;/code&gt; 这个 Java API，因此没有触发系统自动创建目录，导致所有文件写入返回 EIO（error -5）。&lt;/p&gt;
&lt;h2 id="关键日志"&gt;关键日志&lt;/h2&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;W ContextImpl: Failed to ensure /storage/emulated/0/Android/data/com.tencent.tim/cache
E NTKernel: CreateTempDir Fail. error:-5 path=/storage/emulated/0/Android/data/com.tencent.tim/Tencent/Tim/chatpic/Temp
E NTKernel: CreateFileDir Fail. error:-5 path=/storage/emulated/0/Android/data/com.tencent.tim/Tencent/Tim/chatpic/chatraw/a29
E NTKernel: fail to create directory:/storage/emulated/0/Android/data/com.tencent.tim/Tencent/Tim/chatpic/Temp(-5)
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="临时解决方案"&gt;临时解决方案&lt;/h2&gt;
&lt;p&gt;获取 TIM 的 uid：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;su -c &lt;span style="color:#e6db74"&gt;&amp;#34;stat -c %u /data/data/com.tencent.tim&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;手动创建目录并设置正确属主（将 &lt;code&gt;10499&lt;/code&gt; 替换为实际 uid）：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;su -c &lt;span style="color:#e6db74"&gt;&amp;#34;mkdir -p /storage/emulated/0/Android/data/com.tencent.tim/cache &amp;amp;&amp;amp; \
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;mkdir -p /storage/emulated/0/Android/data/com.tencent.tim/files &amp;amp;&amp;amp; \
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;chown -R 10499:10499 /storage/emulated/0/Android/data/com.tencent.tim &amp;amp;&amp;amp; \
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt;chmod -R 771 /storage/emulated/0/Android/data/com.tencent.tim&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="备注个人见解"&gt;备注（个人见解）&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;此问题为 Android 16 上游 bug，非 crDroid 特有，原生 Pixel 设备同样可复现&lt;/li&gt;
&lt;li&gt;其他经过 Java API（&lt;code&gt;getExternalFilesDir()&lt;/code&gt;）创建目录的 app 不受影响&lt;/li&gt;
&lt;li&gt;TIM 未针对 Android 16 做适配，且测试范围基本限于国内厂商 ROM&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>修复git网络、Power Shell启动慢和Git repo 换行符导致工作区修改的问题</title><link>https://kawhing.github.io/zh/posts/2026-04-30/</link><pubDate>Thu, 30 Apr 2026 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2026-04-30/</guid><description>&lt;h2 id="解决-wsl下的-git-代理-问题"&gt;解决 &lt;strong&gt;WSL&lt;/strong&gt;下的 &lt;strong&gt;git&lt;/strong&gt; 代理 问题&lt;/h2&gt;
&lt;p&gt;首先，WSL的本身就是虚拟机，自己有着自己的网络协议栈，如果硬要实现直接被实体机直接代理就麻烦许多，所以我只是通过实体机的局域网&lt;em&gt;IP&lt;/em&gt;来局域网代理
a&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git config --global http.proxy http://*.*.*.*:10808
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git config --global https.proxy http://*.*.*.*:10808
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;还有的 &lt;em&gt;ssh&lt;/em&gt; 能用http代理，通过 &lt;strong&gt;connect-proxy&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;apt install -y connect-proxy
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Host github.com
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; HostName ssh.github.com
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; Port &lt;span style="color:#ae81ff"&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; User git
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; IdentityFile path/to/ssh_private_key
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ProxyCommand connect-proxy -H &amp;lt;Porxy IP&amp;gt;:&amp;lt;port&amp;gt; %h %p
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="解决-powershell-启动加载速度慢"&gt;解决 PowerShell 启动加载速度慢&lt;/h2&gt;
&lt;p&gt;使得 &lt;em&gt;PowerShell&lt;/em&gt; 启动加速 &lt;em&gt;1418ms&lt;/em&gt; 到秒开&lt;/p&gt;
&lt;p&gt;问题：
Loading personal and system profiles took 1418ms。D:\UserName\Documents\PowerShell\profile.ps1 里 Conda 初始化每次启动调用 conda.exe，加上 Windows Defender 扫描。&lt;/p&gt;
&lt;p&gt;解决：&lt;/p&gt;</description></item><item><title>解决了通过 SSH 连接 VPS 的一系列环境障碍</title><link>https://kawhing.github.io/zh/posts/2026-04-23-vps-ssh/</link><pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2026-04-23-vps-ssh/</guid><description>&lt;h2 id="一-修复原生环境的-ssh-密钥管理"&gt;一、 修复原生环境的 SSH 密钥管理&lt;/h2&gt;
&lt;p&gt;我解决了在本地 PowerShell 通过 &lt;code&gt;ssh&lt;/code&gt; 命令登录 VPS 时的技术阻碍：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;解决 ssh-agent 无法连接问题&lt;/strong&gt;
针对执行 &lt;code&gt;ssh-add&lt;/code&gt; 报错 &lt;code&gt;Error connecting to agent&lt;/code&gt; 的问题，我通过管理员权限执行以下命令，将 &lt;code&gt;ssh-agent&lt;/code&gt; 服务设为自动启动并开启：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;设置ssh config&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Set-Service -Name ssh-agent -StartupType Automatic
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Start-Service ssh-agent
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;pre tabindex="0"&gt;&lt;code class="language-.config" data-lang=".config"&gt;Host &amp;#34;VPS Doamin&amp;#34;
Hostname &amp;#34;VPS IP&amp;#34;
User root
Port 22
IdentityFile path\to\id_ed25519
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="二-使用专业的-ssh-连接工具"&gt;二、 使用专业的 SSH 连接工具&lt;/h2&gt;
&lt;p&gt;为了更方便地连接和管理 VPS，我配置并测试了专门的 SSH 工具：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;WindTerm&lt;/strong&gt;：使用了这款高性能的 SSH 客户端，其实时响应速度非常快。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MobaXterm&lt;/strong&gt;：通过将 &lt;code&gt;MobaXterm_Portable_v24.3_chs&lt;/code&gt; 汉化版的插件覆盖移动到官方安装版的文件中，实现了官方安装版的汉化使用。利用其集成的 SFTP 传输和中文界面来管理远程 VPS 文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="三-eclipse-插件安装与汉化"&gt;三、 Eclipse 插件安装与汉化&lt;/h2&gt;
&lt;p&gt;我尝试了对 Eclipse 的界面汉化：&lt;/p&gt;</description></item><item><title>我的 Linux 启动修复经历</title><link>https://kawhing.github.io/zh/posts/2025-05-07-linux-boot-repair/</link><pubDate>Wed, 07 May 2025 00:00:00 +0000</pubDate><guid>https://kawhing.github.io/zh/posts/2025-05-07-linux-boot-repair/</guid><description>&lt;blockquote&gt;
&lt;p&gt;💡 背景知识
默认情况下，当你安装操作系统时，系统会在磁盘的特定位置创建一个 EFI 分区。UEFI/BIOS正是利用该分区来正确引导系统启动的。然而，如果你在同一块磁盘上安装了另一个操作系统（例如 Windows），新的安装程序可能会覆盖原有的 EFI 分区，从而导致之前的操作系统无法启动。我就遇到了这种情况——Windows 覆盖了我的 Linux 引导加载程序（Bootloader）。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="1-修复前的准备工作"&gt;1. 修复前的准备工作&lt;/h2&gt;
&lt;p&gt;当时我手头没有现成的 Linux 安装介质，于是我从官方网站下载了我所用发行版的 ISO 镜像文件，并将其写入到了一个 USB 闪存盘中。随后，我进入了 UEFI/BIOS 设置界面，**禁用了“安全启动”（Secure Boot）和“快速启动”（Fast Boot）**功能，保存设置并重启电脑，最终通过 USB 闪存盘成功引导进入了 Live 环境。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;💡 如果你使用的是像 Ventoy 这样的多系统引导工具，且在正常引导模式下遇到了卡死的情况，不妨尝试切换到 GRUB 引导模式。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="2-挂载分区"&gt;2. 挂载分区&lt;/h2&gt;
&lt;p&gt;进入 Live 环境后，我使用 &lt;code&gt;lsblk&lt;/code&gt; 和 &lt;code&gt;fdisk -l&lt;/code&gt; 命令来检查磁盘分区情况，以此确定哪一个是我 Linux 系统的根分区（Root Partition），哪一个又是 EFI 分区（通常大小在 100 至 500 MB 之间，且文件系统类型为 vfat）。下图展示了在 DiskGenius 中看到的磁盘分区布局：&lt;/p&gt;
&lt;p&gt;&lt;img alt="DiskGenius 中的分区布局" loading="lazy" src="https://kawhing.github.io/images/2025-05-07-1.png"&gt;&lt;/p&gt;
&lt;p&gt;接着，我挂载了这些分区：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mount /dev/nvme0n1p5 /mnt &lt;span style="color:#75715e"&gt;# 挂载根分区（请根据你的实际配置进行调整）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mount /dev/nvme0n1p1 /mnt/boot/efi &lt;span style="color:#75715e"&gt;# 挂载 EFI 分区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mount --bind /dev /mnt/dev
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mount --bind /proc /mnt/proc
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mount --bind /sys /mnt/sys
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mount --bind /run /mnt/run
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;（我没有单独的 &lt;code&gt;/home&lt;/code&gt; 或 &lt;code&gt;/boot&lt;/code&gt; 分区，所以我跳过了它们。不过，后来再次遇到这种启动故障——特别是在一步步手动安装 Arch Linux 之后——我对这一过程有了更深入的理解。实际上，在 Arch Linux 中，你无需挂载如此多的目录；像 &lt;code&gt;/dev&lt;/code&gt;、&lt;code&gt;/proc&lt;/code&gt;、&lt;code&gt;/sys&lt;/code&gt; 和 &lt;code&gt;/run&lt;/code&gt; 这些必要的目录，系统会自动为你挂载。）&lt;/p&gt;</description></item></channel></rss>