MEI/CPI BNR Interface

Support for the Milan Intelligent interface, sold by Money Controls as the Paylink USB unit and for the earlier PCI card version.

Moderators: aardvark, davebush, Admin

Post Reply
Nathan
Posts: 41
Joined: Tue Oct 30, 2018 4:12 pm

MEI/CPI BNR Interface

Post by Nathan »

Hi,

I’m trying to use an MEI/CPI BNR with Paylink, and although I’ve downloaded the Paylink SDK, I’m not clear what to do about the DLL entry in Standard.cfg

Nathan
davebush
Posts: 492
Joined: Fri Oct 22, 2004 12:20 pm

Re: MEI/CPI BNR Interface

Post by davebush »

Hi Nathan,

Assuming you’re working with Windows, the entry in Standard.cfg is:

Code: Select all

Protocol MEIBNR from DLL
This tells Paylink.exe to look for a special interface dll called MEIBNR.dll, which will be part of the Paylink distribution.

If you look in the top level Paylink installation folder you will see a number of files with names like MEIBNR.dll.2.0.2 and MEIBNR.dll.2.1.0. These are alternatives for this, and you need to find out the version of the BNR interface DLLs that you have got from CPI and rename the matching MEIBNR.dll by removing the numbers after the dll part.

This means that Paylink will now load that internal interface DLL which will then in turn link to the matching BNR interface DLLs. The version number has to match because the BNR control blocks change from release to release and must match the compiled MEIBNR.dll code.

Some points about this:
  1. The MEIBNR.dll and all the BNR dlls all have to be on the search path, or in the same folder as Paylink.exe
  2. The BNR dlls have to be 32 bit versions. Even if your application is 64 bit, the driver program is 32 bit, and that’s what actually runs the interface dlls.
Regards

Dave
Aardvark software developer. Please put all communication on the problem through the board for the benefit of others.
Nathan
Posts: 41
Joined: Tue Oct 30, 2018 4:12 pm

Re: MEI/CPI BNR Interface

Post by Nathan »

Hi Dave,

I did what you suggested, but I am still having a problems. When Paylink runs I now get the error message
16:52:04.394 PC: Opening Paylink DLL Interface Device
16:52:04.396 DLL: Load of 'H:\Aardvark\Milan\PC Stuff\Drivers\MEIBNR.dll' failed, are associated DLLs present?
Can you tell what’s wrong?

Nathan
davebush
Posts: 492
Joined: Fri Oct 22, 2004 12:20 pm

Re: MEI/CPI BNR Interface

Post by davebush »

Hi Nathan,

The message tells us that Paylink has found the MEIBNR.dll, but when it asks Windows to load it, the windows loader can’t satisfy all the references. (If the dll itself isn’t found you get a different error.)

Unfortunately, after the dll load attempt fails, there’s no additional information provided to the program as to what the exact problem is, so we’ve written a little test program which you can download from here

This program is statically linked with the BNR interface dlls, so if you run it from the same location and in the same way as Paylink.exe, you should get a meaningful error message from the Windows loader, e.g.

The code execution cannot proceed because BNRCTLW32.DLL was not found. Reinstalling the program may fix this problem.

If the interface dlls are found without a problem, the program just exits immediately. (You might see the screen blink.)

Regards

Dave
Aardvark software developer. Please put all communication on the problem through the board for the benefit of others.
Nathan
Posts: 41
Joined: Tue Oct 30, 2018 4:12 pm

Re: MEI/CPI BNR Interface

Post by Nathan »

Hi Dave,

OK, thanks that sorted it.

Nathan
Post Reply