Stephen Smith's Blog

All things Sage 300…

Diagnosing Problems Running Accpac Part 1

with 38 comments

This blog post is going to go into quite a bit of detail on what happens when you double-click on the “Sage Accpac ERP” desktop icon. Many of you have had conversations with our technical support department and many have wondered why they ask you to do the things they ask. Why do they ask you to run RVSpy/DBSpy? Does it tell them anything useful if it comes up blank? What do all those options in Accpac Spy mean? A lot of times what they are trying to do is diagnose where in the startup process things have gone wrong and what area do they need to concentrate on. A lot of times the net starts wide and then gets drawn in around the problem.

So to start with you double click on the “Sage Accpac ERP” icon. This then runs the Accpac.exe program in the runtime directory of where ever you installed Accpac. When you double click on the icon, Windows will load that EXE and it will find and load all the DLL’s it is statically linked to. Some of these DLLs are part of Windows itself, some of these are part of the Microsoft C/C++ runtime and MFC library, and many are DLLs installed in the Accpac runtime directory. All these DLLs might be statically linked to other DLLs. In total 39 DLLs are usually loaded with Accpac.exe as a result of double clicking on the icon. When we install Accpac we try to give Windows the best chance of finding all these DLLs that we can. Windows looks for DLLs in the following places:

  1. The same directory as the EXE (ie accpac\runtime).
  2. The current working directory (the “start in” field in the icon properties, usually accpac\runtime).
  3. The Windows System Directory (windows\system32).
  4. The Windows Directory (windows).
  5. The directories listed in the PATH environment variable (should include accpac\runtime).

Some things that can go wrong with this process include:

  1. Not having execute and/or read security access to a directory where one of these is installed.
  2. Having a corrupted PATH environment variable. If something didn’t handle a path with spaces properly or didn’t separate things properly with semi-colons, it can cause loading problems for all sorts of things.
  3. On terminal server a user has a local windows directory as well as the main windows directory. Sometime things can be installed properly for one user but not another because things installed into their local windows directory rather than the global one. This was a problem with the older Crystal 8.5 runtime, but newer Crystal runtimes handle this ok. (Crystal actually isn’t required at this point).
  4. Having multiple versions of System Manager installed at once in different locations. This can happen if you use programs like “UniLauncher” to run multiple versions of Accpac. This often causes multiple accpac\runtime directories to be in the PATH, or the Accpac icon points at once place and then a different accpac\runtime is used to load the DLLs. Running the wrong version of these DLLs will cause all sorts of problems. If you need to use multiple versions of Accpac System Manager, it is far safer and less hassle to use virtual machines like Microsoft’s VirtualPC to run the various configurations each in their own VM. This also allows you to run several at once and avoid them getting mixed up.
  5. Viruses can cause all sorts of strange problems.
  6. Disk drives that are starting to fail and causing some files to fail to be read.
  7. Note also that Accpac.exe and all these DLLs are 32-Bit. They will run fine under 64-Bit Windows. But if you are a developer and want to use these DLLs yourself then you need to compile for 32-bit in order to load them. 32-Bit DLLs can only be loaded by a 32-bit process, not a 64-bit process. 64-Bit IIS will spawn 32-Bit processes for this reason if configured to do so. .Net programs and Java programs can be compiled for either.

Besides outright not working, it could be that it takes quite a long time to reach the sign-on dialog after clicking the icon. These are usually related to networking issues. Most customers install the Accpac programs on a shared file server, so they don’t need to be installed on every workstation and so they can apply product Updates to one place. Some things to note:

  1. Use UNC paths (\\myserver\myvolume\accpac) rather than mapped network drives. There are many Microsoft knowledgebase articles of various bugs in mapped drives. They may work fine for you or you might run into one of these depending on your environment. Search the Microsoft knowledge base to see if you fall into one of these scenarios.
  2. Bad DNS entries. Sometime if your network isn’t configured properly network requests can takes quite a long time. Try “ping myserver” to ensure this is fast (<1ms). If it isn’t then you will take a long time to load due to the number of DLLs that must be loaded.
  3. Running too many virus checkers. We’ve seen people running 5 different virus scanners at once. This sort of thing can really slow things down. Also if you know your server is running a virus scanner then have the workstation exclude network shares/drives since this is just double work.

