I am writing a plugin for the AIMP music player, which is itself closed source but has documentation for adding plugins. The interface is available in Delphi, hence I am figuring out how to use RAD Studio Delphi 10.3 Community Edition.
I have stumbled upon a situation that is either of these:
- Something is wrong with how I call the AIMP Methods or how I set up the parameters
- Something is wrong with the Method I am calling
I have set up the Run Parameters so that the AIMP Program is actually launched when I press "Run". I have also enabled Tools > Options > Debugger > Embarcadero Debuggers > Debug spawned processes
. However, the program did not stop at my breakpoint and there was a grey X
icon displayed in front of the breakpoint.
Turns out this was because I also had a version of the compiled dll in the AIMP Plugin directory so it was loading that old version and not my newly compiled one. But even when I remove the old version... how can I get it to actually call the new version? When I build my dll and paste it into AIMP's Plugin directory, it will be loaded and the settings screen reflects that. I can even show a Message Box when the settings are being modified by the user. But copying the dll over means I can't stop at breakpoints.
How can I make the debugger stop at my breakpoint so that I can step through the program, ideally being able to see the values of local variables?