Debugger DataSet 调试时查看DataSet
delphi 跟踪调试的时候查看DataSet数据记录 Ctrl+F7
调试 增强工具DataSet
http://edn.embarcadero.com/article/40268
http://docwiki.embarcadero.com/RADStudio/XE6/en/Debugger_Visualizers
http://docwiki.embarcadero.com/RADStudio/XE6/en/What%27s_New_in_Delphi_and_C++Builder_2010#Debugger_Changes
http://www.jed-software.com/xepp_screen.htm
http://www.soundvibe.net/blog/tcolor-visualizer/
Delphi 2010 Feature Highlight - Debugger Visualizers
Debugger Example
D:\Program Files (x86)\Embarcadero\RAD Studio\12.0\source\Visualizers\StringListVisualizer.pas
StringList查看器
XE5中delphi起作用,可以看到每行的元素值,c++builder怎么调不出来啊,原来是strings只有delphi的,在option里的Debugger Options\Visualizers看到没有c++描述支持
TStringList *ls;
ls = new TStringList();
ls->Add("aaa");
ls->Add("bbb");
ls->Add("ccc");
delete ls;
ls = NULL;
sl := TStringList.Create;
sl.Add('aaa');
sl.Add('bbb');
sl.Add('ccc');
FreeAndNil(sl);
Da
日期变量查看器
teTimeVisualizer.pas
官方提供的时间类型观察器,如果禁用的话,只可以看到float类型的数字,看不到日期格式,太不方便了,delphi和c++builder都可以。
TDateTime mydt;
mydt = TDateTime::CurrentDateTime();
http://stackoverflow.com/questions/2556146/improve-speed-of-own-debug-visualizer-for-delphi-2010
http://delphi.netcode.cz/text/tdataset-debug-visualizer.aspx
http://bbs.cnpack.org/redirect.php?tid=3323&goto=lastpost&styleid=1&sid=3NVH51
---------------------
DebugSvcs: IOTADebuggerServices;
DebugSvcs.CurrentProcess.CurrentThread.Evaluate()
IOTAThread.Evaluate
TDataSet
在Delphi里,用IOTAThread.Evaluate方法可以成功调用ClientDataSet和ADOQuery的SaveToFile方法保存文件,然后在DataSetVisualizer里分别用ClientDataSet和ADOQuery的LoadFromFile方法装载,然后关联DataSource、DBGrid,就可以显示了,速度极快!这样Delphi就解决了!
但是上述方法不能解决c++builder,在cb环境下IOTAThread.Evaluate调用SaveToFile方法不成功,获取属性可以成功,比如Expression="ADOQuery1->RecordCount"之类可以成功,是不是XE的bug还是方法不对,也许根本不支持方法的调用。再找找吧
CB里ClientDataSet,有XMLData属性,是数据集的xml数据,可以取到,然后赋值给调试器的ClientDataSet,这样也就解决了。
CB里的ADOQuery怎么办,他没有类似的XMLData熟悉啊
另外,针对cb,还有用IOTAProcess.ReadProcessMemory()方法尝试读取内存地址,再转换成DataSet不知行不行
cds1->SaveToFile("c:\\a",1) 这个可以成功,放在Evaluate/Modify窗口的Expression表达是里输入cds1->SaveToFile("c:\\a",1)可以成功,文件也存上了。
用此方法可以了。
但是调用cds1->ClassName()
还是回出现错误E2122 Function call terminated by unhandled exception 0xc0000005 at address 0x5006677d
大功告成
可以查看数据集了
---------------------
Debugger DataSet 调试时查看DataSet的更多相关文章
- 【idea】断点调试时查看所有变量和静态变量
转载至博客:https://blog.csdn.net/qq32933432/article/details/86672341 缘起 笔者在进行HashMap原理探索的时候需要在IntelliJ ID ...
- 4种Delphi IDE的调试时查看内存的方法,太酷了!
1.ctrl+alt+m,可以查看每个函数过程的内存位置 2.Ctrl+Alt+C 查看代码对应的汇编 3.原来用delphi看变量信息一直是简单的用watch看,但是有时候变量值直接用特定类型看总是 ...
- VS调试时查看动态数组的全部元素
转载:https://blog.csdn.net/sinat_36219858/article/details/80720527
- Xcode调试时查看变量的方法
在Debug Console窗口中(lldb)后可以使用两个指令: 1.print 变量名:打印出变量值 2.po 对象名:print object,打印出对象中的值: 另外,Command+Shif ...
- gdb调试时查看内存
x/<n/f/u> <addr> n.f.u是可选的参数,<addr>表示一个内存地址 1) n 是一个正整数,表示显示内存的长度,也就是说从当前地址向后显示几个地 ...
- Eclipse调试时Application XXX is waiting for the debugger to attach的提示
原文链接: http://blog.csdn.net/star_huang/article/details/7678845 最近Eclipse调试时总是出现Application XXX is wa ...
- 在 Visual Studio 中调试时映射调用堆栈上的方法
本文转自:https://msdn.microsoft.com/zh-cn/library/dn194476.aspx 1.创建代码图,以便在调试时对调用堆栈进行可视化跟踪. 你可以在图中进行标注以跟 ...
- paip.php 配置ZEND DEBUGGER 断点调试for cli..
paip.php 配置ZENDDEBUGGER 断点调试for cli.. 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http:/ ...
- 关于启动调试时,总是启动多个web端口的问题
在一个解决方案中,经常包含多个web项目,当设置某一个web项目为起始项目后,启动调试,会发现其他的web项目的端口也会一起打开,显示在电脑的右下方,其实开启其他端口有时是没必要的,只是多占用了系统内 ...
随机推荐
- Word中用VBA插入一个文件夹里的所有.jpg图片
每四张图片放在一页,第一行为四张图片的文件名 插入图片调整尺寸参考 Sub final() Dim FN As String, N%, W#, H#, PW#, PH# With ActiveDocu ...
- P145MathTool测试类的编写
如果我们在方法的自变量个数事先无法决定如何处理,比如: System.out.printf("%d",10); System.out.printf("%d %d" ...
- 20155328 《Java程序设计》实验一(Java开发环境的熟悉) 实验报告
20155328 <Java程序设计>实验一(Java开发环境的熟悉) 实验报告 一.实验内容及步骤 (一)使用JDK编译.运行简单的java程序 命令行下的程序开发: 打开windows ...
- 20155336 2016-2017-2《JAVA程序设计》第二周学习总结
20155336 2016-2017-2 <JAVA 程序设计>第二周学习总结 教材学习内容 1: GIT版本检测 2: JAVA中基本类型 整数 字节 浮点数 字符 布尔(▲) 通过AP ...
- Dlib简介及在windows7 vs2013编译过程
Dlib是一个C++库,包含了许多机器学习算法.它是跨平台的,可以应用在Windows.Linux.Mac.embedded devices.mobile phones等.它的License是Boos ...
- rem布局注意问题和meta标签
使用rem前的准备: 如果是移动端,添加name="viewport"的meta标签,其中的属性数值根据实际需求而定: <meta name="viewport&q ...
- appium -- 页面出现弹窗,关闭后,无法识别页面元素(转)
原文:https://www.cnblogs.com/leavescy/p/9733001.html; 1. 问题:如图所示:在修改手势密码的过程中,点击了返回按钮后,弹出该弹窗:点击继续设置后,就发 ...
- [转]操作系统Unix、Windows、Mac OS、Linux的故事
[写得很江湖气,可惜找不到原作者了] 文章转自:http://blog.csdn.net/wenmingchan/article/details/49925379 http://www.jb51.ne ...
- JavaScript里的循环方法之forEach,for-in,for-of
JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标 ...
- JAVA学习笔记--迭代器
迭代器(Iterator)是一种设计模式.它是一个对象,它的工作是遍历并选择序列中的对象,而客户端程序员不必知道或关心该序列底层的结构.创建迭代器的代价小,因而迭代器通常被称为轻量级对象. 一.Ite ...