Rather than figure these problems out, many people find a Terminal Server configuration more convenient since everything is installed locally on the terminal server, so you don’t have the network problems. You also maintain the advantage of having Accpac only installed in one place so you don’t need to apply Product Updates all over the place. Other people, if they don’t want to use Terminal Server, will install the Accpac programs locally on each workstation. This is more work, but again avoids some network speed problems, you may still have some problems when you access the shared data directory or the database server when you finally sign-on.

Accpac.EXE is a Windows executable program that is written in C++ using the Microsoft Foundation Classes (MFC) library. Once Accpac.exe is loaded and running then our code is finally executing and we will use the MFC library to create the desktop window layout. MFC stores its configuration stuff in the registry. These are things like the sizes of the various panels the last time you exited Accpac. These are stored under:


There are 5 keys that all start with the word “FrameState”. If these registry entries become corrupted for some reason, then Accpac will not start. These registry entries can be safely deleted, you will just set the frame sizes back their defaults and they will be re-created the next time you run Accpac.

Accpac splits its files into two categories the “Programs” directory and the “Shared Data” directory. The programs are all the executable programs and DLLs that make up the Accpac program. The “Shared Data” directory are various non-database files that store useful information relevant to Accpac. The “Shared Data” directory must be shared by all users on the system, they must all look at the same directory or there could be problems. The Programs can either be common, or people can look at their own copy. You must be able to read and execute the programs directory, and you must have full control over the shared data directory. These directories are stored in the registry under:

HKEY_LOCAL_MACHINE\Software\ACCPAC International, Inc.\ACCPAC\Configuration

These are stored in the Programs and SharedData keys.

Accpac will check if you are licensed to run this version of System Manager. It will access accpacshareddata\sm56a0.lic to validate that you are properly licensed. If you have an expired 30 day (or other period) license, are missing this file, etc. Then you won’t be allowed to run Accpac. The desktop will also do a quick scan of your other license files to see if there are any inconsistencies or suspicious entries. If so then you will be re-directed to the Sage Anti-Piracy web page.

Accpac will also open accpacshareddata\site\semaphor.bin to see what others are doing in Accpac. This file can be deleted if causing problems (when everyone is out of the system) and will be re-created the next time you run Accpac. Again security access rights are the most common cause of problems here since Accpac.exe needs full control of this file. Accpac controls access to different parts of the program by placing byte locks in this file. Usually these are cleaned up when Accpac exits, or are cleaned up by Windows if Accpac terminates abnormally, or if a workstation disconnects unexpectedly from the server. However sometime Windows gets confused and these locks need to be cleared by re-booting the file server where this file resides. If you have to do this frequently then you have some other problem going on and need to investigate with FileMon (discussed below).

Accpac will access accpacshareddata\site\orgs.ism to load the list of companies you can logon to into the sign-on dialog. Orgs.ism is a simple isam file. It needs to be stored outside of the database since it contains the information required to sign-on to the database. If this file is corrupted then you may not be able to get to the sign-on dialog. Run scanisam to see if there are problems. It might also be able to fix them. Otherwise get a fresh copy from another install and re-populate it (admittedly a pain).

The best way to diagnose problems that happen before the sign-on screen is reached is to use the “FileMon” program from SystemInternals (now owned by Microsoft). Their web site is: Its worth having a look through their utilities, they are really useful. Regmon is another very useful program to monitor for registry errors. Often these programs will show quite useful information, but they will fill up fast. Often worth stopping any windows services not associated with Accpac when you run these to reduce the noise.

This blog post is getting quite long, and we’ve only just got to the sign-on dialog. If I’ve forgotten something, I’ll update this post. Next week we’ll look at what happens when you click OK on the sign-on dialog.

