Posted on 2009-05-09
Hi, i have an application that use a DLL, and it is working for a long time.
DLL file resides in the same folder as EXE file.
Application has ShareMem (in a future will be FastShareMem, but "one step at a time") as its first uses unit.
The application shares data through BDE Alias thats is located in the server.
All works fine.
I have multiple users accessing the same application in different pcs, each of them has a link for executing the application with this data:
- it points to the exe file in the server
- working folder is a local folder, in which resides the copy of the DLL
So, when a user starts the application in his workstation, the exe is executed locally, and inmediatelly loads the DLL.
This works great as if i need to update the application, i am only need to change the exe file in the server.
Here is the problem & question:
How can i update the DLL file in each workstation, dinamically (by now, i am doing this by hand!!!)?
I think on this solution:
- put the new DLL version in data folder in server (this folder is acceded from all application running in all workstations).
- if date of local DLL file is older that server DLL file, i replace the local file with that on the server.
This seems to be a ratherly good solution, but, as my application loads the DLL file inmediatelly, i cannot do this.
I think this has to be related to load/unload of the dll at entry point or something like this, but i has no experience at all in here. My DLL has only a few functions, and my application uses an interface unit that declares all function and define them as externals.
Thanks to you all!!!