Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

win10系统上,当用户目录使用相对路径时,重启系统后小狼毫服务读取用户目录异常 #563

Closed
mokapsing opened this issue Sep 22, 2020 · 2 comments
Labels

Comments

@mokapsing
Copy link

mokapsing commented Sep 22, 2020

@lotem @Prcuvu @nameoverflow
win10系统下,当设置用户目录路径为相对路径(e.g. ..\UserData)时,在系统重启后,小狼毫服务进程读取用户目录会产生异常,导致输入功能不可用
image

当前本人注册表启动项为计算机\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
image
rime日志如下

Log file created at: 2020/09/22 22:27:08
Running on machine: DESKTOP-7DUJJ5V
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
E0922 22:27:08.742835 11180 deployment_tasks.cc:87] Error creating user data dir: ..\UserData
W0922 22:27:08.742835 11180 config_data.cc:62] nonexistent config file '..\UserData\installation.yaml'.
E0922 22:27:08.742835 11180 config_data.cc:41] failed to save config to stream.
W0922 22:27:08.742835 11180 config_data.cc:62] nonexistent config file 'C:\WINDOWS\SysWOW64\..\UserData\build/weasel.yaml'.
W0922 22:27:23.376289  4200 config_data.cc:62] nonexistent config file 'C:\WINDOWS\SysWOW64\..\UserData\build/default.yaml'.
W0922 22:27:23.376289  4200 config_data.cc:62] nonexistent config file 'C:\WINDOWS\SysWOW64\..\UserData\user.yaml'.
W0922 22:27:23.407532  4200 config_data.cc:62] nonexistent config file 'C:\WINDOWS\SysWOW64\..\UserData\build/.default.schema.yaml'.

当注册表信息在WOW6432Node下时,会读取 C:\WINDOWS\SysWOW64..\UserData\ 下的文件
另外本人也验证过,将启动项手动改为计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 时,日志中则显示会读取 C:\WINDOWS\System32..\UserData\下的文件
怀疑是win10注册表特性变化, 因为本人从win7时就一直习惯以相对路径(..\UserData)设置用户目录
希望本人提供的信息会方便你们开发人员修复此问题
以下为日志文件,希望能有所帮助
rime.weasel.DESKTOP.zip

@mokapsing mokapsing changed the title win10系统上,当用户目录使用相对路径时,重启小狼毫服务读取用户目录异常 win10系统上,当用户目录使用相对路径时,重启系统后小狼毫服务读取用户目录异常 Sep 22, 2020
@Prcuvu
Copy link
Contributor

Prcuvu commented Sep 24, 2020

相对路径是相对于当前工作目录的路径。我们并不保证以任何方式启动小狼毫算法服务时,工作目录一定位于可执行文件所在的目录(即安装目录)下。Windows 10 改变了注册表自动启动程序的默认工作目录,也不在我们的管辖范围内。我认为用户不应该对工作目录有任何假设,也就是说,我不推荐使用相对路径。
征求一下 @lotem 的看法。有没有必要给予“小狼毫所有可执行文件都以安装目录为默认工作目录”的保证?

@lotem
Copy link
Member

lotem commented Sep 24, 2020

這樣設置真是奇特。不明確是相對於哪個目錄。
可以做的保證是數據文件的路徑是相對於「用戶目文件夾」或「共享文件夾」的,「用戶目文件夾」「共享文件夾」應當設置爲明確的路徑。

@lotem lotem closed this as completed Sep 24, 2020
@lotem lotem added the Wontfix label Sep 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants