For the replicable w/ source see
This has been happening for every version of Delphi I've ever owned... it still happens in Delphi 11.0 Enterprise. The only solution is to restart Delphi for every single change made to the component!
Why do I always get Access Violation every time I rebuild a component?
I've tried to uninstall / install after every build to the component...save .. open up a project that uses that component ... access violation ... solution Restart Delphi
I've tried to just clean.. build... component...save .. open up a project that uses that component ... access violation ... solution Restart Delphi
Why do I need to always restart Delphi (close delphi... then double click delphi to load it again) ... every time I rebuild a component??
Is there something that I can do to stop having to Restart Delphi to fix this issue?
Any ideas?
It's easy to replicate.
Note: I use right click to clean, right click to build, right click to install, right click to uninstall. I double left click to select either the Windows 32 bit or Windows 64 bit platforms in the view of the Project Group.
Build both Windows 32 and Windows 64 platforms and install the windows 32 bit version (Delphi won't let you install the 64 bit version) of this component: https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/PianoComponent_Install/PackageComponent_PianoKeyboard.dproj
save all and close the component project
open project https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/Athena.dproj
then open up https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/UAthenaVSTForm.fmx
You should see the piano component is there.
Now ... save all and close all.
Go back to the project and open https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/PianoComponent_Install/PackageComponent_PianoKeyboard.dproj
uninstall the component
now... make changes to line 249 by changing it from https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/PianoComponent_Install/UPianoKeyboard.pas#L249
0: Canvas.Fill.Color := TAlphaColorRec.White;
to
0: Canvas.Fill.Color := TAlphaColorRec.Orange;
after making the changes.. save all, then clean for both the windows 32 bit and windows 64 bit platforms... build both windows 32 bit and windows 64 bit platforms of the project and install this component again from https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/PianoComponent_Install/PackageComponent_PianoKeyboard.dproj
save all and close this project...
go back to the project and open https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/Athena.dproj
now open https://github.com/War3Evo/RMSVST3/blob/Delphi-11.0/FMX_AthenaVST3/UAthenaVSTForm.fmx
You'll get Access Violation every single time! (It's repeatable)
The only solution I found was to restart Delphi.
You'll get Access Violation and the form fmx will not show up, but you'll see the source code.
Proof above it's repeatable.