2013-04-15 72 views
0

在我的开发机器上,我使用VS2012。这是一个针对.NET 4.5的WPF程序。它在开发机器上运行得很好。但是,当我在另一台计算机上测试它时,它会启动,挂起,然后崩溃,显示“MyApp已停止工作”窗口。点击查看详细信息,我看到一个XML日志,其中有这样的信息:启动后程序几乎立即崩溃

<?xml version="1.0" encoding="UTF-16"?> 
-<WERReportMetadata> 
-<OSVersionInformation> 
<WindowsNTVersion>6.1</WindowsNTVersion> 
<Build>7601 Service Pack 1</Build> 
<Product>(0x30): Windows 7 Professional</Product> 
<Edition>Professional</Edition> 
<BuildString>7601.18113.x86fre.win7sp1_gdr.130318-1533</BuildString> 
<Revision>1130</Revision> 
<Flavor>Multiprocessor Free</Flavor> 
<Architecture>X86</Architecture> 
<LCID>1033</LCID> 
</OSVersionInformation> 
-<ParentProcessInformation> 
<ParentProcessId>2600</ParentProcessId> 
<ParentProcessPath>C:\Windows\explorer.exe</ParentProcessPath> 
<ParentProcessCmdLine>C:\Windows\Explorer.EXE</ParentProcessCmdLine> 
</ParentProcessInformation> 
-<ProblemSignatures> 
<EventType>CLR20r3</EventType> 
<Parameter0>myApp.exe</Parameter0> 
<Parameter1>3.3.5.5</Parameter1> 
<Parameter2>51682570</Parameter2> 
<Parameter3>mscorlib</Parameter3> 
<Parameter4>4.0.30319.17929</Parameter4> 
<Parameter5>4ffa561c</Parameter5> 
<Parameter6>43c4</Parameter6> 
<Parameter7>105</Parameter7> 
<Parameter8>System.Windows.Markup.XamlParse</Parameter8> 
</ProblemSignatures> 
-<DynamicSignatures> 
<Parameter1>6.1.7601.2.1.0.256.48</Parameter1> 
<Parameter2>1033</Parameter2> 
<Parameter22>0a9e</Parameter22> 
<Parameter23>0a9e372d3b4ad19135b953a78882e789</Parameter23> 
<Parameter24>0a9e</Parameter24> 
<Parameter25>0a9e372d3b4ad19135b953a78882e789</Parameter25> 
</DynamicSignatures> 
-<SystemInformation> 
<MID>5C6F71F8-85F7-4E38-AB94-44B953155C30</MID> 
<BIOSVersion>6.00 PG</BIOSVersion> 
</SystemInformation> 
</WERReportMetadata> 

现在,我认为这个问题是在mscorlib程序,自认为在“问题标志”的。但是,我注意到该文件存在,并且它是适当的版本号。还有它由以下信息的TXT日志文件:

