如何在 Windows 上卸载 darktable
卸载 darktable 不会动你的照片,但它的图库数据库、风格、预设和偏好设置都在 %LOCALAPPDATA%\darktable,卸载器会把它留下。默认情况下编辑结果还会写进每张照片旁边的 .xmp 文件,所以无论如何都不会丢,想重装后保留同样的图库、标签和风格,就先把这个文件夹复制一份。这份指南覆盖用官方 x64 安装包按机器安装的 darktable,也就是 darktable.darktable winget 包用的那个安装包。
先退出 darktable
关掉 darktable,等它把图库写完。它除了 darktable.exe 还会跑一个辅助进程 gdbus.exe,卸载前在任务管理器(Ctrl+Shift+Esc)里确认两个都不在了。它不会添加启动项。
用自带的卸载器移除应用
打开「设置 › 应用 › 已安装的应用」,找到 darktable,选择卸载,或者运行:
winget uninstall --id darktable.darktable
按机器安装的版本卸载时会要管理员权限。
数据分别在哪里
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
%ProgramFiles%\darktable |
程序 | 卸载器会删,跑完后还剩下的可以删掉 |
%LOCALAPPDATA%\darktable |
图库数据库、风格、预设和偏好设置 | 先备份,只在想从头开始时才删 |
开始菜单 darktable 文件夹 |
快捷方式 | 卸载器会删 |
%USERPROFILE%\.dbus-keyrings |
darktable 的 gdbus 辅助进程建的一个小密钥环文件夹 |
用同样底层库的其他程序也可能用它,确定没有别的程序在用之前留着 |
darktable 给整台机器登记的文件类型(.exr、.hdr、.fits 等) |
所有看图修图应用共用的扩展名条目 | 留着不动 |
检查结果
卸载完成后运行下面几条只读命令:
Get-Process darktable, gdbus -ErrorAction SilentlyContinue
winget list --id darktable.darktable
Test-Path "$env:ProgramFiles\darktable"
Test-Path "$env:LOCALAPPDATA\darktable"
Get-Process没有输出只表示未观察到匹配进程,被忽略的查询错误不能当作已经退出。winget list正常完成且没有匹配,才说明包记录已经没了;列出一行,说明卸载没完成。- 第一条
Test-Path返回False,说明程序目录已经没了;返回True,说明那里还有文件。 - 第二条返回
True,说明图库和设置都还在,只要你没有自己删掉,这就是正常的。
用 winget 安装时
winget uninstall 运行的是「设置 › 应用」用的同一个 Inno Setup 卸载器,删的是同一批程序文件,不会动 %LOCALAPPDATA%\darktable 和你的照片。
Mole 会列出什么
对按机器安装的 darktable:
- 程序目录跟着应用那一行走,开始菜单
darktable文件夹和一行汇总 Windows 自己记下的这个程序的打开记录默认勾选。 %LOCALAPPDATA%\darktable会列出,但默认不勾选,里面有你的图库数据库。%USERPROFILE%\.dbus-keyrings不会列出,整台机器登记的文件类型条目也不会动。- 照片和它们的
.xmp文件从来不在这张表里。
这次检查覆盖了什么
2026 年 9 月 27 日测试,darktable 5.6.1,用 winget 清单里的 x64 Inno Setup 安装包按机器范围安装。它的卸载器静默运行,删掉了开始菜单文件夹,Mole 动手时程序目录还在,由 Mole 移到了回收站,这次把列出的每一行都勾上并移除了。没有测试:导入过照片的图库,以及重装后恢复图库。
