GreenGandalf brought your issues to my attention and asked if I might be able to help, so here are some thoughts I had based on your descriptions.
The majority of the problems may be associated with missing dependencies. This can especially be true with external plugins added into the mix. Some plugins have dependencies not related to the 'regular' dependencies DBPro has. I can't say if this will solve some/most of the issues for you or not, but here is the list of files I need to include with the base set of DLL's and plugins that I use and appear to be commonly needed for many other DBPro apps/games (the x_input files are needed for a control plugin I use, they may not be needed without it), the DLL's are included in any install folder along with the DBPro compiled EXE:
- Direct X cab's -> April 2007 (x_input_x64 + x_input_x86), August 2007 (d3dx9_35_x64 + d3dx9_45_x86), and October 2006 (d3dx9_31_x64 + d3dx9_31_x86)
And of course, the installer files to go along with them than run as part of the installation script:
-dsetup.dll, dsetup32.dll, dxdllreg_x86.dll, dxsetup.exe, dxupdate.cab
- mfc71.dll
- msvcp71.dll
- msvcr71.dll
- msvcr100.dll
Check for memory use. Several of the problems you report can apply on systems with a narrow memory window. Crashes, missing/loading file errors, and freezes may occur on systems that lack enough consecutive available memory to run the DBPro game. Doesn't matter if they have 4 GB or 8 GB or more installed, what matters is how much is consecutively available to the game when the user launches it and whether or not it remains available during runtime. Outside factors can impact this significantly and block certain addresses (or even hard drive operations) while the game is running (resulting in somewhat random crash/error/freeze points). For these issues, the user may need to include the game in an exception list for any security program(s) they may have running. Valve maintains a list of known 'Steam' interfering security programs here for reference: https://support.steampowered.com/kb_article.php?ref=9828-SFLZ-9289
Check for how much memory the game is using. If it's approaching around 1 GB, then you're near the limit of what can be accessed with 'normal' settings, regardless of how much memory the user may have installed and regardless of how much may be consecutively available. Using memory at/near those levels can result in a higher frequency of crashes/errors/freezing, especially on systems with compromised memory conditions (due to security programs or other running background tasks). If you can't or don't want to bring the memory use down, you may want to consider making your game 'LAA' (which stands for Large Address Aware). You'll find many recent games utilize this option in their binary to allow them more memory flexibility. If this memory level issue applies to your game, you can load the EXE in CFF Explorer > File Header > Characteristics > then check the box next to 'App can handle > 2gb address space' > click OK, then save the EXE. Launch and test for changes.
A few issues may be out of the developer's control, such as display related factors. They won't really relate to your game and are more system related problems. Some users may be running their desktop in 16-bit rather than 32-bit, which can cause launch errors. Some may have certain display resolution limitations and/or driver issues. Updating drivers and making sure proper driver/settings are applied to the monitor being used (rather than some kind of 'generic' driver) may help those users. As noted by others, it’s generally best to launch a DBPro game/app in the most compatible display setting using the Windowed full screen mode.
If problems persist, I'd be happy to chat with you directly, you can contact me via e-mail (starwraith.com > contact).