We performed a successful upgrade last weekend for a client from GP 10 to GP 2013 SP1.
Everything is working well except for an intermittent crash. This is happening to many different users in various windows and different process. We can't find a root cause. The error is very generic and doesn't offer much help in tracking down the issue. They usually have about 35 simultaneous users and this crash happens about 8 times an hour.
We are using Microsoft Remote App (Remote Desktop Services - similar to Citrix) to publish the Dynamics GP application.
Here is the error we see logged in the Event Viewer on the terminal server:
Faulting application name: Dynamics.exe, version: 22.214.171.124, time stamp: 0x515dcd6d
Faulting module name: ntdll.dll, version: 6.1.7601.17725, time stamp: 0x4ec49b8f
Exception code: 0xc0000005
Fault offset: 0x0002e3be
Faulting process id: 0x57e4
Faulting application start time: 0x01ce938da42ffc50
Faulting application path: C:\Program Files (x86)\Microsoft Dynamics\GP2013\Dynamics.exe
Faulting module path: C:\Windows\SysWOW64\ntdll.dll
Report Id: f25e82cc-ff81-11e2-ae04-02215e942593
I would appreciate any advice or recommendations we could use in troubleshooting and solving this issue.
I assume you are using a terminal server machine for these users to RDC into?? How much memory does it have? If you divide this by 35, do you still have 3-4g per user?
I am not a systems person but was under the impression that TS machines supported 20-25 users at a time, requiring two for your installation.
Richard L. Whaley Author, Publisher, Consultant
Enhancing your Dynamics Knowledge!
Thanks for the suggestion Richard. I am confident that the hardware is more than sufficient to handle the load. With all users logged in I still have 30+ Gigs of RAM free and the CPU is barely registering 1% - 4%.
One other thing I noticed is that in the Event Viewer the GP crash is always proceeded by this .NET Runtime error:
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at <Module>.TNT_new_event_loop(Int16 (HWND__*, EVENT*, Int16*), Int16, Int16)
You should be okay with the specs on that machine. There are several causes/resolutions really depending on what the user is doing when they are receiving the errors. Here are some possible resolutions:
This problem can occurs when your Reports.dic file has become damaged. To resolve this problem, see Resolution 1 in the "Resolution" section.
This problem can occur when your vbe6.dll is not registered. To resolve this problem, see Resolution 2 in the "Resolution" section.
This problem can occur after Windows updates have been applied and the machine has not been rebooted. To resolve this problem, see Resolution 3 in the "Resolution" section.
This problem can occur if the Data Execution Prevention (DEP) is turned on. To resolve this problem, see Resolution 4 in the "Resolution" section.
This problem can occur if Metrics are enabled on the homepage and Microsoft Office Web Components are not installed. To resolve this problem, see Resolution 5 in the "Resolution" section.
This issue can occur if a new version of Internet Explorer (IE) has been installed and you have not rebooted the machine. To resolve this problem, see Resolution 6 in the "Resolution" section.
This issue can occur when DirectX attempts to access an image in the background folder within the Dynamics GP code folder, as of now we are uncertain to why this happens however it is intermittent and is a known bug within GP. This error occurs because the dxtrans.dll file (which is a DirectX DLL file) and the Icmsg.gif file conflict. To resolve this problem, see Resolution 7 in the "Resolution" section.
Import the reports from the Reports.dic file
Make sure that all users exit Microsoft Dynamics GP.
Rename the Reports.dic file to Reports.bac. The Reports.dic file may be located on the server or on the workstation.
Start Microsoft Dynamics GP.
On the Tools menu, click Customize, and then click Report Writer. When Report Writer starts, a new Reports.dic file is created.
Click Reports. The Modified Reports list is empty. If the Modified Reports list is not empty, you renamed the wrong Reports.dic file in the "Step 2: Rename the existing Reports.dic file" section. Find the appropriate Reports.dic file, and then start over in that section.
In Report Writer, click Import.
Click the ellipsis button (...) next to the Source Dictionary box. Locate the Reports.bac dictionary file that you named in step 2, and then click Open.
In the Source Dictionary Reports list, select the modified reports that you want to import, and then click Insert. The reports are listed in the Reports to Import list.
Click Import. When the Reports to Import list is empty, the modified reports have been imported into the new Reports.dic file.
Note If you created your own table relationships, the table relationships will be removed when you rename the Reports.dic file. After you import the reports, the table relationships that you created will be restored. If you created the relationship but did not link the relationship to a report, you must create the relationship again.
1. Click Start , click Run , type cmd in the Open box, and then click OK .
At the command prompt, type regsvr32 path & filename of dll, and then press ENTER.
You should receive a message stating the DLL file succeeded.
Reboot machine by using the following steps:
Click on the Start menu.
Click on the arrow next to the ‘Shut Down’ button and click ‘Restart’.
Follow the steps below to add the DYNAMICS.exe application to the DEP section of Windows
Windows Vista, Windows 7, Windows Server 2003 and Windows Server 2008:
Click the Start menu.
Right click on My Computer.
Click on Properties.
Click Advanced System Settings.
On the Advanced tab click on the Settings button in the Performance section.
Click on the Data Execution Prevention tab.
Select the second Radio Button labeled: Turn on DEP for all programs and services except those I select.
Click on the Add button at the bottom of the window.
Navigate to the install folder for GP10.0.
Select the Dynamics.exe file and click open.
Verify that it has a Checkmark in the box for Microsoft Dynamics GP and click Apply at the bottom of the window.
Click Advanced System Settings tab.
Click the Settings button in the Performance section.
Disable Metrics or apply Office Web Components.
Use the following steps to disable Metrics using Microsoft SQL Management Studio for Microsoft SQL Server 2005 and Microsoft SQL Server 2008:
1. Confirm that you have a backup of the DYNAMICS database.
2. Open SQL Query Analyzer or SQL Server Management Studio.
3. Run the following script:
Note Change the UserName in the script below to the desired GP username.
UPDATE A SET COLNUMBR = 0, SEQNUMBR = 0, Visible = 0 FROM DYNAMICS.dbo.SY08100 A WHERE (SectionID = 3) AND
(DICTID = 0) AND ((COLNUMBR <> 0) OR (SEQNUMBR <> 0) OR (Visible <> 0))and USERID = 'UserName'
Apply Office Web Components:
To obtain the Office Web Components for Office 2003, visit the following Microsoft Web site:
To obtain the Office Web Components for Office XP, visit the following Microsoft Web site:
Note If you are running the 2007 Office programs, install the Office Web Components for Office 2003. Microsoft Dynamics GP 9.0 also supports Microsoft Office 2000. If you are running Office 2000, install the Office Web Components for Office XP.
Navigate to the Images folder. By default, this folder is located in the following location:
C:\Program Files\Microsoft Dynamics\ GP\ Background\Images.
Locate the Icmsg.gif file. Rename the file to IcmsgOLD.gif.
After you have renamed the file, start Microsoft Dynamics GP.
Thank you Jonathan. We tried all of this suggestions but the problem persists. I'm going to open a Microsoft support case.
Hi Bryan, Have you had any luck in regards to resolving this issue? Rgds Sumindre
I'm using GP 2010 and resolution 1 worked for me. However, I had to restore a backed up copy of reports.dic to make it work. Trying to import the corrupted renamed reports.bac just caused it to crash.
What causes the reports.dic file to become corrupted? How can I prevent that?
Do not modify a reports dictionary while others are using GP. It is always best to have a local copy and then you can copy it up to your server when users are out of GP. This is assuming you have a shared copy of the REPORTS.DIC file.
Richard E. Wheeler 2013 MVP
MS Dynamics GP Support
www.rbsolutions.com Revered Business Solutions Ballston Lake, NY 518-877-0763 x10
Other Microsoft Sites
I'm a Customer
I'm a Partner
Follow Microsoft Dynamics