标签: debugging

无法在从C#调用的C++/CLI使用的C DLL中设置断点

我有一个C++/CLI对象调用的本机C DLL,它是C#中WPF程序的ViewModel.我想在C DLL中设置断点.当我尝试设置它们时,它们会变灰并且帮助气球说断点当前不会被击中.没有为此文档加载任何符号.

为了让程序运行OK我必须添加一个自定义构建步骤,它将DLL,PDB,ILK和LIB文件复制到C#主程序的中间目录.我怀疑这与问题有关.

当我查看已加载模块的列表(Debug - Windows - Modules)时,在我知道DLL已经加载并且其中的某些函数被执行的点之后,我没有看到DLL.我看到C#主程序和调用C DLL的C++/CLI模块.

所有这些项目都在同一个解决方案中 - 我是否需要运行单独的解决方案实例才能调试DLL?理想情况下,我希望能够调试本机DLL以及调用GUI代码.

谢谢

debugging c++-cli visual-studio-2008

2
推荐指数
1
解决办法
2517
查看次数

附加到流程是否会使其行为不同?

虽然我知道调试和发布版本之间存在差异,但我很好奇是否将调试器附加到进程(内置版本或调试)更改处理行为?

作为参考,我正在开发HP 11.31 Itanium,但仍然对一般情况感到好奇.

c debugging

2
推荐指数
1
解决办法
278
查看次数

调试和二进制搜索

第2列("AHA!算法")中的"编程珍珠"讨论了二进制搜索如何帮助各种过程,如排序,树遍历.但它提到二进制搜索可以用于"程序调试".有人可以解释一下这是怎么做的吗?

debugging binary-search programming-pearls

2
推荐指数
4
解决办法
1484
查看次数

在ASP.NET MVC中跟踪LINQ TO SQL生成的查询

有关LINQ to SQL生成的查询输出的快速问题。

我在一个ASP.NET MVC项目Visual Studio 2008中,并且正在尝试MSDN文档中的建议:

MyDataContext _dc = new MyDataContext();
_dc.Log = Console.Out;
Run Code Online (Sandbox Code Playgroud)

但是“输出”窗口(CTRL + Alt + O)上没有任何显示。

为了使LINQ to SQL将调试信息转储到Visual Studio 2008中的“输出”窗口,我还需要配置其他东西吗?

我不知道它是否有任何区别,但是我的实体(和MyDataContext类)位于单独的类库项目中。

c# linq debugging visual-studio-2008 linq-to-sql

2
推荐指数
1
解决办法
2476
查看次数

Java应用程序的调试/标准版本

问候,

我正在使用嵌入式java,我将应用程序写入低资源设备.我得到的一个问题是当代码崩溃时设备停止.我可以通过我添加的一些日志记录从中获取一些信息.(简单的打印陈述)

由于内存限制,此日志记录无法保留在应用程序中.

我想知道有没有人知道有一个标志我可以传递给JVM,如果它是我需要的调试或标准编译,请说明.

如果它是一个调试版本,我希望包含print语句,如果它是一个删除print语句的标准版本.我问,因为我要经常剪切和粘贴语句等(这是一个痛苦的事)

谢谢

java debugging

2
推荐指数
1
解决办法
3552
查看次数

Visual Studio调试器输出 - 相同的输出但格式不同(如一个项目中的十进制输出,另一个项目中的十六进制)

我通过将一些DirectX代码重新实现到不同的项目中来学习一些DirectX编程,但我确实发现调试器似乎在两个项目(示例和我的项目)之间输出不同的数据.

在我的项目上,如果我这样做:

D3DSURFACE_DESC desc;
pTarget->GetLevelDesc(0,&desc);
int width = desc.Width;
int height = desc.Height;
Run Code Online (Sandbox Code Playgroud)

并且调试器输出宽度和高度我得到十进制结果,但是在directx样本中结果是十六进制(两者实际上都是准确的,当我将十六进制转换为十进制时似乎是合适的).

