Funktionreferenz


_Net_Share_FileGetInfo

Beschreibung anzeigen in

Ermittelt einzelne Informationen über die geöffnete Ressource auf dem Server

#include <NetShare.au3>
_Net_Share_FileGetInfo ( $sServer, $iFileID )

Parameter

$sServer Spezifiziert den DNS oder NetBIOS Namen des Remote-Servers auf dem die Funktion ausgeführt wird.
Wenn der Parameter leer ist, wird der lokale Computer benutzt.
$iFileID File-ID der Ressource, die die Informationen zurückgibt.
Der Wert des Parameters wurde in der vorangegangenen Aufzählungsabfrage zurückgegeben.

Rückgabewert

Erfolg: Ein Array mit dem folgenden Format:
[0] - ID die der Ressource zugeteilt wird wenn sie geöffnet ist.
[1] - Zugriffsberechtigungen für die auszuführende Ressource:
   1 - Berechtigung zum lesen und ausführen einer Ressource.
   2 - Berechtigung zum schreiben einer Ressource.
   4 - Berechtigung zum erstellen einer Ressource.
   8 - Berechtigung zum ausführen.
  16 - Berechtigung zum löschen.
  32 - Berechtigung zum Rechte ändern.
  64 - Ändern der ACL Berechtigungen
[2] - Beinhaltet die maximale Anzahl der Dateien.
[3] - Spezifiziert den Pfad zu der geöffneten Ressource.
[4] - Spezifiziert welcher Benutzer an welchem Computer die Ressource geöffnet hat.
Fehler: Setzt das @error Flag auf ungleich null.

Bemerkungen

Nur Mitglieder der Lokalen-Gruppe Administratoren oder Server-Operater können diese Funktion ausführen.

Verwandte Funktionen

_Net_Share_SessionGetInfo, _Net_Share_ShareGetInfo

Siehe auch

Suche nach NetFileGetInfo in der MSDN Bibliothek.

Beispiel

#include <GuiConstantsEx.au3>
#include <NetShare.au3>
#include <WindowsConstants.au3>

Global $g_idMemo

Example()

Func Example()
    Local $sServer, $aFile, $aInfo

    ; Erstellt eine GUI
    GUICreate("NetShare", 400, 300)

    ; Erstellt ein Memo Control
    $g_idMemo = GUICtrlCreateEdit("", 2, 2, 396, 296, $WS_VSCROLL)
    GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
    GUISetState(@SW_SHOW)

    ; Ermitteln der Server- und Freigabeinformationen
    $sServer = InputBox("Netzwerk Demo", "Server Namen eingeben:", "\\MeinServer", "", 200, 130)
    If @error Then Exit

    ; Auflisten der freigegebenen Dateien auf dem Server
    $aFile = _Net_Share_FileEnum($sServer)
    MemoWrite("Fehler ...................: " & @error)
    MemoWrite("Einträge lesen ............: " & $aFile[0][0])
    MemoWrite()

    ; Informationen über jede (freigegebene|geöffnete?) Datei ermitteln (dasselbe wie $aFile info)
    For $iI = 1 To $aFile[0][0]
        $aInfo = _Net_Share_FileGetInfo($sServer, $aFile[$iI][0])
        MemoWrite("Fehler ...................: " & @error)
        MemoWrite("Datei Benutzerrechte .....: " & _Net_Share_PermStr($aInfo[1]))
        MemoWrite("Datei Sperren ............: " & $aInfo[2])
        MemoWrite("Datei Pfad ...............: " & $aInfo[3])
        MemoWrite("Datei Benutzer ...........: " & $aInfo[4])
        MemoWrite()
    Next

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>Example

; Schreibt eine Nachricht in das Memo
Func MemoWrite($sMessage = "")
    GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite