Yeah - this is very weird - Stephen and I are staring at code, there is almost no possible way (AFAICS) for a null exception to occur, except that is does.
Connecting from the web page uses the Modbus code just like the adapter does - so at least it’s good that the Modbus connection / DLL works.
If you right-click on the ModbusAdapters.dll - what does it show for version under the details tab?