Hi, I'm needing some "how to" logical help We are writing software using : Lisp , VBA , Dll , Ocx files LISP call VBA , VBA call DLL and/or OCX files , so the on VBA modules This files are located inside 3 directories (LISP , VBA , DLLOCX) During software writing and testing we need to select the the rights lines in the VBA reference tab. This references are using absolute path names During the installation process on the customer PC , the customer can change the directories locations, for exemple each of them on an different drive letter The problems are : dynamicly recreate the links (actually we use Regsvr32 the first time to this) permit to change one dll to an new version of them (with the same name) with an copy process (actually , doing this does an vba compilation error) do this on OEM developpement (no vbaide acces) thanks Luc -- Cesi2d Luc Vallot Chemin du Bassard 38121 Chonas l ' amballan France Tel: 04 74 58 95 68
If a DLL or OCX changes and the Class ID in the registry also changes then the only solution is to send out a new version of your VBA/VB compiled for that version. Otherwise the user must do this manually in the IDE by unselecting the old reference and re-selecting the new reference. The path that the DLL or OCX is installed in does not matter. If the new DLL or OCX has the same Class ID but is installed in a different location it will be automatically located by its registry entry. If the Class ID changes then it is like an entirely new DLL/OCX. You could try the "Microsoft Visual Basic 6 Extensibility" reference and create a macro that would update your other macro(s). http://msdn.microsoft.com/library/d...extendingvisualbasicenvironmentwithaddins.asp http://msdn.microsoft.com/library/d...bjobjectsthatallowyoutomanipulateprojects.asp
ok, I now understand my problem thanks for your help Luc the only solution is to send out a new version of your VBA/VB compiled for that version. Otherwise the user must do this manually in the IDE by unselecting the old reference and re-selecting the new reference. DLL or OCX has the same Class ID but is installed in a different location it will be automatically located by its registry entry. If the Class ID changes then it is like an entirely new DLL/OCX. create a macro that would update your other macro(s). http://msdn.microsoft.com/library/d...bjobjectsthatallowyoutomanipulateprojects.asp