Edwin Knoppert wrote:But if you add a functionality via your IDE it's run-and-go situation for nearly all your users.
Nearly all of our users use MessageRequester() instead of MessageBox_() and don't have any problem with it.
Edwin Knoppert wrote:Regarding the messagebox..., is it to your knowledge actually a theming issue?
Its a dll dependency issue. commctl v5 (no theming) seems to be loaded implicitly by user32, but commctl v6 (theming) is not. This is why when you call MessageBox_() (in user32) the required classes for its GUI are not registered. If you want to blame anyone, you should blame MS for messing this up without even documenting it. Anyway, using a single function from commctl, like InitCommonControls_() solves all the problems.
Edwin Knoppert wrote:In the PureBasic exe the commctrls are loaded but not via the exe directly but via some MS dll (and rather late).
This may have been something to your rescue for many users.
It is loaded when a PB command needs it. If you don't use PB GUI commands, there is no need to load it. Why should the PB compiler load a dll into an executable when it has no use for it ? Just because somebody else might need it but might forget to do so is not a good reason for that.
Anyway, PB is not the only language where this comes up, so you can hardly call it a PB issue.