Btrieve Error 012 on SYSPASS Password File When Starting Up Elliott

Btrieve Error 012 on SYSPASS Password File When Starting Up Elliott

Release Date: 07/28/2020
Version: 8.2 & up

Q - I have a single user workstation that displays the error below as soon as they double-click the EL800p icon:
    EL800P: Btrieve Error 012 on SYSPASS Password File

If I click on th "Detail" button, then I see the followings:

If I choose to run EL800 instead, then the Elliott Control Center does start up without error. But when I click on any task, I receive a message indicating a launching task error and see CCErrors.log for details.  When I go to my <ElliottRoot>\Log\01 folder and find the corresponding CCErrors.log, I see the following entry:

7/28/2020 6:34 PM MIKE at MIKEM
System.ComponentModel.Win32Exception (0x80004005): The requested operation requires elevation
  at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
  at System.Diagnostics.Process.Start()
  at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
  at El7Net.EL800CC.LaunchTask(Int32 ptr) in G:\NSI.SRC\nw82\EL800CC\EL800CC\EL800CC.vb:line 5201

What can cause this to happen?

A - In the "Detail" button, the Database Activity Snapshot shows that the system tried to open SYSPASS.BTR.  But that's not right because it should try to open SYSPASS.BTR with a path like <ElliottRoot>\SYSPASS.BTR, where <ElliottRoot> is your Elliott root directory like "M:\Elliott7." So what is happening is that Elliott is trying to open the SYSPASS.BTR file in the <ElliottRoot>\Bin folder where EL850 or EL850P is run from. Since there's no such file in that folder, so you get Error 012, which means the file is not found.

Why did the system try to open the SYSPASS.BTR file without the proper path?  The message in the CCErrors.log "The requested operation requires elevation" gives us a good clue. It is related to UAC (User Access Control) Elevation. This is a feature introduced in Windows 7 where even if the user is an Administrator equivalent, the user does not run the program with the "Administrator" rights.  This is to prevent a virus from attacking your machine.  Instead, when the Administrator rights are needed, the system will prompt you with the following message:

Do you want to allow this app to make changes to your device?


When you answer "Yes," the application is run as a user "Administrator." The reason you get error 012 on the SYSPASS.BTR file is because the user "Administrator" has not mapped a drive to the <ElliottRoot> network drive. As a result, the program attempts to open the file without a drive letter and path.

If Elliott has been working before and this just started to happen, we can't really explain why it just started to happen now. It seems there are Windows System level changes that are  causing the new UAC Elevation behavior.  We have a couple suggestions for you to try:

(1) Disable UAC Elevation
In Windows, find the "User Account Control Settings," and change the settings to "Never Notify." See sample screen below:


(2) Map Elliott Network Drive for Administrator
You can change the logon script or profile settings to cause the system to map the network drive for <ElliottRoot>.  For example, if <ElliottRoot> is equivalent to "M:\Elliott7," drive M: is mapped to \\Server\Acct. Then make sure the drive M: is mapped for an Administrator. To verify if this is done successfully, you can right click the "CMD" (Command prompt) and choose "Run as administrator." Then, in the Administrator command prompt, see if you can go to the corresponding network drive.

(3) Upgrade to Elliott 8.5 or After
Elliott 8.5 or after by default is run from a local folder so the network drive may not be an issue.  But this suggestion is more a speculation than proven resolution. You need to test it out.

(4) Add PSQL Server to Trusted Sites
When you access the PSQL server through a mapped network drive, it may trigger a security check. We are not sure if this is the reason for the trigger of the UAC Elevation. But if it is, then you can add the PSQL server to the "Trusted Sites" to avoid this. See the following KB article:

EMK 


    • Related Articles

    • Btrieve Error 161 on Password File When Starting Up Elliott

      Q - We are receiving an Error 161: The maximum number of user count licenses has been reached. This happens to all users when starting up Elliott. We have rebooted all office computers and the PSQL server. There is no one is in Elliott. Yet we are ...
    • Elliott Startup Btrieve Error 196 or 3012 on S/M Users File

      Release Date: 11/16/2022 Version: 8.5 & Up Q - I try to access Elliott software and I get this error on my startup: EL860CC: Btrieve Error 196 on S/M Users File (32-Bit) If I click on the "Details," I see the status code 3012 when I try to access ...
    • Btrieve Error Codes 001 - 199

      MicroKernel (Btrieve) Database Engine Status Codes This section describes status codes that the MicroKernel returns. All status codes are provided in 3-digit formats since the search on this website cannot search 1 or 2-digit words correctly. That is ...
    • Btrieve Error Codes 3000 - 3099

      MicroKernel Router Status Codes This section lists the status codes you can receive from the MicroKernel router, which receives requests from the Btrieve requesters and routes them to the correct version of the MicroKernel. 3000: The MicroKernel ...
    • Btrieve Error 46 on S/M Activity Log File

      Last Update: 06/20/2024 Q - I receive the following error message when I start up Elliott and launch a session: Btrieve Error 046 on S/M Activity Log File But this only happens to company 1. When I access another company, I do not receive this ...