尝试将本地 texmf 树添加到 MiKTeX 时出现错误:Windows API 错误 5:访问被拒绝。

尝试将本地 texmf 树添加到 MiKTeX 时出现错误:Windows API 错误 5:访问被拒绝。

我已经为我的软件包创建了一个本地树:C:\Files\MikTex\localtexmf\tex\latex\sv并将软件包文件(包括svproc.cls)复制到那里,刷新了文件名数据库,刷新了字体映射并更新了中的软件包数据库MiKTeX

它出现在根路径中:

"
`GENERAL MIKTEX INFORMATION
Date: 2019-07-05 17:29:21
MiKTeX: 2.9.7050
OS: Windows 10 Home, 64-bit, build 17763
SharedSetup: yes
LinkTargetDirectory: C:\Program Files\MiKTeX 2.9\miktex\bin\x64
PathOkay: yes
LastUpdateCheckAdmin: 2019-07-05 07:49:55
LastUpdateAdmin: 2019-07-05 07:51:09
SystemAdmin: yes
RootPrivileges: no
AdminMode: no

Root0: C:\Users\prate\AppData\Roaming\MiKTeX\2.9

Root1: C:\Users\prate\AppData\Local\MiKTeX\2.9

Root2: C:\Files\MikTex\localtexmf

Root3: C:\ProgramData\MiKTeX\2.9

Root4: C:\Program Files\MiKTeX 2.9

UserInstall: C:\Users\prate\AppData\Roaming\MiKTeX\2.9
UserConfig: C:\Users\prate\AppData\Roaming\MiKTeX\2.9
UserData: C:\Users\prate\AppData\Local\MiKTeX\2.9
CommonInstall: C:\Program Files\MiKTeX 2.9
CommonConfig: C:\ProgramData\MiKTeX\2.9
CommonData: C:\ProgramData\MiKTeX\2.9
Invokers: explorer`"

但是当我尝试编译我的 tex 文件时出现错误:

"
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (MiKTeX 2.9.7050 64-bit)
entering extended mode
(C:/Files/LaTeXFiles/authorLJP.tex
LaTeX2e <2018-12-01>

! LaTeX Error: File `svproc.cls' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: cls)

Enter file name: 
"

我关闭了 TeXworks 和 MiKTeX。

当我再次打开 MiKTeX 时,本地树不再列出在那里......

再次尝试添加本地路径,结果出现以下错误:

"
GENERAL MIKTEX INFORMATION
Date: 2019-07-05 18:35:00
MiKTeX: 2.9.7050
OS: Windows 10 Home, 64-bit, build 17763
SharedSetup: yes
LinkTargetDirectory: C:\Program Files\MiKTeX 2.9\miktex\bin\x64
PathOkay: yes
LastUpdateCheckAdmin: 2019-07-05 07:49:55
LastUpdateAdmin: 2019-07-05 07:51:09
SystemAdmin: yes
RootPrivileges: no
AdminMode: no
Root0: C:\Users\prate\AppData\Roaming\MiKTeX\2.9
Root1: C:\Users\prate\AppData\Local\MiKTeX\2.9
Root2: C:\Files\MikTex\localtexmf
Root3: C:\ProgramData\MiKTeX\2.9
Root4: C:\Program Files\MiKTeX 2.9
UserInstall: C:\Users\prate\AppData\Roaming\MiKTeX\2.9
UserConfig: C:\Users\prate\AppData\Roaming\MiKTeX\2.9
UserData: C:\Users\prate\AppData\Local\MiKTeX\2.9
CommonInstall: C:\Program Files\MiKTeX 2.9
CommonConfig: C:\ProgramData\MiKTeX\2.9
CommonData: C:\ProgramData\MiKTeX\2.9
Invokers: non-existing

ERROR DETAILS
Program: C:\Program Files\MiKTeX 2.9\miktex\bin\x64\miktex-console.exe
Source: Libraries\MiKTeX\Core\win\winRegistry.cpp:173
Error: Windows API error 5: Access is denied.
Details: 
  path: Software\MiKTeX.org\MiKTeX\2.9\Core
"

虽然列出了我的本地树,但是当我尝试编译我的 tex 文件时,我得到:

"! LaTeX Error: File `svproc.cls' not found."

请帮忙!

答案1

嗯,我猜这个问题可以分为三个部分:

  1. 您是否以管理员身份安装了 MiKTeX,但localtexfm以用户身份添加了?
  2. 您是否拥有您的localtexfm目录的写入权限:C:\Files\MikTex\localtexmf
  3. 您的 MiKTeX 安装已损坏。

以管理员身份打开 MiKTeX 控制台并点击Settings。然后点击 后你应该会看到类似这样的内容Directories

miktex 控制台

相反,c:/localtexmf你应该看到C:\Files\MikTex\localtexmf

接下来您将看到德语 Windows,我尝试翻译相关的菜单点,希望以正确的方式...

现在打开 Windows 资源管理器,单击您的目录C:\Files\MikTex\localtexmf(红色箭头 1),右键单击子目录tex(红色箭头 2)以获取上下文菜单并选择properties获取以下窗口:

特性

现在单击security(红色箭头 3)并选择“经过验证的用户”(红色箭头 4),并检查在红色箭头 5 标记的位置是否只有灰色钩子。

我猜你对该目录和以下子目录没有读取权限。如果是这样,请将钩子更改为我在上面的屏幕截图中用红色箭头 5 标记的位置。如果这一切都正确并且不需要更改:好的,很好。

请重新启动您的计算机(Windows 是一个需要重新启动的操作系统...)并检查是否仍然收到错误消息。

现在,请确保您已sv在 localtexmf 中添加了包所需的所有文件。该包是公开的吗?您有它的链接吗?

现在使用管理员模式下的 MiKTeX 控制台更新您的 MiKTeX!如果您幸运的话,更新还会修复您可能遇到的错误安装(如果错误消息仍然存在)。

现在重新启动您的计算机(我不是说过 Windows 喜欢重新启动吗?:-())。

错误消失了?

对很好!

否 - 请通过以下方式联系 MiKTeX 支持人员MIKTeX 主页

相关内容