无法在 Dyalog APL 中使用用户命令
Cannot use user commands in Dyalog APL
我刚刚在我的 windows(Windows 10) 机器上安装了 Dyalog-APL 18.0,当我尝试在 IDE 上使用 ]box on -style=max
时,出现以下错误:
FILE ACCESS ERROR: C:/Users/<User>/Documents/: Unable to read directory status
然后我注意到打开 Dyalog 时出现了一个我公然忽略的错误:
SALT initialization failed: C:/Users/<User>/Documents/: Unable to read directory status
此外,我意识到所有用户命令都会给出第一个错误。
一些细节:我以管理员权限安装它并安装了 Avast Antivirus。
我尝试过的事情:
- 在防病毒设置中将文档文件夹添加为例外,并将其添加到允许的应用程序列表中(来自 Ransomware Shield)。
改完之后又重启了
- 正在重新安装
- 以管理员身份启动 Dyalog
这个答案不再直接相关,因为我们知道平台是 Windows 10,但供将来参考:当你到达 Windows 11 时,如果“受控”,你可能会遇到类似的问题文件夹访问”已启用:这可以防止应用程序访问用户文件夹。您需要将 Dyalog APL 添加到“允许的应用程序”列表中,如果您在计算机上具有管理员权限,这将非常简单。
如果您启动 APL 并收到有关由于文件夹不存在而无法重建命令缓存的警告,请转到 Windows 安全设置的“勒索软件保护”部分,select “通过受控文件夹访问允许应用程序”,select“添加应用程序”,您应该能够从“最近被阻止的应用程序”列表中 select APL。
如果您最近没有被阻止,您将需要 select dyalog.exe 使用文件资源管理器。
在 some experimentation 之后,我们确定问题出在 Documents 文件夹中。默认情况下,APL 系统将在那里查找自定义用户命令:
⎕SE.SALT.Set'cmddir'
C:\Users\<User>\Documents\MyUCMDs;C:\g\link\SALT\spice;C:\d\SVN\salt\trunk\spice
所以我们要求它p永久跳过那个位置:
⎕SE.SALT.Set'cmddir -p C:\Program Files\Dyalog\Dyalog APL-64 18.0 Unicode\SALT\spice'
我刚刚在我的 windows(Windows 10) 机器上安装了 Dyalog-APL 18.0,当我尝试在 IDE 上使用 ]box on -style=max
时,出现以下错误:
FILE ACCESS ERROR: C:/Users/<User>/Documents/: Unable to read directory status
然后我注意到打开 Dyalog 时出现了一个我公然忽略的错误:
SALT initialization failed: C:/Users/<User>/Documents/: Unable to read directory status
此外,我意识到所有用户命令都会给出第一个错误。
一些细节:我以管理员权限安装它并安装了 Avast Antivirus。
我尝试过的事情:
- 在防病毒设置中将文档文件夹添加为例外,并将其添加到允许的应用程序列表中(来自 Ransomware Shield)。 改完之后又重启了
- 正在重新安装
- 以管理员身份启动 Dyalog
这个答案不再直接相关,因为我们知道平台是 Windows 10,但供将来参考:当你到达 Windows 11 时,如果“受控”,你可能会遇到类似的问题文件夹访问”已启用:这可以防止应用程序访问用户文件夹。您需要将 Dyalog APL 添加到“允许的应用程序”列表中,如果您在计算机上具有管理员权限,这将非常简单。
如果您启动 APL 并收到有关由于文件夹不存在而无法重建命令缓存的警告,请转到 Windows 安全设置的“勒索软件保护”部分,select “通过受控文件夹访问允许应用程序”,select“添加应用程序”,您应该能够从“最近被阻止的应用程序”列表中 select APL。
如果您最近没有被阻止,您将需要 select dyalog.exe 使用文件资源管理器。
在 some experimentation 之后,我们确定问题出在 Documents 文件夹中。默认情况下,APL 系统将在那里查找自定义用户命令:
⎕SE.SALT.Set'cmddir'
C:\Users\<User>\Documents\MyUCMDs;C:\g\link\SALT\spice;C:\d\SVN\salt\trunk\spice
所以我们要求它p永久跳过那个位置:
⎕SE.SALT.Set'cmddir -p C:\Program Files\Dyalog\Dyalog APL-64 18.0 Unicode\SALT\spice'