![尝试将本地 texmf 树添加到 MiKTeX 时出现错误:Windows API 错误 5:访问被拒绝。](https://linux22.com/image/398375/%E5%B0%9D%E8%AF%95%E5%B0%86%E6%9C%AC%E5%9C%B0%20texmf%20%E6%A0%91%E6%B7%BB%E5%8A%A0%E5%88%B0%20MiKTeX%20%E6%97%B6%E5%87%BA%E7%8E%B0%E9%94%99%E8%AF%AF%EF%BC%9AWindows%20API%20%E9%94%99%E8%AF%AF%205%EF%BC%9A%E8%AE%BF%E9%97%AE%E8%A2%AB%E6%8B%92%E7%BB%9D%E3%80%82.png)
我已经为我的软件包创建了一个本地树: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
嗯,我猜这个问题可以分为三个部分:
- 您是否以管理员身份安装了 MiKTeX,但
localtexfm
以用户身份添加了? - 您是否拥有您的
localtexfm
目录的写入权限:C:\Files\MikTex\localtexmf
? - 您的 MiKTeX 安装已损坏。
以管理员身份打开 MiKTeX 控制台并点击Settings
。然后点击 后你应该会看到类似这样的内容Directories
:
相反,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 主页