lua-debug icon indicating copy to clipboard operation
lua-debug copied to clipboard

没法调试

Open ianfor opened this issue 2 years ago • 10 comments

请问我自从升级vscode之后就不能调试. vscode版本:1.68.1 lua-debug版本:1.58.2

自己的c++程序不能launch,但是能调试lua代码。 而且我设置了internalConsle之后程序不能启动,设置成另外一个模式可以在vscode自带的temminal启动,但是不能连接到调试器,关闭调试器的时候显示timeout。 (ps:内网程序没法截图)

ianfor avatar Jun 17 '22 07:06 ianfor

你的launch.json的配置是?

actboy168 avatar Jun 17 '22 08:06 actboy168

{ “name”: "launh process", "type": "lua", "stopOnEntry":false, "runtimeExecutable": "${workspaceFolder}/app.exe", "cwd":"${workspaceFolder}/", "runtimeArgs":["-p", "--listen=8088"], "consoleCoding": "utf8" }

ianfor avatar Jun 17 '22 10:06 ianfor

好像是lua-debug.exe不能启动,因为我在launch.lua开始的地方写个日志文件日志文件并没有生成,但是我用调试lua文件的时候是好的不知道什么原因

ianfor avatar Jun 17 '22 11:06 ianfor

我把这段注释掉就是进程能拉起来但是调试器不能调试,打开这段代码进程(自己的程序)就直接退出了

if args.inject == "hook" then
        local inject = require 'inject'
        inject.injectdll(process
            , (WORKDIR / "bin" / "launcher.x86.dll"):string()
            , (WORKDIR / "bin" / "launcher.x64.dll"):string()
            , "launch"
        )
    end

ianfor avatar Jun 20 '22 08:06 ianfor

你回滚到1.57可以调试吗

actboy168 avatar Jun 21 '22 07:06 actboy168

不行 1.12.1可以

ianfor avatar Jun 27 '22 03:06 ianfor

版本差太多,无法验证。你可以自己调试一下,或者做一个可以复现的例子。

actboy168 avatar Jun 27 '22 07:06 actboy168

我重新编译了调试器 然后发现是shellcode那个地方导致的 注释了就能拉起进程。 但是这个东西又不知道调试或打日志,想问下这种问题有什么手段定位么

ianfor avatar Jul 08 '22 03:07 ianfor

你需要一个支持asm的调试器,比如windbg。当然vs也可以。

actboy168 avatar Jul 08 '22 03:07 actboy168

   0xFF, 0xD0,                                                             // call rax
   0x48, 0xB8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,             // mov  rax,0  // EntryFunc
   0x48, 0x8B, 0x00,                                                       // mov  rax,[rax]
   0xFF, 0xD0,                                                             // call rax  这句会挂掉  rax是0
   0x48, 0x83, 0xC4, 0x28,                                                 // add rsp, 0x28
   0x41, 0x5F,                                                             // pop r15
   0x41, 0x5E,                                                             // pop r14
   0x41, 0x5D,                                                             // pop r13
   0x41, 0x5C,                                                             // pop r12
   0x41, 0x5B,                                                             // pop r11        

ianfor avatar Jul 08 '22 06:07 ianfor