#1
|
|||
|
|||
VB6 DLL project: binary compatibility and missing DLL
E.g. I have a "Make VB6" step. Field "Filename" points to VBP-file of the DLL project. This VBP has Component Compatibility set to "Binary", but the corresponding binary (DLL-file) is missing. Is there a chance to automatically rebuild DLL in such situation? Currently I must explicitly set "No compatibility" on the "Compatibility" tab. And I'm thinking of setting "Don't change" there, but (!) with the ability to automatically switch to "No compatibility" and build the DLL - instead of just falling with error.
|
#2
|
|||
|
|||
No, but one option would be to use two Make VB6 steps (the first set to not change compatibility and continue on failure, and the second to set to no compatibility and build only if %LASTSTEP_STATUS% is not equal to 0). You could encapsulate these in a subroutine if needed multiple times.
|
#3
|
|||
|
|||
Thanx - that's a workaround!
|
#4
|
|||
|
|||
Well, it's not as simple as it seemed to me first...
Well, it's not as simple as it seemed to me first.
Imagine I got a VBP-project (Standard EXE) with references to 10 self-made COM-components. The source code of these components is often updated by the developers, so to make building of the EXE-project more intelligent, I followed your advice (given in another forum thread) and created group of projects (VBG), with totally 11 projects inside (10 of them - ActiveX DLLs or controls, and 1 - main EXE-project set as "start-up"). Now imagine, that only one of the ten components failed to be built (because of missing binary, for example). As far as I understand, this will rezult in the following (if using your workaround suggested above): ALL components being built at the next step will be set to "No compatibility" before building, although it would be enough to do that only for one component (for the one being the source of the problem). I think it's not very good. Of course, if the build failure occurs at the 10th (last) component (when 9 are already built successfully), then the next step will change compatibility type only for the "problematic" component. But if failure occurs at component number N, then (10 - N) other components will be set (at the next step) to "No compatibility" before building! Can you give any recommendations? |
#5
|
|||
|
|||
1) Don't break compability
2) Always build with no compatibility 3) http://www.yukondude.com/html/tame_vb_with_idl.php |
#6
|
|||
|
|||
Quote:
Quote:
And, besides, OCX-references are not properly fixed in FRM- and VBP-files, as I described in another thread (http://www.kinook.com/Forum/showthre...&threadid=1576). Quote:
|
|
|