<?xml version="1.0" encoding="UTF-16"?> <DATABASE> <EXE NAME="myApp.exe" FILTER="CMI_FILTER_PRIVACY"> 
    <MATCHING_FILE NAME="myApp.exe" SIZE="61440" CHECKSUM="0x5F150F1F" BIN_FILE_VERSION="3.3.5.5" BIN_PRODUCT_VERSION="3.3.5.5" PRODUCT_VERSION="3.3.5.5" FILE_DESCRIPTION="My Program" COMPANY_NAME="From Home" PRODUCT_NAME="My Program" FILE_VERSION="3.3.5.5" ORIGINAL_FILENAME="My Program.exe" INTERNAL_NAME="My Program.exe" LEGAL_COPYRIGHT="Copyright © From Home 2012" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x1" MODULE_TYPE="WIN32" PE_CHECKSUM="0x0" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="3.3.5.5" UPTO_BIN_PRODUCT_VERSION="3.3.5.5" LINK_DATE="04/15/2013 16:26:23" UPTO_LINK_DATE="04/15/2013 16:26:23" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="00002204bc03a42c8bfbb302394dd279b63d42740dac" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="app.dll" SIZE="40448" CHECKSUM="0x5E9750F" BIN_FILE_VERSION="2.0.4849.27478" BIN_PRODUCT_VERSION="2.0.4849.27478" PRODUCT_VERSION="2.0.4849.27478" FILE_DESCRIPTION="DailyReport" COMPANY_NAME="From Home" PRODUCT_NAME="DailyReport" FILE_VERSION="2.0.4849.27478" ORIGINAL_FILENAME="DailyReport.dll" INTERNAL_NAME="DailyReport.dll" LEGAL_COPYRIGHT="Copyright From Home © 2013" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x0" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="2.0.4849.27478" UPTO_BIN_PRODUCT_VERSION="2.0.4849.27478" LINK_DATE="04/11/2013 21:15:57" UPTO_LINK_DATE="04/11/2013 21:15:57" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="000085f170a19e6b5e8e946feeb760e0d88925760057" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="lua5.1.dll" SIZE="325960" CHECKSUM="0xC69B4921" MODULE_TYPE="WIN32" PE_CHECKSUM="0x56FB6" LINKER_VERSION="0x50001" LINK_DATE="08/09/2010 18:57:16" UPTO_LINK_DATE="08/09/2010 18:57:16" EXPORT_NAME="lua5.1.dll" EXE_WRAPPER="0x0" FILE_ID="0000280fac9cf711d93c95f6b80ac97d89cf5853c096" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="MySql.Data.dll" SIZE="382976" CHECKSUM="0xF6E33CCD" BIN_FILE_VERSION="6.6.4.0" BIN_PRODUCT_VERSION="6.6.4.0" PRODUCT_VERSION="6.6.4.0" FILE_DESCRIPTION="MySql.Data.dll" COMPANY_NAME="Oracle" FILE_VERSION="6.6.4.0" ORIGINAL_FILENAME="MySql.Data.dll" INTERNAL_NAME="MySql.Data.dll" LEGAL_COPYRIGHT="Copyright © 2004, 2010, Oracle and/or its affiliates. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x6CE8E" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="6.6.4.0" UPTO_BIN_PRODUCT_VERSION="6.6.4.0" LINK_DATE="10/17/2012 19:19:22" UPTO_LINK_DATE="10/17/2012 19:19:22" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="0000db0146c05339a80db023c1ae16d0e1642872da7f" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="NLog.dll" SIZE="388096" CHECKSUM="0xE71161C5" BIN_FILE_VERSION="2.0.0.0" BIN_PRODUCT_VERSION="2.0.0.0" PRODUCT_VERSION="2.0.0.0" FILE_DESCRIPTION="NLog for .NET Framework 4" COMPANY_NAME="NLog" PRODUCT_NAME="NLog v2.0.0.2000" FILE_VERSION="2.0.0.0" ORIGINAL_FILENAME="NLog.dll" INTERNAL_NAME="NLog.dll" LEGAL_COPYRIGHT="Copyright (c) 2004-2011 by Jaroslaw Kowalski" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x6B2F2" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="2.0.0.0" UPTO_BIN_PRODUCT_VERSION="2.0.0.0" LINK_DATE="07/18/2011 06:26:53" UPTO_LINK_DATE="07/18/2011 06:26:53" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="000012f50065f5b3b21552ae45cfbdcc1dfff5326c5e" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="PresentationFramework.dll" SIZE="2040296" CHECKSUM="0xE53B2864" BIN_FILE_VERSION="4.0.30319.17929" BIN_PRODUCT_VERSION="4.0.30319.17929" PRODUCT_VERSION="4.0.30319.17929" FILE_DESCRIPTION="PresentationFramework.dll" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® .NET Framework" FILE_VERSION="4.0.30319.17929" ORIGINAL_FILENAME="PresentationFramework.dll" INTERNAL_NAME="PresentationFramework.dll" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x1FC9DA" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="4.0.30319.17929" UPTO_BIN_PRODUCT_VERSION="4.0.30319.17929" LINK_DATE="07/09/2012 06:24:56" UPTO_LINK_DATE="07/09/2012 06:24:56" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="0000ad06ce5b4e6b7b0807f3d3bdf0662e37c201e3cc" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="System.Data.SQLite.dll" SIZE="1025024" CHECKSUM="0x479B453D" BIN_FILE_VERSION="1.0.84.0" BIN_PRODUCT_VERSION="1.0.84.0" PRODUCT_VERSION="1.0.84.0" FILE_DESCRIPTION="System.Data.SQLite Interop Assembly" COMPANY_NAME="Robert Simpson, et al." PRODUCT_NAME="System.Data.SQLite" FILE_VERSION="1.0.84.0" ORIGINAL_FILENAME="SQLite.Interop.dll" INTERNAL_NAME="SQLite.Interop" LEGAL_COPYRIGHT="Public Domain" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0xFA458" LINKER_VERSION="0x10000" UPTO_BIN_FILE_VERSION="1.0.84.0" UPTO_BIN_PRODUCT_VERSION="1.0.84.0" LINK_DATE="01/09/2013 19:24:08" UPTO_LINK_DATE="01/09/2013 19:24:08" EXPORT_NAME="System.Data.SQLite.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" FILE_ID="00006f3f7b6a03d9042a08f8bdb7b92f6fb542ecd5e5" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="System.Data.SQLite.Linq.dll" SIZE="183296" CHECKSUM="0xA5ED2385" BIN_FILE_VERSION="1.0.84.0" BIN_PRODUCT_VERSION="1.0.84.0" PRODUCT_VERSION="1.0.84.0" FILE_DESCRIPTION="System.Data.SQLite for LINQ" COMPANY_NAME="http://system.data.sqlite.org/" PRODUCT_NAME="System.Data.SQLite" FILE_VERSION="1.0.84.0" ORIGINAL_FILENAME="System.Data.SQLite.Linq.dll" INTERNAL_NAME="System.Data.SQLite.Linq.dll" LEGAL_COPYRIGHT="Public Domain" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x2CCE1" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="1.0.84.0" UPTO_BIN_PRODUCT_VERSION="1.0.84.0" LINK_DATE="01/09/2013 19:25:56" UPTO_LINK_DATE="01/09/2013 19:25:56" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="0000c8970ba6a5e8b84a0bb3ecb69021741b40622bae" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="uninstall.exe" SIZE="1344512" CHECKSUM="0x36E8F08F" BIN_FILE_VERSION="9.1.0.0" BIN_PRODUCT_VERSION="9.1.0.0" PRODUCT_VERSION="9.1.0.0" FILE_DESCRIPTION="Setup Application" COMPANY_NAME="Indigo Rose Corporation" PRODUCT_NAME="Setup Factory Runtime" FILE_VERSION="9.1.0.0" ORIGINAL_FILENAME="suf_rt.exe" INTERNAL_NAME="suf_rt" LEGAL_COPYRIGHT="Runtime Engine Copyright © 2012 Indigo Rose Corporation (www.indigorose.com)" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x1" MODULE_TYPE="WIN32" PE_CHECKSUM="0x0" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="9.1.0.0" UPTO_BIN_PRODUCT_VERSION="9.1.0.0" LINK_DATE="06/14/2012 15:50:03" UPTO_LINK_DATE="06/14/2012 15:50:03" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" FILE_ID="0000b717fd548382064189c16cb94dda28b1967a5712" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> 
    <MATCHING_FILE NAME="WPFToolkit.Extended.dll" SIZE="507392" CHECKSUM="0xD474338B" BIN_FILE_VERSION="1.7.4644.13122" BIN_PRODUCT_VERSION="1.7.4644.13122" PRODUCT_VERSION="1.7.4644.13122" FILE_DESCRIPTION="Xceed Extended WPF Toolkit" COMPANY_NAME="Xceed Software Inc." PRODUCT_NAME="Xceed Extended WPF Toolkit" FILE_VERSION="1.7.4644.13122" ORIGINAL_FILENAME="WPFToolkit.Extended.dll" INTERNAL_NAME="WPFToolkit.Extended.dll" LEGAL_COPYRIGHT="Copyright © Xceed Software Inc. 2010-2012" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x7EBB6" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="1.7.4644.13122" UPTO_BIN_PRODUCT_VERSION="1.7.4644.13122" LINK_DATE="09/18/2012 12:17:25" UPTO_LINK_DATE="09/18/2012 12:17:25" VER_LANGUAGE="Language Neutral [0x0]" EXE_WRAPPER="0x0" FILE_ID="00001a006d37fd32f2cc0e93f7ef0ce89d1a4e436568" PROGRAM_ID="0000e1913cb9b12c018ba3d96e7a81891fca0000ffff" /> </EXE> <EXE NAME="KERNELBASE.dll" FILTER="CMI_FILTER_THISFILEONLY"> 
    <MATCHING_FILE NAME="KernelBase.dll" SIZE="293376" CHECKSUM="0x70F32D8A" BIN_FILE_VERSION="6.1.7601.18015" BIN_PRODUCT_VERSION="6.1.7601.18015" PRODUCT_VERSION="6.1.7601.18015" FILE_DESCRIPTION="Windows NT BASE API Client DLL" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® Windows® Operating System" FILE_VERSION="6.1.7601.18015 (win7sp1_gdr.121129-1432)" ORIGINAL_FILENAME="Kernelbase" INTERNAL_NAME="Kernelbase" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x52995" LINKER_VERSION="0x60001" UPTO_BIN_FILE_VERSION="6.1.7601.18015" UPTO_BIN_PRODUCT_VERSION="6.1.7601.18015" LINK_DATE="11/30/2012 04:50:30" UPTO_LINK_DATE="11/30/2012 04:50:30" EXPORT_NAME="KERNELBASE.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" FILE_ID="00002dc195b5162996b04b9e1e7bb25191b6478fcaea" PROGRAM_ID="0000f519feec486de87ed73cb92d3cac802400000000" /> </EXE> <EXE NAME="kernel32.dll" FILTER="CMI_FILTER_THISFILEONLY"> 
    <MATCHING_FILE NAME="kernel32.dll" SIZE="868352" CHECKSUM="0x69E28698" BIN_FILE_VERSION="6.1.7601.18015" BIN_PRODUCT_VERSION="6.1.7601.18015" PRODUCT_VERSION="6.1.7601.18015" FILE_DESCRIPTION="Windows NT BASE API Client DLL" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® Windows® Operating System" FILE_VERSION="6.1.7601.18015 (win7sp1_gdr.121129-1432)" ORIGINAL_FILENAME="kernel32" INTERNAL_NAME="kernel32" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0xDFFC7" LINKER_VERSION="0x60001" UPTO_BIN_FILE_VERSION="6.1.7601.18015" UPTO_BIN_PRODUCT_VERSION="6.1.7601.18015" LINK_DATE="11/30/2012 04:50:29" UPTO_LINK_DATE="11/30/2012 04:50:29" EXPORT_NAME="KERNEL32.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" FILE_ID="0000ea174348498eaefeba3916a024e5cdd47c0ded68" PROGRAM_ID="0000f519feec486de87ed73cb92d3cac802400000000" /> </EXE> </DATABASE> 

