VB6 "Fix References" doesn't change VBP reference to its DLL

I'm evaluating FB7 for our company.  We've been using a product called VB-Build, which is no longer maintaned, for our VB6 code.  We're just using VS solutions for our C#/VB.Net code (occassionally forgetting to update version numbers), and batch files for code signing.

But now I'd like to have it done all in one place since the VB6 code is relying more and more on C# COM-Interrop DLLs.  Also, I'm starting dig the idea of a nightly automated build using FB Server.

I've got the basic compiling order straight, with SCM Gets, checkotus, and post-compilation code signing.

But for the life of me, I cannot get my VB6 EXEs to compile because they reference the VB6 DLLs by VBP files (since they are all developed using a VBG group file).  So, when that code is promoted via our SCM, it always referencs the VBPs.  FB7 doesn't appear to change these VBP references to the DLLs, even with "Fix Reference for ActiveX" checked.

Am I missing something?  How do I accomplish this?

Also, I noticed a small bug with the VB6 compile action.  The "Verbose Logging" checkbox does not save or load properly, and the checkmark is lost when FB is closed/re-openend.

Thanks,

-Mike

Searching around this forum, I see that someone had the same problem in Oct/Nov of 2010, with no resolution found. Like me, his previous build solution handled this just fine.

https://www.finalbuilder.com/forum.aspx?aft=10253#13865

This would seem like a bug in the "Fix Reference" feature. I really hope it can be squared away. I love what I'm seeing in FinalBuilder, but if it can't handle our VB6 stuff, then I really can't use it.

Failing a formal solution, can anyone tell me how to write an Actions that can:
1) look up CLSID info (I'll look up the CLSID of the DLL I just compiled and COM Registered via FB actions)
2) do a search/replace on a text file (Edit my EXE's VBP to find the offending references to the DLL .VBP, and replace them)

Hi Mike

It’s been a while since anyone here worked with VB6 (actually, I’m the only one here old enough to have done so!), so this might take a bit to get my head around the issues again! I do recall that sorting references with VB6 is a complex issue. The thread you referrred to, the customer never came back to us with any further information, so I have no idea if he resolved it or not. I just created some test projects to see if I could reproduce the problem, and I did find an issue whith project references and relative paths. I’m still trying to figure out what the exact problem is. I’ll post here when I have a solution.

BTW, the problem with the Verbose problem will be resolved, the developer who added it didn’t realise he was looking at vb.net doco on msdn… there is no verbose option in vb6. I have removed the option.

Hi Mike

Please try this build :

https://www.finalbuilder.com/downloads/finalbuilder/aex6/FB700_1380.exe

Note that when using project references, you should set the Compatibility Option to None.

Thank you Vincent, I’ll give that a try this morning. I had already worked around it with a few actions, but my project will be a lot cleaner without those custom actions.

By the way, this is a wonderful program that you (and your team) have created. I wish I had found it years ago. There is no doubt I’ll be purchasing the professional edition once the 30-day trial edition has expired.

While I’ve got your ear… I’ve been using the Surround SCM integration, and noticed that “Undo CheckOut” isn’t one of the available actions. I’ll dig out the command line options and use the “Surround SCM Generic” option. I suppose I don’t NEED to undo a checkout on build failure. I just figured that if a build fails, I would undo the checkouts of the binaries. I guess I’m just being a bit anal retentive on this one.

Vincent,

Your fix is working for me, thank you. Sorry to bother you with VB6… trust me, I wish it was behind me too.

-Mike

Hi Mike

Thanks for the feedback. The Surround Undo Checkout action is on the todo list… I’m not sure why it was never done, we use Surround here ourselves (using mercuiral for new projects though).