GetDirectorySizeInByte

TwinCAT TIA
Lokal Datei- und Ordner-Zugriff Ordner

ns=2;s=DEPRAG Smart/Local/FileAndDirectoryAccess/DirectoryAccess/GetDirectorySizeInByte

Der Befehl ruft die Größe des angegebenen Verzeichnisses in Byte ab.

Parameter:

    FullPath
    Vollständiger Pfad des Verzeichnisses.

Rückgabewert:

    GetDirectorySizeInByte
    Eine Variable vom Typ OpcMethodReturnValueInt64. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Größe des Verzeichnisses in Byte.

Beispiele:

Neben den bereits erläuterten Parametern sind für die Implementierung in TwinCAT 3 nachfolgende Variablen anzulegen / zu übergeben:

Beckhoff Parameter:

    bDirectoryAccessGetDirectorySizeInByte
    Eine boolesche Variable, über welche die Ausführung des GetDirectorySizeInByte-Befehls getriggert werden kann.
    OutputDataDirectoryAccessGetDirectorySizeInByte
    Eine Instanz der "ST_GetDirectorySizeInByteOutputData", in welche der Rückgabewert der GetDirectorySizeInByte-Methode geschrieben wird.
    hrDirectoryAccessGetDirectorySizeInByte
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ "HRESULT".
    fbDirectoryAccess
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_DirectoryAccess" Funktionsbausteins.
    sFullPath
    Eine STRING-Variable, die den vollständigen Pfad des Verzeichnisses enthält.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
     bDirectoryAccessGetDirectorySizeInByte    : BOOL;
     OutputDataDirectoryAccessGetDirectorySizeInByte  : ST_GetDirectorySizeInByteOutputData;
     hrDirectoryAccessGetDirectorySizeInByte    : HRESULT;

     fbDirectoryAccess : FB_DirectoryAccess;
END_VAR

hrDirectoryAccessGetDirectorySizeInByte := fbDirectoryAccess.GetDirectorySizeInByte(
              bExecute    := bDirectoryAccessGetDirectorySizeInByte,   
              ConnectionHandle := depragSmartConnection.ConnectionHandle, 
              sFullPath   := 'C:\Test',
              OutputData   => OutputDataDirectoryAccessGetDirectorySizeInByte);
IF hrDirectoryAccessGetDirectorySizeInByte <> S_FALSE THEN 
     bDirectoryAccessGetDirectorySizeInByte := FALSE;
END_IF
                                                    

Für Beispiele und Erklärungen bezüglich der Aufrufe von Knoten via Siemens TIA Portal sei an dieser Stelle auf den Unterpunkt "Siemens TIA Portal" in Abschnitt "Erste Schritte" verwiesen.