我有双重检查,复查,卸载和测试计算机上重新安装了.NET 4.5,仍然有问题。所有的dll都是在命令行中使用regsvr32注册的。我几乎可以肯定,我错过了一些愚蠢的东西,但我恐怕没有看到它。希望一双新鲜的眼睛会有所帮助。

编辑

我甚至试过程序重定向到.NET 4.0,我也得到相同的XML日志,用的而不是被<Parameter4>4.0.30319.17929</Parameter4>例外,我得到<Parameter4>4.0.0.0</Parameter4>

+0

如果您的计算机和正在执行的计算机之间存在网络连接,则可以尝试[远程调试](http://msdn.microsoft.com/zh-cn/library/bt727f1t.aspx)该应用程序。 – PHeiberg

+0

@PHeiberg:我试过这样做,但每次我在开发机器上设置断点时,我都会附加到在测试机器上运行的进程,我会得到“断点不会被命中,符号不会被加载”。我确保将我的Debug文件夹中的所有文件复制到我的测试机器上。 – MyCodeSucks

+2

我知道这令人沮丧的经历都很好。这里有一个小问题的拍摄指南[here](http://www.codewrecks.com/blog/index.php/2012/03/22/troubleshoot-remote-debugging-of-managed-code/)。关闭“要求源文件完全匹配原始版本”,我也很幸运。 – PHeiberg

回答

2

你很可能缺少一些参考。尝试捕获未处理的异常或使用FUSLOGVW查看更多信息。

+0

如何在应用程序输入Main()之前捕获异常?另外,FUSLOGVW没有显示任何结果。 – MyCodeSucks

1

如果您的应用程序使用的某些dll丢失或无法加载,则可能会发生这种情况。检查Windows事件日志,因为它可能包含来自.Net框架运行时的有意义的消息。

作为主要犯罪嫌疑人,我会检查System.Data.SQLite.dll,因为它具有独立的x86和x64版本。如果您在开发机器上使用了x64版本,则它不适用于x86操作系统,您将需要替换它。

+0

这也是我的第一个想法,但我从NuGet获得了它,它是实际支持x64和x86的dll。 – MyCodeSucks