You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows容器中Delphi远程调试问题(rmtdbg端口配置)

Windows容器内Delphi远程调试实操方案

1. 限制rmtdbg端口范围至50100-50199

rmtdbg支持通过命令行参数指定端口范围,启动时添加对应参数即可:

  • 启动命令:rmtdbg270.exe -range 50100-50199
  • 若需持久化配置,可创建批处理文件(如start_rmtdbg.bat)写入上述命令,设置容器启动时自动执行该批处理
  • 同时要确保容器内Windows防火墙开放目标端口段,执行以下命令:
    netsh advfirewall firewall add rule name="RMTDBG Ports" dir=in action=allow protocol=TCP localport=50100-50199
    

2. Windows Docker中为Windows Server 2019镜像配置端口转发

运行容器时静态映射端口段

在docker run命令中使用-p参数映射整个端口段,示例命令:

docker run -d -p 50100-50199:50100-50199 --name delphi-debug-container mcr.microsoft.com/windows/servercore:ltsc2019
  • 该命令将主机的50100-50199端口直接映射到容器内对应端口
  • 若需单独映射rmtdbg固定主端口+随机端口段,可拆分参数:-p 50100:50100 -p 50101-50199:50101-50199

验证端口映射

执行docker port delphi-debug-container命令,查看已配置的端口映射关系,确认端口段是否正确生效。

3. Delphi 10.4/11的替代远程调试工具

官方更新版远程调试器

Delphi 10.4和11自带的远程调试工具已升级(对应rmtdbg280.exe或更高版本),支持更灵活的端口配置,直接替换旧版rmtdbg270.exe即可:

  • 从本地Delphi安装目录(如C:\Program Files (x86)\Embarcadero\Studio\21.0\bin)复制新版工具到容器内
  • 启动时同样通过-range参数指定端口范围

WinDbg远程调试

通过WinDbg实现跨容器调试:

  1. 在容器内启动待调试应用时添加调试参数:your_app.exe -debug
  2. 在主机上启动WinDbg,通过File > Attach to Process选择容器内的目标进程(需保证主机与容器网络连通)
  3. 在Delphi IDE中设置外部调试器路径指向WinDbg,实现联动调试

Docker容器内直接调试

利用Docker的exec命令进入容器,直接在容器内运行调试器:

docker exec -it delphi-debug-container cmd

在容器命令行中启动Delphi调试器,附加到目标进程完成调试,适合简单场景。


内容的提问来源于stack exchange,提问作者Quelltextknecht

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 12:36:18