Функция _Net_Share_ConnectionEnum

 ↑  ←  Описание функции


_Net_Share_ConnectionEnum

Lists all connections made to a shared resource

#include <NetShare.au3>
_Net_Share_ConnectionEnum($sServer, $sQualifier)

Параметры

$sServer String that specifies the DNS or NetBIOS name of the remote server on which the function is to
    execute. If this parameter is blank the local computer is used.
$sQualifier Specifies a share name or computer name of interest. If it is a share name, then all of the
    connections made to that share name are listed. If it is a computer name, the function lists all connections
    made from that computer to the server specified.

Возвращаемое значение

Успех:Возвращает массив следующего формата:
[0][0] - Number of entries in array
[1][0] - Connection identification number
[1][1] - Type of connection. Can be combination of:
$STYPE_DISKTREE - Print queue
$STYPE_PRINTQ - Disk drive
$STYPE_DEVICE - Communication device
$STYPE_IPC - IPC
$STYPE_SPECIAL - Special share reserved for IPC$ or remote administration of the server
$STYPE_TEMPORARY - A temporary share
[1][2] - Number of files currently open as a result of the connection
[1][3] - Number of users on the connection
[1][4] - Number of seconds that the connection has been established
[1][5] - If the server sharing the resource is running with user level security, this member describeswhich user made the connection. If the server is running with share level security, this member describeswhich computer made the connection.
[1][6] - Specifies either the share name of the server's shared resource or the computername of the client
Ошибка:Устанавливает @error

Примечания

Administrator, Server or Print Operator or Power User group membership is required to execute this function

См. также

_Net_Share_FileEnum, _Net_Share_SessionEnum, _Net_Share_ShareEnum

См. также

Искать NetConnectionEnum в библиотеке MSDN

Пример

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

Global $iMemo

_Main()

Func _Main()
    Local $hGUI, $sServer, $sShare, $aInfo

    ; Создаёт GUI
    $hGUI = GUICreate("NetShare", 400, 300)

    ; Создаёт элемент для заметок
    $iMemo = GUICtrlCreateEdit("", 2, 2, 396, 296, $WS_VSCROLL)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Get server and share information
    $sServer = InputBox("NetWork Demo", "Enter Server Name:", "\\MyServer", "", 200, 130)
    If @error Then Exit
    $sShare = InputBox("NetWork Demo", "Enter Share Name:", "MyShare", "", 200, 130)
    If @error Then Exit

    ; Enumerate network connections
    $aInfo = _Net_Share_ConnectionEnum ($sServer, $sShare)
    MemoWrite("Error ...................: " & @error)
    MemoWrite("Entries read ............: " & $aInfo[0][0])
    For $iI = 1 To $aInfo[0][0]
        MemoWrite("Connection ID ...........: " & $aInfo[$iI][0])
        MemoWrite("Connection type..........: " & _Net_Share_ResourceStr ($aInfo[$iI][1]))
        MemoWrite("Number of files open ....: " & $aInfo[$iI][2])
        MemoWrite("Number of users .........: " & $aInfo[$iI][3])
        MemoWrite("Connection time .........: " & $aInfo[$iI][4])
        MemoWrite("Username ................: " & $aInfo[$iI][5])
        MemoWrite("Network name ............: " & $aInfo[$iI][6])
        MemoWrite()
    Next

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>_Main

; Записывает строку в элемент для заметок
Func MemoWrite($sMessage = "")
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite