Vb6Helper
Enables building of Visual Basic 6 projects
Also includes a do-it-all function that will embed interop
side-by-side manifest to executables from Vb6 using
functions from the Side-by-side helper module
Nested types and modules
Type | Description |
Vb6BuildParams
|
Parameters for running a VB6 build
|
Vb6Project
|
Represents a VB6 project
|
Vb6Reference
|
Represents a VB6 Reference
|
Vb6ReferenceVersion
|
Represents the version of a VB6 reference
References from VB6 projects only care about Major.Minor versions
|
Vb6Version
|
Represents the version of a VB6 project
ToString () will return a Maj.Min.Rev.Patch version string
|
Functions and values
Function or value | Description |
BuildAndEmbedInteropManifests (...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
|
All-In-one build and manifest function for VB6 applications referencing .net libraries
Paramteters
getConfig - function to alter default VB6 build parameters
vb6Projects - Paths to all .vbp files to build
possibleAssemblies - Paths to assemblies that may be referenced by the VB6 projects
Process
This function will:
- Determine which of the
possibleAssemnblies are referenced by any of the provided .vbp files
- Temporarily register any referenced assemblies using
RegAsm /codebase /tlb
- Run VB6 command line make on all provided
.vbp projects
- Unregister all registered assemblies
- Generate and embed Side-By-Side interop appplication manifests in all generated VB6 executables
- Generate and embed Side-By-Side interop assembly manifest in all referenced assemblies
|
GetVb6ApplicationProjDetails projects
Signature: projects:seq<string> -> seq<Vb6Project>
|
Returns application details for provided .vbp files.
Information returned
- Name of created binary file
- Version as saved in
.vbp file
- GUIDs of all referenced libraries and components
Usage
This is used for creating Side-By-Side interop manifests.
|
RegisterDependenciesForDevelopment (...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
|
Determines which of the provided assemblies are referenced by the
provided VB6 projects, and registers them so the VB6 ide can
find them.
Paramteters
getConfig - function to alter default VB6 build parameters
vb6Projects - Paths to all .vbp files to build
possibleAssemblies - Paths to assemblies that may be referenced by the VB6 projects
|
UnRegisterDependenciesForDevelopment (...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
|
Determins which of the provided assemblies are referenced by the
provided VB6 projects, and un-registers them
Paramteters
getConfig - function to alter default VB6 build parameters
vb6Projects - Paths to all .vbp files to build
possibleAssemblies - Paths to assemblies that may be referenced by the VB6 projects
|
UpdateDependencyVersions (...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
|
Fixes dependency versions in VB6 project files
Paramteters
getConfig - function to alter default VB6 build parameters
vb6Projects - Paths to all .vbp to update references in
possibleAssemblies - Paths to assemblies that may be referenced by the VB6 projects
Running this task will:
- In all VB6 projects provided: Get all references that intersects with the provided assemblies arg
- Check if there is a version difference
- Update the VB6 project file to reflect the actual version used.
Note: Vb6 Reference versions are hex numbers not decimals like .net verions. This task handles
this difference automatically.
|
Vb6Make getConfig vb6Projects
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> unit
|
Executes a VB6 command line make on all provided VB6 projects
Builds will be executed in paralell
Parameters
getConfig - function to modify the build params record from default values
vb6Projects - Seq of paths to .vbp files to build
|