I'm looking at controlling the situation where my app runs without the VPE dll (eg vpep3261.dll) being present (XE5, VCL). Currently, it appears that simply having "VPE_VCL" in the uses clause of a form which is not auto-created (even if there is no TVPEngine component in the form) is enough to trigger the exception "Could not load VPE-DLL!" on application start-up. This appears to fire even before Application.Initialize. Subsequently, if an attempt is made to use a VPE feature (ie generate a report), an AV occurs.
I would rather my app trapped the error and advised the user what to do in more detail, allowing the app to run but blocking access to reporting features dependent on VPE, for example.
Is there any way to deal with this problem cleanly? Is it possible, for example, for VPE to NOT raise an exception at all, but set an error state and safely avoid subsequent AVs if a report is accessed etc...
Thanks.