From 556d70eab3a282e8decae16eb6a7c086c8da0dda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=94=B5=E6=91=87=E5=B0=8F=E5=AD=90?= <969409112@qq.com> Date: Tue, 14 Jul 2026 14:33:40 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=B8=B4=E6=97=B6=E5=8A=A0=E4=B8=80?= =?UTF-8?q?=E4=B8=AAwindows=20=E7=9B=AE=E5=BD=95=E8=BE=93=E5=85=A5?= =?UTF-8?q?=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/renderer/src/App.tsx | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/renderer/src/App.tsx b/src/renderer/src/App.tsx index 986803f..53d751f 100644 --- a/src/renderer/src/App.tsx +++ b/src/renderer/src/App.tsx @@ -164,6 +164,7 @@ function App(): React.ReactElement { const [dbKeyStatus, setDbKeyStatus] = useState('') const [dbKeyStatusKind, setDbKeyStatusKind] = useState<'normal' | 'success' | 'error'>('normal') const [showDbKey, setShowDbKey] = useState(false) + const [dbRootInput, setDbRootInput] = useState('') const [showMacKeyFaq, setShowMacKeyFaq] = useState(false) const [activePage, setActivePage] = useState('archive') const [settingsCategory, setSettingsCategory] = useState('account-database') @@ -361,6 +362,13 @@ function App(): React.ReactElement { React.useEffect(() => { let active = true const attemptAutoConnect = async (): Promise => { + // 预填已保存的微信聊天文件路径 + try { + const settings = await window.api.getSettings() + if (active && settings?.settings?.dbRoot) setDbRootInput(settings.settings.dbRoot) + } catch { + // 忽略读取设置失败,继续走密钥流程 + } // 优先级 1: 构建期环境变量 VITE_DB_KEY(本地开发用) const envKey = String(import.meta.env.VITE_DB_KEY || '').trim() // 优先级 2: 上一次保存到 safeStorage 的密钥 @@ -439,6 +447,15 @@ function App(): React.ReactElement { const keyToUse = keyInput || dbKey if (!keyToUse) return setBootState('connecting') + // 持久化用户手动指定的微信聊天文件路径,供 db:init 读取 settings.dbRoot + const trimmedRoot = dbRootInput.trim() + if (trimmedRoot) { + try { + await window.api.setSettings({ dbRoot: trimmedRoot }) + } catch { + // 忽略保存失败,仍尝试用默认路径连接 + } + } setStartupProgress({ title: '正在连接数据库...', subtitle: '正在初始化微信数据', @@ -1263,6 +1280,19 @@ function App(): React.ReactElement {