Written by smist08

April 11, 2010 at 8:07 pm

Posted in sage 300

Tagged with , ,

38 Responses

Subscribe to comments with RSS.

  1. […] are having trouble at this step then check out these blog postings on diagnosing problems in Accpac part 1, part 2, part 3 and part […]

    • Hello Steve,
      I am encoutering problems with printing standard reports in all Accpac modules. i get the error: “Crystal report error. Loginn failed. Details. [Database Vendor Code 4026]. I’m running Accpac 55 on Windows 7 and the database is MS SQL Server 2008 R2. I have deleted ODBC DSN several times and allowed Accpac to create it but still doesn’t seem to work. Please help ‘coz I am at my wits end.

      Thank you.



      November 14, 2012 at 6:18 am

    • Hi Steve,

      i have windows 7 on my PC. Accpac has become very slow, sometimes can’t even open. Previously i was using XP everything was ok. how can i make Accpac run faster on Windows 7.



      Allan Malinda Tembo

      June 25, 2013 at 10:06 am

      • Generally Windows 7 works faster than Windows XP. The memory management is better and the networking is better. I suspect its something to do with the database or networking. You might want to run DBSpy to see if connecting to the database is slow.


        June 25, 2013 at 2:59 pm

  2. […] further information on troubleshooting, check out these blog postings on diagnosing problems: part 1, part 2, part 3 and part […]

  3. Hi stephen,

    A client is having his system crash randomly when they do a form search in Accpac. When I look at the event viewer, I see the following

    Faulting application name: A4WCONTAINERXP.EXE, version:, time stamp: 0x4cfb1416
    Faulting module name: NetworkExplorer.dll, version: 6.1.7601.17514, time stamp: 0x4ce7b90c
    Exception code: 0xc0000005
    Fault offset: 0x0000198c
    Faulting process id: 0x38bc
    Faulting application start time: 0x01cd7d58668df168
    Faulting application path: C:\Accpac\runtime\A4WCONTAINERXP.EXE
    Faulting module path: C:\Windows\system32\NetworkExplorer.dll
    Report Id: a5d77308-e94b-11e1-81a6-d8d385b684c9

    Any ideas of the cause and solution?


    August 18, 2012 at 3:50 pm

  4. Hi Stephen,
    Am having a problem with 6.0; when I install it and load data I am unable to activate AR in data activation, it simply shows a status saying “activating”, but does nothing even after living it for hours,..I am using SQL 2008 R2, What could it be?

    Tiyanjana Malowa

    September 22, 2012 at 7:30 am

    • Which version are you upgrading from and what is the size of the database? You could try running DBSpy to see what (if anything) that it is actually doing.


      September 23, 2012 at 2:39 am

  5. Hi Stephen,
    I cant open any program in accpac 6.0 on a workstation it gives an error saying view id is not valid


    September 23, 2012 at 11:34 am

    • Often this is caused by having multiple versions installed at once. Often with multiple accpac\runtime’s in the path. Then you get a mix of DLLs loaded from different versions leading to this problem.


      September 23, 2012 at 3:04 pm

  6. Hi Stephen,
    I am having a problem with 6.0; when i print any report it brings an error saying ‘unable to load report’, what could it be?


    October 22, 2012 at 8:46 am

  7. am trying to run 5.5 and 6 on the same windows 7 machine. I know how to install but registry default to the last installation of the two. Please assist me on this. 2 accpac installation on one pc

    Boyce Fologang

    November 5, 2013 at 2:37 pm

    • We don’t support doing this. The usual way is to create a virtual machine for one and to run it in the virtual machine. Oracle’s VirtualBox is free and works pretty well. VMWare is free for non-commercial use. This way you have no chance of the versions interfering with each other.


      November 6, 2013 at 1:14 am

      • Thanks for your reply. Will do as you advise.

        Boyce Fologang

        November 7, 2013 at 12:03 pm

  8. We are still running Accpac version 4.1a. Now we are having a problem when we post payments in accounts payable: Failed to load view “BK0009” How can we fix the problem? Hope you can help

    Clarissa van Schalkwyk

    December 10, 2013 at 12:32 pm

    • Can you run the Bank UIs like Banks for Reconcile Statements in Common Services Bank? If you run RVSpy what is the error code that is returned? Have you made any changes to your system recently?


      December 10, 2013 at 4:38 pm

      • We use the Cashbook version 4.1a. Never used Reconciled Statements in Common Services(since 1992). Really clueless about the programming side. How do I run RVSpy? No changes made recently. When I go into Admin Services – restart maintenance – program = APCHKS, and message = Print Checks

        Clarissa van Schalkwyk

        December 11, 2013 at 5:47 am

      • The View that won’t load is to do with check printing. I thought you could try running a Bank UI to see if other functions in Bank work ok or not (Bank is under Common Services). RVSpy is a diagnostic utility that is under the Tools menu in the Accpac program group on your start menu. It might be easier for you to talk to Sage Customer Services they could remotely login to your computer and troubleshoot the problem for you.


        December 11, 2013 at 3:58 pm

  9. Accpac 4.1 problem: File not found MNU_PRBTCH Causes problem in Accounts Payable – restart record show PRINT CHECKS. Message in AP – failed to load view BK0009. Asked you before, but did not add message from cashbook – file not found MNU_PRBTCH. Any ideas?

    Clarissa van Schalkwyk

    January 13, 2014 at 1:47 pm

    • That’s a really really old version. I don’t know where this message is coming from. BK0009 is the database table A/P writes the checks to print into, which Bank then processes. I suspect you’ll have to take this up with Cashbook support. But I’m not sure you will be able to get much support on a version this old.


      January 13, 2014 at 4:25 pm

  10. Hi
    We are running Sage 300 Premium ERP 2012 and have a VERY strange issue. We are in a 2008R2 terminal server environment with 5 terminal servers. Accpac database on a centralized 2008R2 server running SQL2008R2 with SP2. Once a week (on Wednesday between 1PM and 2PM) one user will get kicked out with an odbc connection error. There are other users on the same terminal server who don’t experience any problems. It happens to different users on different terminal servers doing different functions in Accpac. There is notthing in the event logs on any servers when it happens.There are no SQL maintenance plans or Windows tasks running at that time on any of the servers. There are no errors in the SQL logs or anything during that time. There is no way to reproduce the problem that we have found. Any suggestions on what to do next? Our Accpac support contractors have not offered any ideas. We are all stumped. Any help is appreciated.

    Steven Lingenfelter

    August 29, 2014 at 10:49 pm

    • Strange, are there any other symptons, like the system slowing down around then or perhaps some more minor annoyances starting to appear? Could this be your peak usage period (seems a bit strange to be right after lunch)? For a given user that this happens to, does it persist or does re-starting the UI then continue on as normal? If it persists you could run additional logging like DBSpy or ODBCTrace to see if you can get anymore clues. if it just corrects, then its a bit harder to track down.

      Would there be any regular scheduled tasks at this time? Perhaps a set of reports are always run every week at this time? Perhaps some other activity on the network? If the time is really this regular, it seems there must be something special happening then?

      You might try running perfmon to see if anything special happens on these servers then, extra memory usage, CPU usage, etc. around this time.


      August 30, 2014 at 12:33 am

      • Thanks for your reply. There are no other issues or slowness at that or any other time that anyone has noticed. No network issues (or I would expect all users or at least all users on a given terminal server to be affected). I have been through the scheduled tasks and maintenance plans and there is nothing running at that time. I have not run dbspy, which I will tomorrow… To continue, the user has to end task on the accpac process and relaunch Accpac. After doing that there are no longer there issues until the next Wednesday. This only occurs to one user one time per week…

        Steven Lingenfelter

        September 2, 2014 at 1:28 pm

  11. Am having problems with Buyer’s Control Panel – When I download the order entries (BOMS) into the Inbox, it will no longer run automatically – I must go thru all the steps manually – and even then it will sometimes “eat” the information – or the information gets “stuck” in the batching process – only to pop out when I run the next BOM. We cannot determine where this information goes – it’s not in the inbox and it did not return to the batch bucket?


    February 10, 2015 at 5:20 pm

    • I’m not really sure what the “Buyer’s Control Panel” is? is this a development partner’s product for Sage 300 ERP? Or perhaps you are using a different Sage product?


      February 10, 2015 at 6:30 pm

      • it’s a macro external application which takes BOMS generated by a DDM system and compiled them in one location and then I can choose each individual file to download for PO purposes


        February 10, 2015 at 6:33 pm

  12. we are running Sage Accpac erp – but I don’t have a version


    February 10, 2015 at 6:36 pm

    • It might be a matter of investigating what changed in your system. For instance if this is integrated to Outlook, then was a new version of Office deployed? Otherwise I suspect you need help from the original developer of the macro to debug it.


      February 11, 2015 at 9:05 pm

      • Ok – thanks!

        Joann Middlestead
        Purchasing Buyer
        ATS Ohio
        425 Enterprise Drive
        Lewis Center, Ohio 43035
        Office: (614) 781-8103 x68103
        Fax: 614-781-8007

        Middlestead, Joann

        February 11, 2015 at 9:55 pm

  13. Hi Stephen. After upgrading a client from v6.0 to v2014 Accpac will not load on the workstations. The splash screen starts to load & then fails. The error log gives:

    Faulting application name: accpac.exe, version:, time stamp: 0x566e53bc
    Faulting module name: ntdll.dll, version: 6.1.7601.18247, time stamp: 0x521ea8e7
    Exception code: 0xc015000f

    Accpac v2014 runs fine on the server. I run Wsetup on the workstations & I get this error. I have run regacc from the workstations but that doesn’t work. Any help would be much appreciated.

    Mike Maltby

    February 19, 2016 at 9:51 pm

    • Not entirely sure. Which database are you using. Sometimes installing the wrong database client (or not installing it at all) can cause GPFs.


      February 22, 2016 at 7:30 pm

  14. In the end I resolved it this way: From the workstation I ran accpac.exe located on another server originally set up for testing purposes. Once Accpac had opened once on the workstation, it quite happily opened using accpac.exe on the production server. Still not sure exactly why that worked, but very pleased it did!

    Mike Maltby

    February 24, 2016 at 8:50 am

    • Has any one resolved the error otherwise as I am getting this all over on upgrades and I do the same as Mike Maltby but it is a hassle in doing so.


      April 21, 2016 at 7:59 am

      • I wonder if its caused by multiple paths to different Sage 300 runtimes? Or perhaps mixed up registry settings. If you aren’t using any web components you can map the server as a mapped drive and then switch between test and production just by changing the drive mapping. This way no paths need to be updated anywhere.


        April 22, 2016 at 3:20 am

  15. Hi Stephen,

    We are currently running a multi vlan environment and some accpac clients are having several errors when accessing the server.


    Client ( -> Uses ACCPAC and connects to -> ACCPAC Server (

    I am getting errors from clients who will sit at the 10.x.x.x address while the ones on 172.x.x.x addressing is working fine.

    Would ACCPAC work if I installed another NIC on the server that will carry 10.x.x.x addressing?

    I’ve been struggling with this for quite some time and haven’t gotten around to testing it as I am the only IT personnel at the moment.

    I have checked the network and firewalls and no ports are blocked.

    I hope you can help me on this.

    Joseph Liu

    May 20, 2016 at 7:06 am

    • Usually these are caused by problems with the DNS entries. Make sure you can ping all the required computers from the ones that don’t work. Also make sure SQL Server can find the server (can check in SQL Management Studio).


      May 20, 2016 at 2:47 pm

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: