Lizenzanfragen erstellen

Eine TwinCAT-Lizenzanfrage-Datei mit der Endung .tclrq enthält die Angaben, die für die Erzeugung einer Lizenz benötigt werden. Sie wird bei Beckhoff eingereicht und führt zur Ausgabe der zugehörigen Lizenzdatei. Ab TwinCAT Build 4026.7 lässt sich diese Datei direkt über das Automation Interface erzeugen. Dazu wird ConsumeXml mit einem LicenseRequest-Element auf dem Lizenzknoten aufgerufen.

Voraussetzungen

C#-Beispiel

Der Lizenzknoten wird über den Baumpfad TIRC^License aufgerufen. Das LicenseRequest-XML enthält die Pflichtfelder Provider, LicenseId und CustomerId sowie den Zielpfad in LicenseRequestFilePath. Nach dem ConsumeXml-Aufruf liegt die .tclrq-Datei am angegebenen Pfad.

// Look up license node (TIRC = TwinCAT Runtime Configuration)
ITcSmTreeItem licenseNode = sysManager.LookupTreeItem(@"TIRC^License");

string licenseRequestXml = @"<TreeItem>
  <LicenseDef>
    <LicenseRequest>
      <Provider>Beckhoff Automation</Provider>
      <LicenseId>1234</LicenseId>
      <CustomerId>4321</CustomerId>
      <Comment>Lizenzanfrage Projekt XY</Comment>
      <LicenseRequestFilePath>C:\Temp\MyLicense.tclrq</LicenseRequestFilePath>
    </LicenseRequest>
  </LicenseDef>
</TreeItem>";

licenseNode.ConsumeXml(licenseRequestXml);
// The file is created at the specified path

PowerShell-Beispiel

# Look up license node (TIRC = TwinCAT Runtime Configuration)
$licenseNode = $sysManager.LookupTreeItem("TIRC^License")

$licenseRequestXml = @"
<TreeItem>
  <LicenseDef>
    <LicenseRequest>
      <Provider>Beckhoff Automation</Provider>
      <LicenseId>1234</LicenseId>
      <CustomerId>4321</CustomerId>
      <Comment>Lizenzanfrage Projekt XY</Comment>
      <LicenseRequestFilePath>C:\Temp\MyLicense.tclrq</LicenseRequestFilePath>
    </LicenseRequest>
  </LicenseDef>
</TreeItem>
"@

$licenseNode.ConsumeXml($licenseRequestXml)
# The file is created at the specified path
Lizenzanfragen erstellen 1:

Das Feature ist ab TC Build 4026.7 verfügbar. Beim Auslesen über ProduceXml kann LicenseRequestFilePath leer sein. Das ist normal, denn der Pfad wird nur zum Erzeugen der Datei verwendet und danach nicht gespeichert.