Note: This is the migration API reference for FAKE 5. The new (modularized) API documentation can be found here. If the API is already migrated you can check here if exists in a module. More information regarding the migration can be found here

OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

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

TypeDescription
Vb6BuildJob
Vb6BuildParams
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Parameters for running a VB6 build

Vb6BuildResult
Vb6Project
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Represents a VB6 project

Vb6Reference
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Represents a VB6 Reference

Vb6ReferenceVersion
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Represents the version of a VB6 reference References from VB6 projects only care about Major.Minor versions

Vb6Version
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Represents the version of a VB6 project ToString () will return a Maj.Min.Rev.Patch version string

Functions and values

Function or valueDescription
BuildAndEmbedInteropManifests(...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
Attributes:
[<Obsolete("This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.")>]
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

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:

  1. Determine which of the possibleAssemnblies are referenced by any of the provided .vbp files
  2. Temporarily register any referenced assemblies using RegAsm /codebase /tlb
  3. Run VB6 command line make on all provided .vbp projects
  4. Unregister all registered assemblies
  5. Generate and embed Side-By-Side interop appplication manifests in all generated VB6 executables
  6. Generate and embed Side-By-Side interop assembly manifest in all referenced assemblies
createReferenceLine(lineParts)
Signature: lineParts:string [] -> string
defaultVb6BuildParams
Signature: Vb6BuildParams
getReferenceLineGuid(lineParts)
Signature: lineParts:string [] -> Guid
getReferenceLineParts(line)
Signature: line:string -> string []
getValueBetween startChar endChar line
Signature: startChar:char -> endChar:char -> line:string -> string
GetVb6ApplicationProjDetails(projects)
Signature: projects:seq<string> -> seq<Vb6Project>
Attributes:
[<Obsolete("This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.")>]
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

Returns application details for provided .vbp files.

Information returned

  • Name of created binary file
  • Version as saved in .vbpfile
  • GUIDs of all referenced libraries and components

Usage

This is used for creating Side-By-Side interop manifests.

readProjectFileLines(p)
Signature: p:string -> string []

Helper methods for working with Vb6 project files

referenceLineFilter(l)
Signature: l:string -> bool
RegisterDependenciesForDevelopment(...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
Attributes:
[<Obsolete("This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.")>]
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

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
toChars(s)
Signature: s:string -> seq<char>
UnRegisterDependenciesForDevelopment(...)
Signature: getConfig:(Vb6BuildParams -> Vb6BuildParams) -> vb6Projects:seq<string> -> possibleAssemblies:seq<string> -> unit
Attributes:
[<Obsolete("This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.")>]
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

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
Attributes:
[<Obsolete("This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.")>]
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

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:

  1. In all VB6 projects provided: Get all references that intersects with the provided assemblies arg
  2. Check if there is a version difference
  3. 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
Attributes:
[<Obsolete("This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.")>]
OBSOLETE

This API is obsolete. There is no alternative in FAKE 5 yet. You can help by porting this module.

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
writeProjectFileLines p l
Signature: p:string -> l:seq<string> -> unit