I received an error report regarding a WPF app that wouldn't start up in a Windows Server 2008 Service pack 2 server (the application is an administration tool we're distributing to our customers). Since this application has a lot of external references, I tried to simplify the problem by creating a simple WPF application using Visual Studio 2013: a plain white window with "hello world" showing and nothing more. I tried to make it run in the production server, with no luck: it always crashes immediately.
Here's what I have:
the application was created with the standard VS 2013 template for WPF, so it had 3.5 as the target framework; i changed it to 4.6
the server has the 3.5 SP1 and 4.6 versions of the .net framework installed
the app.config is well-formed, with the configSections section on top, no additional references besides log4net, supportedRuntime tag set according to the target framework version
I already checked that there are no project references from version 3.5 left in the project
I already tried logging in the DispatcherUnhandledException and in the AppDomain.UnhandledException handlers
the application runs in my development environment
the application runs in production environment only if I change the target framework to 3.5. In this case, the WPF windows shows up and the log file is correctly produced
I already tried producing a dump and trying to debug it in Visual Studio: I just get a "Source not available" message and a stack trace ending with ntdll.dll!NtWaitForSingleObject()
Here are the error details:
Description:
Stopped working
Problem signature:
Problem Event Name: APPCRASH
Application Name: MyApp.exe
Application Version: 1.0.0.0
Application Timestamp: 5bfc07f1
Fault Module Name: KERNEL32.dll
Fault Module Version: 6.0.6002.24367
Fault Module Timestamp: 5ae3dcd9
Exception Code: e0434352
Exception Offset: 000000000001667d
OS Version: 6.0.6002.2.2.0.272.7
Locale ID: 1033
The Windows event log shows little information:
Faulting application MyApp.exe, version 1.0.0.0, time stamp 0x5bfc07f1, faulting module KERNEL32.dll, version 6.0.6002.24367, time stamp 0x5ae3dcd9, exception code 0xe0434352, fault offset 0x000000000001667d, process id 0x%9, application start time 0x%10.
Application: MyApp.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: exception code e0434352, exception address 0000000077A6667D
Stack: [this is empty]
Any suggestions?
Just in case someone else stumbles on the same problem, looks like the KB4457921 update from Microsoft somehow solves the issue. If an update is not possible, consider porting the code back to .net framework v. 3.5.
Related
I recently created a windows server on Windows Server 2008 operating system. Once I had done that I tried to install Visual Studio 2017, I have tried all versions including community professional and enterprise. All of them show the same error as soon as I run the setup for each one as the image I have posted below.
screenshot can be viewed here
Problem details:
Description:
Stopped working
Problem signature:
Problem Event Name: APPCRASH
Application Name: vs_setup_bootstrapper.exe
Application Version: 15.0.293.51136
Application Timestamp: 588935a6
Fault Module Name: KERNELBASE.dll
Fault Module Version: 6.1.7601.17514
Fault Module Timestamp: 4ce7c78c
Exception Code: e0434f4d
Exception Offset: 000000000000a49d
OS Version: 6.1.7601.2.1.0.1296.17
Locale ID: 1033
Read our privacy statement online:
http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409
If the online privacy statement is not available, please read our privacy statement offline:
C:\Windows\system32\en-US\erofflps.txt
Windows Server 2008 is not supported by VS2017
I have a problem running a C# application(WPF, .Net 4.0, Visual Studio 2010) targeted to x64 and uses 64bit dll (3rd party).
The problem appear when I run the 64bit version with 64bit dll(on 64bit Win7/WindowsServer2003). The application start OK. But when I hit start button on the app, where the app create thread and start interacting with the dll, the thread will crash/stop at the first call to dll function.
Below is the error generated, when I close the app.
Problem signature:
Problem Event Name: APPCRASH
Application Name: DelayServer.exe
Application Version: 1.0.0.0
Application Timestamp: 52092104
Fault Module Name: KERNELBASE.dll
Fault Module Version: 6.1.7601.17965
Fault Module Timestamp: 506dcae6
Exception Code: e0434352
Exception Offset: 000000000000bccd
OS Version: 6.1.7601.2.1.0.272.7
Locale ID: 2057
Additional Information 1: 7315
Additional Information 2:
73159f4fb34892aabcc4ba245f14f64e
Additional Information 3: d5ec
Additional Information 4:
d5ec134b8e354c23783e48c0e2e572da
I understand that this is possible if there is a mismatch between the EXE and DLL i.e. EXE being a 32bit and DLL being 64bit or vice versa.
Attached is the screenshot of my settings. I didn't find a way to verify/edit my x64 platform settings.
x64 Project Build Settings screenshot
My Development computer is Win Vista 32bit and I have installed 64bit compilers.
I have 32bit targeted application using 32bit dll working OK on 32bit comupters.
The crash happens when I run 64bit targeted application with 64bit dll on 64bit computer
I tried dependencywalker, but I can't expland further to find any dependencies.
Can someone please help me with this.
Many Thanks
Sam
I have finally resolved the problem.
When I used Microsoft Debug Diagnostic Tool (from http://www.microsoft.com/en-gb/download/details.aspx?id=26798) the crash dump shows that there is a problem loading my external dll or its dependencies. I then loaded the my external dll into Dependency Walker (http://dependencywalker.com/) it shows that it can't find a dependency "msvcp100.dll" which is linked to Microsoft VC++.
So I installed Microsoft re-distributable package (x64) and my app doesn't crash any more.
Thanks every one for your help...
I'm trying to deploy a small Windows Form app that uses a SQL Server CE 4.0 database. I don't want every system running this application to have to install SQL Server CE 4.0, so I'm trying to get any required DLLs included with the application.
When I check the references list, the only reference for SQL Server CE 4.0 is System.Data.SqlServerCe. Including the DLL for that, System.Data.SqlServerCe.dll, still leads to the following error when attempting to connect to the database:
Unable to load the native components of SQL Server Compact corresponding to the ADO.NET provider of version 8876. Install the
correct version of SQL Server Compact. Refer to KB article 974247 for
more details.
I've seen a few articles talking about this for different versions of SQL Server CE, but they listed DLLs for other versions, as far as I could tell. The systems the app will be running on should all have at least Windows 7 with .NET 4.0 installed, if that makes a difference.
I tried the steps located here to add the files as shown in the link: http://erikej.blogspot.com/2011/02/using-sql-server-compact-40-with.html
With those files included in the build, the program compiles without any errors, but when run on a secondary system, the GUI never appears (part of the public Form1() includes a method that grabs data from the SQL CE database) and the program just closes after a couple of seconds. The event viewer shows this error:
Faulting application name: Dispatch Review Assistant.exe, version: 1.0.0.0, time stamp: 0x50915d3c
Faulting module name: KERNELBASE.dll, version: 6.1.7601.17932, time stamp: 0x503285c2
Exception code: 0xe0434352
Fault offset: 0x000000000000caed
Faulting process id: 0x1028
Faulting application start time: 0x01cdb78c10761c73
Faulting application path: C:\Users\deLucain\Desktop\Release\Dispatch Review Assistant.exe
Faulting module path: C:\Windows\system32\KERNELBASE.dll
Report Id: 4e4f45e3-237f-11e2-bd76-14dae92102de
We had the same error message showing up when doing a private deployment (ie including libraries in application folder) of SQLCE 4.0 application.
When adding references to our project, we had added the x64 and x86 folders (and associated dlls) as per the documentation.
At this point, we got the error :
Unable to load the native components of SQL Server Compact corresponding to the ADO.NET provider of version 8876. Install the correct version of SQL Server Compact. Refer to KB article 974247 for more details.
In our environment, we found that the amd64 folder found under :
%Program Files%\Microsoft SQL Server Compact Edition\v4.0\Private
was also needed.
After adding it to the project and referencing the contained dlls, our issue was resolved.
Completely random and suddenly our application crashes on its production environment. The application runs on Windows XP and .net framework 3.5 sp1. In the application we provide a WCF service and we use the serial port.
When the application crashes it leaves messages in the application log:
.NET Runtime version 2.0.50727.3625 - Fatal Execution Engine Error (7A0BC59E) (80131506)
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
and
Faulting application ***.exe, version 1.0.0.0, stamp 4f48b8fc, faulting module mscorwks.dll, version 2.0.50727.3625, stamp 4e154c98, debug? 0, fault address 0x000a03ea.
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
On our test environment we do have similar problems.
On the internet I find several identical problems, all mention hot fixes or reinstalls. But I want to know what happens and do not want happens. Does anyone knows what happens and how we can fix it?
[edit]
Besides the application also Sophos antivirus and MySql is installed.
[edit 2]
In our application we use a C-library wrapped in a .net package. We use the library in more applications and in those it does not give the exceptions.
[edit 3] Cannot answer my own question
Well I found something:
http://support.microsoft.com/kb/959209/en-us
958481 List of the issues that are addressed by the Application Compatibility Update for the .NET Framework 2.0 Service Pack 2
In the .NET Framework 3.5 SP1, because of the changes that are made in
checking a NULL value to support address space layout randomization
(ASLR), a failure case causes an access violation in the runtime. This
access violation manifests as an ExecutionEngineException exception.
Additionally, the process is terminated.
http://www.microsoft.com/download/en/details.aspx?amp;displaylang=en&id=10006
i suggest you use MS Debugging tools for windows's AdPlus utility to take a full dump of the process when it crashes and then use WinDBG to see what happend. (using !threads , !clrstack ,!PrintException).
I have one windows application built using C# and .net framework 2.0 and its installed on Windows Server 2003.
I have tested application on my machine and it works perfectly on my machine. Only difference between two machines is that, my machine has Windows Vista OS and machine on which error occured has Windows Server 2003 OS.
When I start application, it works correctly for some time but then gives one error as
Faulting application ,
version ,faulting
module kernel32.dll,version 5.2.3790.4480, stamp , debug? 0. fault address 0x000bef7.
Source : .NET Runtime 2.0 Error
Category : None
Event ID : 1000
Does anyone knows why this error is coming? I googled for this error but most of the solutions were for either explorer.exe or internet explorer.
Use windbg or adplus to attach to the process and get the process crash dump. This would help you to identify the offending part of the code with symbols loaded. In most cases, it shows the last exception and hence gives a very good view of what could have gone wrong.