I am working in a delphi IDE expert , now to avoid dependencies problems, i was thinking in rebuild this expert as a dll expert as was suggested in one of these [answers](https://stackoverflow.com/questions/6053721/third-party-dependencies-in-a-delphi-expert), now my expert (compiled as bpl) access the `Screen` and `Application` global variables (instances of the Delphi IDE), so i was wondering if i compile my expert as a dll i can still accesing these variables and also i want to know `which are the main differences between a bpl delphi expert and a dll delphi expert?`