草庐IT

Release调试

全部标签

c# - Release模式下 Console.SetOut 的问题?

我的代码中有一堆Console.WriteLines,我可以在运行时观察它们。我与我也编写的native库进行通信。我想在native库中添加一些printf并观察它们。但是我在运行时看不到它们。我创建了一个复杂的helloworld应用程序来演示我的问题。当应用程序运行时,我可以调试到native库并看到调用了helloworld。但是,输出永远不会出现在文本编写器中。请注意,如果相同的代码作为控制台应用程序运行,则一切正常。C#:[DllImport("native.dll")]staticexternvoidTest();StreamWriterwriter;publicForm

c# - 有选择地阻止调试器在第一次出现异常时停止

我知道我可以防止VisualStudio调试器在抛出某些类型的异常时停止(通过Ctrl-Alt-E“异常”对话框)。但是,如果想在某些特定位置而不是在全有或全无的基础上从代码中控制它怎么办?例如:try{SomeMethod(token);}catch(OperationCancelledException){returnfalse;}//...voidSomeMethod(CancellationTokentoken){//...//Idon'twantthedebuggertostoponthefollowingline#pragmaignore(OperationCancelle

c# - "PDB format is not supported"带有 .NET 可移植调试信息

最近几天我一直在huntingdownaproblem-结论:我的VisualStudio2017调试器无法在.NETFramework项目中使用“可移植”格式的PDB。对于可移植格式,我的意思是转到项目的设置,然后转到Build->Advanced然后选择portable在Debugginginformation下.当我开始调试像这样构建的.NETFramework项目时,断点未命中。当我暂停调试器并寻找它没有加载符号的原因时,它说(在Symbolloadinformation下):PDBformatisnotsupported我可以用任何.NETFramework项目重现它。目标框

c# - ASP.NET 的调试工具栏

是否有类似于ASP.NET(更具体地说是ASP.NETMVC)的“Django调试工具栏”的东西。这是一个HTML页面叠加层,显示总执行时间、SQL查询(和时间)、调用了哪些View...等等。 最佳答案 我的回答有点晚了。miniprofiler就是这样做的。您可以在http://data.stackexchange.com看到它的运行情况。(左上角)。 关于c#-ASP.NET的调试工具栏,我们在StackOverflow上找到一个类似的问题: https

c# - 为什么从 Async CTP/Release 中删除 "SwitchTo"?

我今天尝试使用SwitchTo方法切换到GUI线程,发现我从中提取它的示例不起作用,只是因为该方法不存在。然后我找到了这个简介here:Thereasonwegotridofitwasbecauseitwassodangerous.ThealternativeistobundleupyourcodeinsideTaskEx.Run...我的问题很简单:为什么它很危险?使用它会导致哪些具体危险?请注意,我确实阅读了该帖子的其余部分,因此我明白这里存在​​技术限制。我的问题仍然是,如果我知道这一点,为什么它危险?我正在考虑重新实现辅助方法以提供指定的功能,但如果有一些根本性的问题,除了有人

c# - x64 平台上调试器中奇怪的三元运算符行为

我在我的C#代码中使用了一个非常简单的三元表达式:helperClass.SomeData=helperClass.HasData?GetSomeData():GetSomeOtherData();在这两种情况下,表达式的每个路径上的函数都返回一个非空对象,但如果我在调试器中查看结果,它是空的,直到我在代码中引用它,例如使用断言:Debug.Assert(helperClass.SomeData!=null);只有在Debug模式下使用“x64”或“任何CPU”平台设置时才会出现这种情况。在“x86”模式下没问题。在假设我在编译器或调试器中发现错误之前,我尽量保持谨慎,但我找不到对此行

c# - 浏览器关闭时停止调试 Visual Studio 2013

如何在关闭浏览器窗口时自动停止调试VisualStudio2013? 最佳答案 只有InternetExplorer可以执行此操作,因为它都是Microsoft产品。由于Chrome无法直接访问VisualStudio,因此如果Chrome可以减少您PC上运行的IIS进程,那就太奇怪了。如果您想看到“停止调试行为”,您应该使用InternetExplorer作为调试浏览器。 关于c#-浏览器关闭时停止调试VisualStudio2013,我们在StackOverflow上找到一个类似的问

c# - 在调试中为 SSL 配置 launchSettings.json - ASP.NET Core/Visual Studio Code

我正在关注this将Facebook身份验证添加到我的网络应用程序的教程。作为该过程的一部分,我尝试在我的项目上启用SSL,但我发现的所有内容都涉及更新VisualStudio中“项目属性”对话框中的设置,我无法通过Mac上的VisualStudioCode进行设置。我尝试过手动更新launchSettings.json中的值,但我没有成功。如何在VisualStudioCode中更新launchSettings.json(或其他项目文件)以在调试时启用SSL? 最佳答案 如果您不想仅仅为了在VSCode中进行调试而更改Progra

c# - 现在 VS2015 已经出来了,支持调试 Roslyn 的方式是什么?

背景我们希望修改Roslyn并能够在编译时对其进行调试。在VS2015之前的版本中,这样做是一个痛苦的过程,而且流程不是很好。我们的目标是开发一个C#变体编译器。梦想VS2015之前,执行和调试修改后的Roslyn需要打开第二个VSIDE(实验性)集才能使用修改后的Roslyn。此过程无法直接正确设置,并且通常会破坏您的VS2015安装。VS2015之后,是否有更好的设置和流程可以修改和调试Roslyn?我已经安装了VisualStudio2015,但看起来我需要更多必需的位。之后我不确定如何运行测试并尝试VS2015中的更改。 最佳答案

c# - 在构建服务器 : Release or Debug code? 上进行单元测试

在.NET(C#)中,使用调试/发布构建进行单元测试有什么优点/缺点吗?您通常使用哪种目标配置在构建服务器上进行单元测试?重要吗?关于代码覆盖率(对于这个,我猜需要调试版本)。 最佳答案 我建议运行发布代码。出于几个原因。1)这是客户将要使用的代码。2)某些代码具有特殊的调试条件,这会在调试版本和发布版本之间产生差异。 关于c#-在构建服务器:ReleaseorDebugcode?上进行单元测试,我们在StackOverflow上找到一个类似的问题: http