Having problems with the vb6 compiler action. It blows up with the following message:
Checking reference : *\G{3F4DACA7-160D-11D2-A8E9-00104B365C9F}#5.5#0#C:\WINNT\system32\VBSCRIPT.DLL\3#Microsoft VBScript Regular Expressions 5.5
Referenced TypeLib : C:\WINNT\system32\VBSCRIPT.DLL\3 - does not exist!
Attempting to find typelib in registry..
Error Fixing up References : Unable to resolve reference
Error Running Generating Temp VBP File
My first thought was the reference in the vbp was incorrect - pointing to a file named 3 located in a directory named VBSCRIPT.DLL under C:\WINNT\system32. However, a quick search on various forums suggests that this reference is a way of referring to the third interface exposed by the type library in VbScript.dll.
I can confirm that there is a typelib entry in the registry (on the maching running the fb project) for {3F4DACA7-160D-11D2-A8E9-00104B365C9F} and it uses the same strange way of referencing the physical type library file.
Is this a known issue with Fb? Is there a solution / fix?
Thanks
Christian
Hi Christian
This is a bug in the the FinalBuilder VB6 action, I was able to reproduce the problem here. I have just checked in a fix for this and we will have a test build available later today or tomorrow at the latest with the fix included (we’ll post a link here when it’s available).
Note that the fix I check in detects when a non default type library is referenced in a project. In this case the reference check is skipped, as the TLBINF32.DLL we use to inspect the typlibs and compare to the references does not provide a way to load anything other than the first (default) typelib from a dll. This should not be an issue as the Fixing of references is more important for references to your own dll’s which change more often than the system files you reference.
Here’s the new build:
https://www.finalbuilder.com/downloads/finalbuilder/420/FB420_293.exe
.t8
Thanks guys.
So just to confirm, Fb still fixes up vbp references when I break binary compatibility in one of my own custom executables referenced by my vbp?
Christian
I’ve installed the patch and can confirm that it has fixed the problem. However I have noticed, more by chance, some strange log entries for the vb6 compile. For example:
Checking reference : \G{C642586A-B258-46D9-9FF3-15EC1D631A03}#1.0#0#ecicISampleTplUC.tlb#UC sample objects template interfaces
Referenced TypeLib :
D:\VBPROJECTS\Mainline\Build\ecicUCobjTemplate\blt.CUlpTelpmaSIcice- does not exist!
*
Attempting to find typelib in registry…
Resolved typelib entry as : D:\VBProjects\Mainline\Build\ecicUCobjTemplate\ecicISampleTplUC.tlb
Resolved to : *\G{C642586A-B258-46D9-9FF3-15EC1D631A03}#1.0#0#ecicISampleTplUC.tlb#UC sample objects template interfaces
Notice the reference I’ve highlighted.
Not sure whether you’ve just introduced this problem or whether its always been there and I’ve only just noticed it.
C
I may have run across another wafer thin issue related to fixing up references.
As I said early on today, the patch release fixes the problems with referencing VbScript.dll, at least it does on the machine that I originally discovered the problem. However, Fb is falling over this same file when running the Fb project on a Windows 2003 machine. Again I have confirmed that the correct registry entries are on the build machine for the referenced type library.
The problem I believe relates to the vbp which is using WINNT in the path to reference the file whereas on a Windows 2003 machine the windows directory is WINDOWS. Now this usually isn’t a problem for all other files located in %WinDir% - Fb seamlessly fixes the vbp replacing WINNT with WINDOWS when running the build on the Windows 2003 machine and replacing WINDOWS with WINNT when the build is run on Windows 2000 machine.
This is a problem for me as we are running a mixed environment where some developer machines are Windows 2000, some XP and the build machine is Windows 2003. Everytime a developer on a Windows 2000 machine does any updates to the vb6 project, the vbp ends up storing WINNT in the references.
Sorry to be a pain, but can you fix it so that it doesn’t matter whether a file exists in the WINDOWS or the WINNT directory?
Thanks
Christian
****
D:\VBPROJECTS\Mainline\Build\ecicUCobjTemplate\blt.CUlpTelpmaSIcice- does not exist!
****
I may have run across another wafer thin issue related to fixing up references.
I think this is a side effect of the bugfix from yesterday. It should resolve the correct path, however the string with the path to the file was left reversed in some cases (I reversed the string to process the typelib number). Please try with todays build when it's available and let me know if that resolved it.
New test build is available here :
https://www.finalbuilder.com/downloads/finalbuilder/420/FB420_294.exe
Hi Vincent,
I’ve installed the new build on our Windows 2003 machine. Fb still has a poblem with resolving the VbScript.dll file on this machine. Here’s the error that is produced:
Checking reference : *\G{3F4DACA7-160D-11D2-A8E9-00104B365C9F}#5.5#0#C:\WINNT\system32\VBSCRIPT.DLL\3#Microsoft VBScript Regular Expressions 5.5
Referenced TypeLib : C:\WINNT\system32\VBSCRIPT.DLL - does not exist!
Attempting to find typelib in registry…
Error Fixing up References : Unable to resolve reference
Again the problem is the WINNT directory which does not exist on a Windows 2003 machine.
C
Referenced TypeLib : C:\WINNT\system32\VBSCRIPT.DLL - does not exist!
Attempting to find typelib in registry..
Error Fixing up References : Unable to resolve reference
Ok, found and fixed. It was finding the typelib entry in the registry, however the entry in the registry also had a \3 on the end of the filename, and I wasn’t expecting or dealing with that. I’ll have a build available in an hour or so.
Cool.
Hi Christian
Sorry I forgot to post the link to the new test build before leaving yesterday:
https://www.finalbuilder.com/downloads/finalbuilder/420/FB420_296.exe
Yup that’s fixed it.
Thanks again