8
8
8bitjoey2014-07-05 21:31:27
firebird
8bitjoey, 2014-07-05 21:31:27

How to make embedded firebird program work with remote base?

There is one home bookkeeping program (Sanuel Family), which, judging by the fbclientd20.dll library and *.fdb files, uses the firebird DBMS embed version. Now it is installed on one computer with remote access, through which the work with the program is carried out.
It would be more convenient to have a client on each PC with one base. One of the simple solutions would be to place the base in a dropbox, however, users report problems and breakdowns of the base (they sin on the synchronization of the dropbox, I can not vouch for the correctness of the hypothesis).
The idea was to write a proxy library that transmits data over the network to a remote machine, where the data is fed to the local database and the response is sent back. And this, perhaps, would work, but it is not enough to use some kind of proxy dll auto-generator, not to mention the backend.
I feel that there is some other solution, simpler. Perhaps there are already such resources? Maybe you can replace the embed version of the library with a non-embed one and set the remote address of the base in conf?
The use of the program by only one client at the current time is guaranteed.

Answer the question

In order to leave comments, you need to log in

1 answer(s)
V
Vadim, 2014-09-11
@BorHblK

I won’t tell you a 100% solution (I’m not very familiar with programming), but I can tell you how FB works. To work over the network, on the computer where the database is stored, FireBirdServer must be installed, which will be ready to work over the network. On client machines, a set of libraries is sufficient, with the help of which the Client application will access the machine that stores the database over the network. Usually these are GDS32.dll (or fbclient.dll), msvcp71.dll and msvcr71.dll. How to make your application specifically access the Network Database is another question. The standard path for a network connection usually looks like this: IP/Port:<Path to database>. Let's say 192.168.0.5/3050:D:\Sanuel\DB\sanuel.fdb . 3050 default connection port.
Z.Y. The client and server libraries must be the same, otherwise nuances may come up. For example, there is a known case when the FB 2.5.2 client library crashed the FB 2.0.3 server

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question