Skip to main content
Version: 20 R7 BETA

Create deployment license

Create deployment license ( mergedApp ; buildLicense {; oemLicense} ) -> Function result

ParameterTypeDescription
mergedApp4D.FolderFolder containing the merged application
buildLicense4D.FileLicense required to generate the embedded license
oemLicense4D.File4D OEM XML Key license if server license
Function resultObjectStatus

This command is not thread-safe, it cannot be used in preemptive code.

Description

The Create deployment license command creates an embedded license file in the Licenses folder of the mergedApp built application. If the Licenses folder does not exist the mergedApp, it is created by the command.

In mergedApp, pass a 4D.Folder object containing a reference to the folder containing the built application in which you want to embed a license.

In license, pass a 4D.File object containing a reference to the license file used to generate the embedded license.

If the build requires a specific OEM license (4D OEM XML Keys) and if no such license is already installed in the Licenses folder of the building machine, you need to pass it using the oemLicense parameter. This parameter is useful if you dedicate a machine to build your applications.

The command returns a status object containing the following properties:

PropertyTypeDescription
successBooleanTrue if the license file has been generated
file4D.FileThe generated license file
statusTextTextDescription of the error if any
errorsCollectionCollection of error objects
[].messageTextError message
[].errCodeNumberError number

Notes:

  • The generated license must be used only with the application referenced by mergedApp.
  • It is necessary to regenerate the license each time the application is rebuilt.

Example

 var $status : Object
 var $application : 4D.File
 var $license : 4D.File
 $license:=Folder(fk licenses folder).file("4UUD200-xxx.license4D")
 $application:=Folder(fk desktop folder).folder("myApp.app")
 $status:=Create deployment license($application;$license)

See also

Blog post - Finalize an application with 4D commands