Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我有一个.NET应用程序无法调试,因为当我安装SDK时,它可以工作。有什么建议吗?_C#_.net_Visual Studio 2010_Debugging_Visual Studio Debugging - Fatal编程技术网

C# 我有一个.NET应用程序无法调试,因为当我安装SDK时,它可以工作。有什么建议吗?

C# 我有一个.NET应用程序无法调试,因为当我安装SDK时,它可以工作。有什么建议吗?,c#,.net,visual-studio-2010,debugging,visual-studio-debugging,C#,.net,Visual Studio 2010,Debugging,Visual Studio Debugging,我有一个.NET应用程序,可以在所有安装了.NET的机器上正常工作 当我尝试在未安装.NET framework的PC上启动它时,会发生以下情况: 它打开,我可以更改选项卡(我的应用程序有4个选项卡),它读取计算机IP没有任何问题,但当它从另一个终端接收到消息时(我有一个通过ETH-TCP/IP与PC通信的终端),它会在某处崩溃 我得到的信息是: 说明:已停止工作 重要的是,我无法调试它,因为如果我安装.NET framework,它会像魔咒一样神奇地工作。 显然,我这样问是因为我们不希望在办公

我有一个.NET应用程序,可以在所有安装了.NET的机器上正常工作

当我尝试在未安装.NET framework的PC上启动它时,会发生以下情况: 它打开,我可以更改选项卡(我的应用程序有4个选项卡),它读取计算机IP没有任何问题,但当它从另一个终端接收到消息时(我有一个通过ETH-TCP/IP与PC通信的终端),它会在某处崩溃

我得到的信息是: 说明:已停止工作

重要的是,我无法调试它,因为如果我安装.NET framework,它会像魔咒一样神奇地工作。 显然,我这样问是因为我们不希望在办公室的所有机器上都安装.NET(它们运行不同的Windows版本,而且很多机器都没有安装.NET)

我的问题可以类似于,但在我的例子中.exe启动(如我上面解释的)。。当我启动PC和终端之间的通信时,会发生崩溃

有人对我的问题有什么提示吗?多谢各位

编辑:谢谢你的回答,最后我决定在没有.NET的虚拟机上运行应用程序进行远程调试。现在,当它崩溃时,我可以捕获安装在主机上的VS2010中的错误指令。
顺便说一句,问题出在无法加载的.dll上。您必须在计算机上安装.NET Framework才能运行.NET应用程序。NET Framework既是运行时也是SDK,而不仅仅是SDK。Windows XP以外的所有版本都安装了某些版本的.NET Framework


如果您说安装VisualStudio纠正了这个问题(这就是您链接到的问题所描述的),那么这完全是一个不同的问题。不幸的是,您的问题没有提供足够的信息进行故障排除。您可以在遇到问题的计算机上检查事件查看器,然后在应用程序事件日志中查找相邻的两个错误。其中一个错误将包含异常详细信息,这将帮助我们(或您)跟踪问题。

您必须在计算机上安装.NET Framework才能运行.NET应用程序。NET Framework既是运行时也是SDK,而不仅仅是SDK。Windows XP以外的所有版本都安装了某些版本的.NET Framework


如果您说安装VisualStudio纠正了这个问题(这就是您链接到的问题所描述的),那么这完全是一个不同的问题。不幸的是,您的问题没有提供足够的信息进行故障排除。您可以在遇到问题的计算机上检查事件查看器,然后在应用程序事件日志中查找相邻的两个错误。其中一个错误将包含异常详细信息,这将有助于我们(或您)跟踪问题。

将日志记录添加到您的应用程序中,以便您获得有关应用程序崩溃的位置和原因的更多信息。您问题的大部分内容看起来好像是未安装.NET framework本身(在这种情况下,你的.NET应用程序运行得如何?)但你的标题上写着SDK——所以,要清楚,在“有时中断”和“正常工作”之间,这些机器上安装了/没有安装什么状态?将日志记录添加到应用程序中,这样您就可以获得有关应用程序崩溃的位置和原因的更多信息。您问题的大部分内容看起来好像是未安装的.NET framework本身(在这种情况下,您的.NET应用程序是如何运行的?)但是你的标题上写着SDK-所以,要清楚,在“有时中断”和“正常工作”状态之间,这些机器上安装了/没有安装什么?基于此,可能安装的.NET版本是罪魁祸首。可能它工作到了现有(旧)版本的程度NET framework,但随后遇到需要更新版本的问题。这是肯定的可能性。例如,.NET 3.5应用程序可能在安装了.NET 2.0的计算机上运行(可能没有;我还没有对此进行测试)由于它们共享相同的运行时版本,3.5只是添加了库。4.5和4.0也是如此。基于此,安装的.NET版本可能是罪魁祸首。可能它的工作方式与现有版本(旧版本)相同NET framework,但随后遇到需要更新版本的问题。这是肯定的可能性。例如,.NET 3.5应用程序可能在安装了.NET 2.0的计算机上运行(可能没有;我没有测试过),因为它们共享相同的运行时版本,3.5只添加了库。4.5和4.0也是如此。