You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Manjaro通过Wine运行TickTick(Win x64)出现CreateDbFailed错误求助

问题:Wine运行TickTick x64版出现CreateDbFailed错误及空引用异常

在Manjaro系统中通过Wine运行Windows x64版TickTick时,弹出提示:CreateDbFailed, please make sure to run with admin priv,应用虽能启动,但触发以下空引用异常日志:

Operation System Version-> 10.0.19043.0 ***** 
CurrentTime -> 01/30/2024 09:20:32 ***** 
Locale -> en-US ***** 
Device Location -> en-US ***** 
Version ->  ***** 
Exception Type -> System.NullReferenceException ***** 
Exception Message -> Object reference not set to an instance of an object ***** 
Exception Data -> System.Collections.ListDictionaryInternal ***** 
 ->  ***** 
 -> mscorlib ***** 
 -> Void Throw() ***** 
 ->   at ticktick_WPF.App.TryGetLocalSettings () [0x0002d] in <8f90307ac9cb436e9f50ce70ac9eac5c>:0 
  at ticktick_WPF.Util.Utils.LogTaskTimes (System.Threading.Tasks.Task task, System.Int32 maxMilliseconds, System.String startMessage, System.String warnMessage) [0x0008c] in <8f90307ac9cb436e9f50ce70ac9eac5c>:0 
  at ticktick_WPF.App.StartUpSafely (System.Windows.StartupEventArgs e, System.Boolean createdNew) [0x001cf] in <8f90307ac9cb436e9f50ce70ac9eac5c>:0 
  at ticktick_WPF.App.OnStartup (System.Windows.StartupEventArgs e) [0x000b2] in <8f90307ac9cb436e9f50ce70ac9eac5c>:0 
  at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_0 (System.Object state) [0x00000] in <de4d51d88e3b4eea89a8d6a3a9854818>:0 
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate callback, System.Object args, System.Int32 numArgs) [0x000e7] in <75de555cd62f40719584e76ba8a177cc>:0 
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen (System.Object source, System.Delegate callback, System.Object args, System.Int32 numArgs, System.Delegate catchHandler) [0x00004] in <75de555cd62f40719584e76ba8a177cc>:0  ***** 

已尝试将Windows系统下TickTick的AppData目录内容复制到Wine对应的~/.wine/drive_c/users/<你的用户名>/AppData目录,但问题仍未解决。因Windows版TickTick功能更完整且支持离线使用,故优先选择该版本,需排查错误原因并找到解决方案。


可能原因分析

  • Wine虚拟环境中,TickTick尝试创建/访问本地数据库文件时,Wine用户目录权限不足,导致数据库初始化失败,后续代码因依赖未初始化的数据库实例触发空引用异常。
  • Wine的.NET运行时兼容性问题,WPF应用在解析本地配置/数据库路径时出现错误。

解决步骤

1. 以Wine管理员身份启动TickTick

进入TickTick安装目录(通常为~/.wine/drive_c/Program Files/TickTick),执行终端命令:

wine start /unix "TickTick.exe" /runas

也可修改桌面快捷方式的启动命令,添加/runas参数强制以管理员权限运行。

2. 修复Wine用户目录权限

确保当前系统用户对Wine虚拟用户目录拥有完整读写权限:

chmod -R u+rw ~/.wine/drive_c/users/<你的用户名>/AppData

替换<你的用户名>为Wine中的用户名(默认与系统用户名一致)。

3. 重置Wine的.NET环境

针对WPF应用的兼容性问题,重新注册.NET组件:

wine regsvr32 mscoree.dll
wine regsvr32 mshtml.dll

或使用Winetricks安装TickTick依赖的.NET框架(推荐4.7.2版本):

winetricks dotnet472

4. 手动指定数据库存储路径

找到TickTick配置目录~/.wine/drive_c/users/<你的用户名>/AppData/Roaming/TickTick,修改配置文件(若存在)添加自定义数据库路径:

DbPath=C:\users\<你的用户名>\Documents\TickTickDB

手动创建该目录并赋予权限:

mkdir -p ~/.wine/drive_c/users/<你的用户名>/Documents/TickTickDB
chmod u+rw ~/.wine/drive_c/users/<你的用户名>/Documents/TickTickDB

5. 更新Wine版本

确保使用最新稳定版Wine,Manjaro下执行更新:

sudo pacman -S wine-stable

或尝试针对复杂应用优化的Wine-GE版本:

yay -S wine-ge-custom

内容的提问来源于stack exchange,提问作者ezio4df

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 09:23:32