我有几个进程正在运行,我想通过PowerShell连接到VS调试器.
目前,我可以这样做: Get-Process NServiceBus.Host | Debug-Process
如果只有一个进程,则提示我选择正确的调试器,然后我可以继续.
但是,如果有多个进程,当系统提示我为第二个进程选择调试器时,我无法选择当前运行的Visual Studio实例.
如何使用powershell将多个进程附加到Visual Studio的运行实例以进行调试?
debugging powershell visual-studio visual-studio-2013 powershell-4.0
我正在研究一个计算机视觉项目,并在某个过程中发生无限循环.我的图像数据似乎已被破坏.
过去,我曾经使用这种方法在磁盘上保存调试结果:
public static boolean saveToPath(String path, BufferedImage image) {
File img = new File(path);
try {
ImageIO.write(image, "png", new File(path));
} catch (IOException ex) {
System.err.println("Failed to save image as '"+path+"'. Error:"+ex);
return false;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
问题是,一旦使用循环并且错误介于两者之间,我需要看到许多图像.所以基本上,我想要一个像这样定义的方法:
/** Displays image on the screen and stops the execution until the window with image is closed.
*
* @param image image to be displayed
*/
public static void printImage(BufferedImage image) {
???
}
Run Code Online (Sandbox Code Playgroud)
并且可以在循环或任何函数中调用以显示实际图像,有效地表现为断点.因为虽然多线程在生产代码中非常好,但阻塞函数对于调试来说要好得多.
有时我需要知道不在范围内的结构的大小(甚至不在堆栈中,即frame相关的命令也无济于事).例如,它发生在调试客户端+服务器通信时,重新启动应用程序只是在结构的上下文中断,目的是找到大小是不舒服和耗时的.
如何struct在忽略当前上下文的情况下找到标题中定义的大小?
"项目X的活动配置中存在错误.继续启动?" 在Eclipse中调试代码时出现对话框.点击"继续"按钮可以调试成功.启动配置没有明显错误.类似的运行配置不会生成错误.
我有一个充当调试器的程序.我为线程设置dr0设置了一个hw bp到我想要bp的地址,dr7设置为1,因为我希望每次执行该地址时bp都会生成一个事件.
它的工作原理但现在的问题是我不会一直停止接收EXCEPTION_SINGLE_STEP.我像往常一样用WaitForDebugEvent创建了一个循环:
DebugActiveProcess(pid);
while (flag == 0)
{
WaitForDebugEvent(&DBEvent, INFINITE);
if (first_time){
setHWBPInCurrentThreads(pid, breakpoint_address);
first_time = 0;
}
switch (DBEvent.dwDebugEventCode)
{
// Here we check if a new thread is created and we set a BP for all of them
case CREATE_THREAD_DEBUG_EVENT:
{
HANDLE thread_handle = DBEvent.u.CreateProcessInfo.hProcess;
HANDLE hX3 = SetHardwareBreakpoint(thread_handle, HWBRK_TYPE_CODE, HWBRK_SIZE_1, breakpoint_address);
}break;
case EXCEPTION_DEBUG_EVENT:
{
switch (DBEvent.u.Exception.ExceptionRecord.ExceptionCode)
{
case EXCEPTION_SINGLE_STEP:
{
printf("%d\n", DBEvent.dwThreadId);
///MessageBoxA(0, "yesssssssss", "", 0);
}break;
case EXCEPTION_BREAKPOINT:
{
//MessageBoxA(0, "Found break point", "", …Run Code Online (Sandbox Code Playgroud) 如何将调试器附加到正在运行的erlang进程(rabbitmq)?我有正在运行的相同兔子版本的源代码.我想在源代码行上设置断点,并将调试器附加到正在运行的Rabbit实例.我不确定erlang是否需要调试符号async_dirty.
在一个完美的世界里,我希望能够在本地和远程做到这一点.
我是一个二郎初学者,我甚至不会说我是二郎的新手.我正在尝试学习它,因为我调试了一些rabbitmq插件.
我有一个python脚本,它接受输入参数并运行以响应终端中的以下命令(bash,Mac OSX).
python test.py arg1 arg2
Run Code Online (Sandbox Code Playgroud)
有没有调试模式运行相同的脚本,而无需编辑代码,包括一个很好的方式import pdb和pdb.set_trace()?
例如,如果我正在使用iPython控制台,我可以通过以下方式执行此操作:
%run -d test.py arg1 arg2
Run Code Online (Sandbox Code Playgroud)
这很简单,不是吗?为了在终端中实现同样的目的,我认为以下可能有效,但它没有:
python -c "import pdb; import sys; sys.argv = ['test.py', arg1, arg2];pdb.run('test.py')"
Run Code Online (Sandbox Code Playgroud)
代码使用参数运行,但不是在pdb调试模式下运行.是不是很难做到,我应该坚持使用pdb.set_trace或者iPython的%run -d?
我需要调试我的应用程序,并调试runnable内的代码,并在应用程序中执行一些操作然后再次调试代码,但我不能这样做,我不能做任何操作,调试点立即激活.
代码:
public class UpdateHandler {
public static Handler getHandler() {
if (sHandler == null) {
HandlerThread looper = new HandlerThread("update Handler");
looper.start();
sHandler = new Handler(looper.getLooper());
}
return sHandler;
}
}
UpdateHandler.getHandler().post(new Runnable() {
@Override
public void run() {
update();
}
});
public void update() {
// i put the debug point here .
}
Run Code Online (Sandbox Code Playgroud) 我刚刚得到一台装有Windows 8的新计算机,并在其上安装了Visual Studio 2013,现在我遇到了调试器快捷方式的问题 - 我在调试模式下运行应用程序,它在第一个断点处中断,但是当我尝试进一步逐行时,F10不能从键盘 - 只有VS调试菜单.我错过了什么?
PS问题是功能键.需要打开才能使用F键
当我点击SVG元素时,我在Chrome上收到错误,但在Firefox上收不到错误.
如果我使用Chrome的调试器,它会在bubble_compiled.js(Google的文件)中出现'Uncaught TypeError:undefined is not function'.
我知道潜在的问题源于'.className返回一个SVGAnimatedString(没有indexOf方法),正确的做法是使用.classNam e.baseVal但是这个错误不再是我的代码的一部分而是它的一部分谷歌的代码.
这是一个基本的例子:
<!DOCTYPE html>
<html>
<head>
<script>
function err() { alert('err'); }
</script>
</head>
<body>
<svg style="width:200px;height:200px; background-color: #00B7FF" onerror="err()"></svg>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
不幸的是,这意味着我无法调试涉及与svg元素交互的代码,因为Chrome调试器在mousedown上打破了此错误.
有趣的是,直到两天前(5月14日)我才发现这个问题并且我已经开发了这样的代码好几年了.我在Mac上使用Chrome 42,我尝试使用Chrome 40.0.2214.91(64位),但现在我得到了同样的错误(是的,我禁用Chrome自动更新:-)我没有看到问题在Firefox(带或不带调试器).
另一个有趣的观察是,如果我从文件而不是(file://)加载上述html而不是通过服务器,则不会发生错误.
我试图通过向SVGAnimatedString(或其原型)添加indexOf()来规避它,但这是本机代码,它不起作用.
将onmousedown添加到svg元素没有帮助,因为异常发生在我的函数被调用之前.
我现在需要的是告诉Chrome不要破坏此错误的方法.