我希望有人能指出 yap.exe 可能存在的配置错误。
我刚刚在 Windows 10 上(重新)安装了 MikTeX 2.9 供个人使用(即不使用管理员权限,因为这是一台公司机器)。我可以通过右键单击 dvi 文件并选择“打开方式”选项来启动 Yap.exe。但是,如果我从命令行启动 yap,或者双击 dvi 文件,我会收到“Windows API 错误 122:传递给系统调用的数据区域太小。”并且文件无法打开。
更准确地说,如果我双击 dvi 文件,我会在 yap.log 文件中得到以下内容...
2020-09-14 15:13:28,662-0400 INFO yap - this is Yap 4.0 (MiKTeX 20.7)
2020-09-14 15:13:28,662-0400 INFO yap - this process (4988) started by 'explorer' with command line: /dde
2020-09-14 15:13:28,727-0400 ERROR yap.core - The data area passed to a system call is too small.
2020-09-14 15:13:28,727-0400 ERROR yap.core - Function: Process32NextW
2020-09-14 15:13:28,727-0400 ERROR yap.core - Result: 122
2020-09-14 15:13:28,727-0400 ERROR yap.core - Data:
2020-09-14 15:13:28,727-0400 ERROR yap.core - Source: Libraries\MiKTeX\Core\Process\win\winProcess.cpp:637
2020-09-14 15:13:28,728-0400 ERROR yap - Libraries\MiKTeX\Core\Process\win\winProcess.cpp:637: Windows API error 122: The data area passed to a system call is too small.
()
2020-09-14 15:13:46,577-0400 INFO yap - this process (4988) finishes with exit code 0
但是如果我使用调用 yap.exe 的“打开方式”方法,我会在日志文件中得到以下内容,并且文件可以正常打开...
2020-09-14 15:16:45,377-0400 INFO yap - this is Yap 4.0 (MiKTeX 20.7)
2020-09-14 15:16:45,377-0400 INFO yap - this process (16172) started by 'OpenWith' with command line: /dde
2020-09-14 15:16:45,478-0400 INFO yap - OnDDECommand("[open("C:\Users\sthompson\Desktop\LaTeX\test.dvi")]")
2020-09-14 15:16:45,511-0400 INFO yap - loading document: C:\Users\sthompson\Desktop\LaTeX\test.dvi
2020-09-14 15:16:52,710-0400 INFO yap - this process (16172) finishes with exit code 0
2020-09-14 15:24:21,509-0400 INFO yap - this is Yap 4.0 (MiKTeX 20.7)
2020-09-14 15:24:21,509-0400 INFO yap - this process (5448) started by 'OpenWith' with command line: /dde
2020-09-14 15:24:21,615-0400 INFO yap - OnDDECommand("[open("C:\Users\sthompson\Desktop\LaTeX\test.dvi")]")
2020-09-14 15:24:21,647-0400 INFO yap - loading document: C:\Users\sthompson\Desktop\LaTeX\test.dvi
2020-09-14 15:24:26,317-0400 INFO yap - this process (5448) finishes with exit code 0