我遇到了这个奇怪的问题。在我的机器上,安装了VS2010和VS2012,我在其他人的VS2010项目上进一步工作,但我在VS2012中做到了,因为我希望所有项目都使用相同的开发环境。 我添加了一些RFC并修复了一些错误,所以我想在另一台Windows 7机器上测试这个新软件,当我尝试运行exe时它根本什么也没做,甚至没有记录任何东西,这个过程只停留在进程概述大约10秒然后再次消失,没有任何记录。
我再次尝试了我的版本,但首先我添加了更多,之前使用System.Diagnostics.Trace.WriteLine进行日志记录,使代码看起来像这样:
static class Program
{
internal static Denocard.DCLib.Global global = new Denocard.DCLib.Global(System.Reflection.Assembly.GetExecutingAssembly());
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
System.Diagnostics.Trace.WriteLine(string.Format("{0:yyyy-MM-dd HH:mm:ss.fff} - Program.main 1", DateTime.Now));
由于没有记录任何内容,我从原始项目中取出原始的Debug文件夹并尝试了。它适用于测试机器并登录到日志文件中,因此我想知道在构建原始项目时会发生什么。
所以我再次复制了原始项目,在VS2012中打开它并做了一个干净的构建,以查看该Debug文件夹中的exe是否会起作用,这让我搞砸了。但那也行不通......
因此,VS 2010和VS2012之间肯定存在一些问题,或者它与我的计算机有关。我有Windows 7 Ultimate 64位,我最好的猜测是以前的开发人员使用的是Windows 7 32位系统。
我还尝试过使用Windows 7 32位的另一台计算机来查看问题是否不是特定于客户端的,但这样做也不起作用,因此对我来说这似乎是构建机器/ Visual Studio版本的问题。 / p>
其他信息: - 我已经看了3个项目的设置,这些项目一起变成了1个应用程序,在配置属性中,我看到其中2个以“任何CPU”为平台,但主项目有x86作为平台。 - 配置文件中的.Net版本一直是4,我的计算机作为当前在我桌面的测试计算机的版本都是4.0.30319,所以应该是相同的。
任何人都知道这里发生了什么和/或如何解决这个问题?
修改 在系统上安装windbg以获取核心异常或错误。在Windbg中,它似乎是一个CLR错误,虽然它没有说明哪个。在Windows事件日志中(在此处找到提示:Crash dump with unknown origin),它在Program.Main(System.String [])中显示System.TypeInitializationException。现在我们到了某个地方,虽然它没有说明导致异常的类型初始化...