-
What we have is a General Library as a ActiveX DLL. We have been enhancing the existing functions and re-compiling the DLL with the component as Binary Compatibility. Everything has been fine. Just this week I ADDED a new function and re-compiled the DLL to get the error : Object variable or With block variable not set (Error 91) whenever I run my client side executable.
But when I unregister and then re-register this DLL on the client PC the error message is removed.
Any clues to resolve this registering, what have I done wrong? Cause with hundreds of PCs the thought of having to re-register them all is not a option.
Thanks in advance,
Paul
-
Binary Compatible
It is your old DLL is set to Binary Compatible? If no, then you need to recompile the EXE with the new DLL that having Binary compatible.
-
Why is re-registering not an option?
Surely you should always register an Activex dll.
How are you distributing your 'upgrade'?
I suggest...
create an exe which unregisters and deletes the old DLL and then copies and registers the new in the required location.
put this exe, your new dll and regsvr32.exe into a zip file and convert to a 'self-extracting zip file for software' instalation (trial versions available from winzip)
invoke your "intall exe" from within the self extractor
-
The previous DLL is set to Binary Compatibilty and I understand that ADDING a new function to a DLL doesn't break this compatilbity.
We develop all our software(DLL and .exe's) in our development suite, the client PCs are in the rest of the company, who use these programs.
When we re-compile our DLL we overwrite the existing DLL and this is on our LAN. Our client PC's are pointing to this location of the DLL on our LAN. The client PCs and our .exe programs are all centralised on our LAN.
We have hundreds of client PCs and unregistering then registering isn't what we want to do. I have been told that re-compiling our DLL without breaking Binary Compatibility we don't have to re-register the DLL on our client PCs.
Any clues to whats causing the client PCs to fail running the exe compiled under the OLD DLL.
Thanks in advance,
Paul