如果在.NET 4下使用,SysInternals的DebugView不再有效.一些研究表明,如果附加调试器,框架的新架构不允许捕获跟踪; 就我而言,它是Visual Studio调试器.将目标框架从4更改为3.5使其再次起作用.
任何人都知道在连接Visual Studio调试器的同时让DebugView在.NET 4下工作的方法吗?我尝试清除Trace类的Listeners集合,但没有运气.
我在Windows 7和Windows 8 64位计算机以及Windows 7 32位计算机上安装了DebugView 4.79.在所有这些中,我看到DebugView以管理员身份启动时没有输出.我正在尝试调试使用带有ATLTRACE调用的CLI/C++组件的应用程序.
我已经启用捕获事件,捕获win32并捕获全局win32并且什么也看不见,所以我不确定发生了什么.
我想OutputDebugString()在我的应用程序中使用,然后可以选择在现场部署应用程序时在单独的查看器中显示它.
也就是说,我不想更改标志并重建我的.exe来打开和关闭调试.
谷歌搜索,似乎DebugView应该处理,但它和TraceTool都没有显示此代码的任何输出.
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
OutputDebugString(PChar('Hello, wurld'));
end;
end.
Run Code Online (Sandbox Code Playgroud)
我已阅读文档但无济于事,并看到其他人遇到过类似的问题,但尚未发布解决方案.
有解决方案吗?
我在测试期间使用Sysinternals DebugView进行调试/记录,这非常好.不过我在想是否有更先进的工具.
我正在寻找的功能:
我在DebugView中喜欢的功能:
有什么工具吗?还是其他可用的技术?
我使用的是Windows XP/7,主要使用Delphi和Python进行编程.
我正在开发在Internet Explorer中运行的浏览器帮助程序对象.我正在编写调试消息,ATLTRACE("...");当Visual Studio附加到iexplore.exe进程时,这些看起来很好,但这对于快速测试来说很慢.DebugView从我的BHO中捕获任何内容.
为什么DebugView不显示BHO调试消息?是否与运行在低完整性级别的Internet Explorer有关?
当我点击"开始调试"时,Visual Studio 2010切换到"调试视图" - 就像Eclipse一样.
我可以禁用此功能 - 如果是这样如何?
我的机器表现不佳 - 因此这个功能很刺激.
除了两台显示器,我不需要它.
Ctrl-F5无需调试即可启动.
这不是我的意思,我想调试没有"调试视图",即不改变所有窗口的布局.
我正在尝试将设备连接到 DebugView。但是,不要连接。
我引用了DebugView 文档。
我所知道的只是本文件中所述的内容。
还有其他原因不能连接吗?
我模拟了以下内容。
adb devicesadb shell setprop debug.firebase.analytics.app com.example.myapp如果我的问题不清楚,请与我交谈。
再会,
我目前遇到一个奇怪的现象,今天早上,当我打开 dbgview 应用程序时,弹出一条错误消息(与内核相关),不太记得详细信息。虽然dbgview显示在任务栏上,但是当我点击它时,它不会跳出任何地方。就好像我有第二台显示器,它跳到另一个屏幕上。
我尝试安装最新版本。系统恢复到几天前仍处于工作状态。但这没有帮助。
希望这里有人能给我一些线索。
07/07/2020 我发现它可能与 debugview 这个应用程序无关。当我打开任务栏并选择 debugview 应用程序并最大化它显示的窗口大小时。然而只要我点击应用右上角的恢复按钮,它又飞出了宇宙……
谢谢
我使用OutputDebugString转储\ t分隔数据,然后使用ex-Sysinternals DebugView捕获它.
问题是DebugView中的所有数据看起来都是空格分隔的,因此我需要使用CTRL + H"\ x20""t"来替换空格,然后才能使用它(我真的需要制表符分隔数据).
反正告诉DebugView不要用空格替换制表符吗?或者可能有更好的工具可以捕获OutputDebugString函数的输出?
任何想法都非常欢迎!