4

I just installed Dyalog-APL 18.0 on my windows(Windows 10) machine and when I tried using ]box on -style=max on the IDE I got the following error:

FILE ACCESS ERROR: C:/Users/<User>/Documents/: Unable to read directory status

Then I noticed that there was a previous error when opening Dyalog which I had blatantly ignored:

SALT initialization failed: C:/Users/<User>/Documents/: Unable to read directory status

Furthermore, I realized that all user commands give the first error.

Some details: I installed it as an administrator privilege with Avast Antivirus installed.

Things I tried:

  1. Adding the documents folder as an exception in the antivirus setting and also adding it in the allowed apps list(from Ransomware Shield). It was followed by a restart after the change.
  2. Reinstalling
  3. Starting Dyalog as administrator
Adám
  • 6,573
  • 20
  • 37
MrV
  • 169
  • 1
  • 7
  • 1
    Which version of Windows are you using? Did you install Dyalog as administrator? – Adám Oct 28 '21 at 00:49
  • Windows 10 Build:1709. Yes @Adám, I installed it as an administrator. – MrV Oct 29 '21 at 14:42
  • @Adám, I also noticed that you posted a reply to a Dyalog Forums question to a similar problem in which you suggested to add a UCMDCACHEFILE to change the default user commands file location. But that doesn't to show any noticeable change in my case. Any thoughts? – MrV Oct 29 '21 at 15:07
  • Can you try `⎕NEXISTS'C:/Users//Documents/'`? Also, maybe come over to [the APL chat room](https://apl.chat) so we can walk through procedures? – Adám Oct 29 '21 at 15:16

2 Answers2

4

This answer is no longer directly relevant, as we know the platform is Windows 10, but for future reference: When you get to Windows 11 you can have a similar problem if "Controlled Folder Access" is enabled: this can prevent applications from accessing user folders. You will need to add Dyalog APL to the list of "allowed apps", which is quite straightforward if you have admin rights on your machine.

If you start APL and get a warning about being unable to rebuild the command cache because a folder does not exist, go to the "Ransomware protection" section of Windows Security settings, select "Allow an app through controlled folder access", select "Add an app", and you should be able to select APL from a list of "recently blocked apps".

If you have not recently been blocked you will need to select dyalog.exe using a file explorer.

Morten Kromberg
  • 643
  • 5
  • 5
3

After some experimentation, we determined that the issue was something restricted being located in the Documents folder. By default, the APL system will look there for custom user commands:

      ⎕SE.SALT.Set'cmddir'
C:\Users\<User>\Documents\\MyUCMDs;C:\g\link\SALT\spice;C:\d\SVN\salt\trunk\spice

So we asked it to permanently skip that location:

      ⎕SE.SALT.Set'cmddir -p C:\Program Files\Dyalog\Dyalog APL-64 18.0 Unicode\SALT\spice'

And that solved the problem.

Adám
  • 6,573
  • 20
  • 37