delphi - 如何调试插件到闭源 exe?
问题描述
我正在为 AIMP 音乐播放器编写一个插件,它本身是封闭源代码,但有添加插件的文档。该界面在 Delphi 中可用,因此我正在研究如何使用 RAD Studio Delphi 10.3 社区版。
我偶然发现了以下任何一种情况:
- 我如何调用 AIMP 方法或如何设置参数有问题
- 我调用的方法有问题
我已经设置了运行参数,以便在我按下“运行”时实际启动 AIMP 程序。我也启用了Tools > Options > Debugger > Embarcadero Debuggers > Debug spawned processes
. 但是,程序并没有在我的断点处停止,并且断点X
前显示了一个灰色图标。
原来这是因为我在 AIMP 插件目录中也有一个已编译的 dll 版本,所以它加载的是旧版本,而不是我新编译的版本。但即使我删除了旧版本......我怎样才能让它真正调用新版本?当我构建我的 dll 并将其粘贴到 AIMP 的插件目录中时,它将被加载并且设置屏幕会反映这一点。当用户修改设置时,我什至可以显示一个消息框。但是复制 dll 意味着我不能在断点处停止。
如何使调试器在断点处停止,以便我可以单步执行程序,理想情况下能够查看局部变量的值?
解决方案
推荐阅读
- git - docker-compose SSL 证书问题:从 git repo 构建时的自签名证书
- python - 导入时如何使odoo计算关系字段自动计算?
- javascript - 如何按字母顺序对下拉菜单项进行排序?
- matlab - 如何使用 Matlab APP DESIGNER 在用户界面中同时显示两个单独的图像?
- r - 反转翻转的 x 轴
- pandas - 使用多索引按时间段对数据帧进行分组
- python - 向 Celery eta 任务发送 2 个参数
- javascript - 如何让多个提供者或状态仅可用于部分布局
- wpf - 按钮未占用全部空间
- pandas - 相同键行的平均值,不包括 pandas 中的某些列