GetFilesInDirectory

TwinCAT
Local File and directory access Folder

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

The command outputs an array with all files in the specified path. Each array element contains the properties of a file.

Parameters:

Returns:

    GetFilesInDirectory
    A variable of type OpcMethodReturnValueFileInfos. The Result property contains the command-specific return values.
      Result
      An array of FileInfo objects.
        Attributes
        An enumeration with the attributes of the file.
        The enumeration can have the following attributes. The attributes can also occur in combination.
        ReadOnly = 1
        Hidden = 2
        System = 4
        Directory = 16
        Archive = 32
        Device = 64
        Normal = 128
        Temporary = 256
        SparseFile = 512
        ReparsePoint = 1024
        Compressed = 2048
        Offline = 4096
        NotContentIndexed = 8192
        Encrypted = 16384
        IntegrityStream = 32768
        NoScrubData = 131072
        Directory
        A variable of type DirectoryInfo. This contains properties of the parent folder.
          Attributes
          An enumeration with the attributes of the file.
          The enumeration can have the following attributes. The attributes can also occur in combination.
          ReadOnly = 1
          Hidden = 2
          System = 4
          Directory = 16
          Archive = 32
          Device = 64
          Normal = 128
          Temporary = 256
          SparseFile = 512
          ReparsePoint = 1024
          Compressed = 2048
          Offline = 4096
          NotContentIndexed = 8192
          Encrypted = 16384
          IntegrityStream = 32768
          NoScrubData = 131072
          Exists
          Indicates whether the directory exists.
          Extension
          The extension of the folder name including the dot.
        Exists
        Indicates whether the file exists.
        Extension
        The file extension including the dot separator (e.g. .exe, .dll).
        FullName
        The full name of the file including the file path. Example: C:\My Folder\File.txt
        Name
        File name without folder path.

Examples:

In addition to the parameters already explained, the following variables must be created / transferred for the implementation in TwinCAT 3:

Beckhoff parameter:

    bDirectoryAccessGetFilesInDirectory
    A boolean variable that can be used to trigger the execution of the GetFilesInDirectory command.
    OutputDataDirectoryAccessGetFilesInDirectory
    An instance of the "ST_GetFilesInDirectoryOutputData" to which the return value of the GetFilesInDirectory method is written.
    hrDirectoryAccessGetFilesInDirectory
    This can be used to monitor the execution of the command. Error codes have the type "HRESULT".
    fbDirectoryAccess
    An instance of the "FB_DirectoryAccess" function block supplied with the DEPRAG Smart library.
    sFullPath
    A STRING variable containing the full path of the directory.
    ConnectionHandle
    "ConnectionHandle" received when establishing a connection between DEPRAG Smart Server and your OPC UA client.


VAR
     bDirectoryAccessGetFilesInDirectory     : BOOL;
     OutputDataDirectoryAccessGetFilesInDirectory  : ST_GetFilesInDirectoryOutputData;
     hrDirectoryAccessGetFilesInDirectory    : HRESULT;

     fbDirectoryAccess : FB_DirectoryAccess;
END_VAR

hrDirectoryAccessGetFilesInDirectory := fbDirectoryAccess.GetFilesInDirectory(
               bExecute    := bDirectoryAccessGetFilesInDirectory,   
              ConnectionHandle := depragSmartConnection.ConnectionHandle, 
              sFullPath   := 'C:\Test',
              OutputData   => OutputDataDirectoryAccessGetFilesInDirectory);
IF hrDirectoryAccessGetFilesInDirectory <> S_FALSE THEN 
     bDirectoryAccessGetFilesInDirectory := FALSE;
END_IF
                                                    

For examples and explanations regarding the calls of nodes via Siemens TIA Portal please refer to the sub-menu "Siemens TIA Portal" in section "Getting Started".