New testing version!
I've posted a new, experimental DOF R3++ release. The big change in this version is repackaging to reduce the number of loose DLLs. I'm hoping that this will fix the dreaded "space in the filename" and "can't install on D:/E:" problems.
Where to find it:
http://mjrnet.org/pi...ll-updates.html
Look for the "Experimental 9/2018 edition" links.
What's new in this version:
This is the same as the current stable R3++ release, except that it repackages each of the DOF plugin and COM object assemblies into monolithic DLLs using a C# tool known as Fody/Costura. I'm pretty sure that all of the weird problems that many people have run into with path/folder names and drive letters trace to the C#/.Net DLL loading mechanism, which gets involved because DOF is structured into a bunch of separate C# and native DLL components that all have to get loaded for DOF to work. This is a common problem in the C# and .Net worlds, which is why the Fody/Costura tool is widely used. It's designed to fix these sorts of deployment headaches by turning collections of components (like DOF) into monolithic applications or DLLs that Windows can load more reliably.
I also tried to fix some build errors in the ProPinball bridge, so I'm hoping that will be un-broken now, but that's purely speculative since I don't have a ProPinball setup to test that with.
Who should try it:
First off, those who don't mind risking their stable setup on a testing version! I actually don't think it's all that risky, since the only thing that's changed is the DLL repackaging described above, and that's all done using a well-known and widely used C# tool (Fody/Costura) that appears to just work. I've deployed it on two of my machines and everything has been perfectly smooth. But even so, the "don't fix it if it ain't broken" rule is always worth considering.
With that in mind:
(1) If you've run into any path/drive problems with past DOF versions, it would be great if you could give this a try and see if it fixes them. You probably worked around those problems by changing the path name or drive letter, so the thing that would be really helpful here would be if you could tempt fate by going back to the OLD drive letter or path name that gave you problems in past versions - those "E:\Direct Output" type folder names with spaces or non-C: drive letters.
The space/D:/E: problems were definitely not universal - they didn't affect any of my machines, for example - so this will be a much more conclusive test if you personally experienced one of the path name problems in the past. If you've never experienced the problem, your machine might simply never have had it in the first place. The real test will be if it works on a few machines that were known to have the space/D:/E: problems earlier.
(2) If you've tried to use the ProPinball bridge in DOF R3++ and found that it was broken, it would be helpful if you could try this one and see if it's fixed now.
(3) PinballY 64-bit users. The next PBY release will make DOF work in the 64-bit version. That wasn't working before because DOF's COM object only gets registered in 32-bit mode, so a 64-bit program has to do some extra work to load it, but that extra work depends on the COM object exposing a COM type library, which it didn't do before. This version adds that to enable 64-bit callers.
Fewer files!
You might notice that some of the loose DLL files formerly included in the DOF folder are missing. That's intentional, and highly desirable. Those are now embedded in each of the "main" DLLs as needed, rather than being installed as separate files.
Edited by mjr, 05 September 2018 - 05:02 AM.