Finalizzare un’applicazione con i comandi 4D

Tradotto automaticamente da Deepl

Da diverse versioni di 4D sono state aggiunte diverse funzioni per creare la propria catena di costruzione. Ad esempio,

  • la creazione di una cartella “.zip”,
  • l’aggiunta di informazioni come il copyright di un eseguibile o di una “dll”,
  • la creazione di un file “info.plist”,
  • e il nuovo componente build4D.

Con 4D v20, due nuove funzionalità consentono di finalizzare la creazione di un’applicazione standalone o client/server in codice 4D:

  • l’aggiunta di un’icona a un eseguibile
  • la generazione del file di licenza di distribuzione per un server (solo licenza OEM) o un’applicazione standalone.

Aggiungere icone a un exe

In Windows, la funzione setAppInfo della classe File consente di aggiungere alcune informazioni, come l’azienda e il copyright, a un eseguibile. Abbiamo aggiunto un nuovo attributo, “WinIcon”, per passare il file “.ico” da utilizzare.

Ecco un esempio di codice:

var $exeFile: 4D.File
var $iconFile: 4D.File

$exeFile:=Folder(fk desktop folder).file("myApp/myApp.exe")
$iconFile:=File("/RESOURCES/myApp.ico")

$exeFile.setAppInfo(New object("WinIcon"; $iconFile.path))

Se vi chiedete: e su macOS? Questo è già possibile dalla creazione della funzione setAppInfo.

Per aggiungere un’icona a un file “.app”. È necessario inserire il file “.icns” nella cartella “Resources” dell’applicazione. Quindi aggiungere una chiave “CFBundleIconFile” nel file “info.plist” con il percorso dell’icona relativo alla cartella “Resources”.

var $plistFile: 4D.File
$pListFile:= Folder(fk desktop folder).file("myApp.app/Contents/Info.plist")
$pListFile.setAppInfo(New object("CFBundleIconFile"; "myApp.icns"))

Generare la licenza di distribuzione

Il nuovo comando Crea licenza di distribuzione consente di creare la licenza per un server o per un’applicazione a utente singolo. A tal fine, è necessario passare la cartella dell’applicazione generata e il file di licenza come parametri per generare la licenza di distribuzione.

Applicazione per utente singolo:

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:=Createdeployment license($application; $license)

Server con licenza OEM:

var $status: Object
var $application: 4D.File
var $serverLicense; $oemLicense: 4D.File
$serverLicense:=Folder(fk cartella licenze).file("4UOS200-xxx.license4D")
$oemLicense:=Folder(fk cartella licenze).file("4DOM200-xxx.license4D")
$applicazione:=Cartella(fk cartella desktop).cartella("myApp.app")
$status:=Crealicenza di distribuzione($applicazione; $serverLicense; $oemLicense)

Poi…

Su Github è disponibile il componente Build4D, che consente di creare la propria catena di compilazione. Per ora, è possibile personalizzare e automatizzare la creazione di una base compilata o di un componente. Restate sintonizzati per i nuovi sviluppi in arrivo.

Vanessa Talbot
- Product Owner - Vanessa Talbot è entrata a far parte del team di 4D Program nel giugno 2014. In qualità di Product Owner, è incaricata di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente. Ha lavorato sulla maggior parte delle nuove funzionalità di multi-threading preemptive e anche su un argomento molto complesso: la nuova architettura per le applicazioni con motore. Vanessa si è laureata presso Telecom Saint-Etienne. Ha iniziato la sua carriera presso il Criminal Research Institute come sviluppatrice per il dipartimento audiovisivo. Ha lavorato anche nei settori dei media e della medicina come esperta di supporto tecnico, produzione e documentazione di nuove funzionalità.