另一个(略微)次要问题是调试器向我提供有关vairous DirectX相关指针的信息的方式.例如,在我的项目中,当我停止执行并将鼠标移到指针上时,我得到一些中文字符,空指针以及所有这些(纹理仍然有效并且100%工作),但在DirectX示例中我得不到事实上它除了它是一个DirectX基类型(我的项目没有做的事情)之外,它不提供指针的任何信息.

所以我只是想知道,为什么会这样,是否有任何我可以使用的调试选项使它们工作相同?

debugging directx pointers visual-studio

2
推荐指数
1
解决办法
948
查看次数

调试语句的最佳实践是什么,其中包含字符串操作?

我经常发现自己在log4net和log4j的调试语句中添加了连接字符串或使用字符串格式化器,我应该用"if debug"块来包围这些调试语句,以便通过处理这些参数来阻止自己浪费资源,即使调试语句将会不打印出来?

我会假设检查if(isDebug)是否比发生字符串操作更快更高效,但是当调试级别设置为高于debug时,它会导致程序以不同的方式运行(更快),这可能意味着同步问题当我写入日志时,在生产中发生的事情不会发生.

c# java debugging log4net log4j

2
推荐指数
1
解决办法
1482
查看次数

Xcode中'breakpoint'标记颜色的含义是什么?

当我设置断点(双击特定行编辑器的边框)时,有3种颜色:1.蓝色2.褪色蓝色3.黄色带蓝色边框

你能告诉我每种颜色的含义是什么吗?

谢谢.

debugging xcode breakpoints

2
推荐指数
1
解决办法
932
查看次数

调用堆栈和反汇编怀疑

三个疑点1)假设我得到如下调用堆栈

    user32.dll!_InternalCallWinProc@20()  + 0x28 bytes  
user32.dll!_UserCallWinProcCheckWow@32()  + 0xb7 bytes  
user32.dll!_CallWindowProcAorW@24()  + 0x51 bytes   
user32.dll!_CallWindowProcW@20()  + 0x1b bytes  
Run Code Online (Sandbox Code Playgroud)

现在每个函数末尾提到的字节是什么?就像第一个语句一样,什么是0x28字节.

2)如何在VS中的windows系统dll上放置断点?在windbg中,我可以搜索windows系统dll的特定功能

>x wininet!*funcA*
Run Code Online (Sandbox Code Playgroud)

使用此命令,我可以获取此函数的地址并可以放置断点.我可以在Visual Studio中执行相同的操作吗?

3)我没有dll的Symbol文件.我在反汇编中得到的调用堆栈是

7814XXX0  call        dword ptr [__imp__WindowsFuncA@32 (781EXXXXh)] 
Run Code Online (Sandbox Code Playgroud)

什么是__imp__上面调用栈?这是否意味着这个windows函数被挂钩到其他一些dll?

debugging assembly windbg visual-studio

2
推荐指数
1
解决办法
669
查看次数

如何调试ASP.NET编译错误?

我有一个庞大而复杂的网站,大多是由其他人编写的.我做了一些更改,现在当我尝试访问网站上的任何页面时(而不仅仅是我的更改位置),我收到下面描述的错误.虽然我想知道如何解决这个问题,但我更想知道我应该采取的一般诊断步骤,以便追查问题 - 我希望下次能够自己解决.在此先感谢您的帮助!

当我将浏览器导航到网站上的任何页面时,我收到服务器错误:

Parser Error
Parser Error Message: Object reference not set to an instance of an object.
Source Error: [No relevant source lines]
Run Code Online (Sandbox Code Playgroud)

我查看了服务器上的事件日志,并获得了一些稍微详细的信息:

Event code: 3006 
Event message: A parser error has occurred. 

Exception information: 
Exception type: HttpException 
Exception message: Object reference not set to an instance of an object. 

Stack trace:
at System.Web.Compilation.BuildManager.ReportTopLevelCompilationException()
at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled()
at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters)
Run Code Online (Sandbox Code Playgroud)

asp.net debugging asp.net-mvc

2
推荐指数
1
解决办法
3876
查看次数