Obtient des informations sur une session ouverte entre un serveur et un poste de travail
#include <NetShare.au3>
_Net_Share_SessionGetInfo ( $sServer, $sClientName, $sUserName )
$sServer | Chaîne qui spécifie le nom DNS ou NetBIOS du serveur distant sur lequel la fonction s'exécutera. Si ce paramètre est vide l'ordinateur local est utilisé. |
$sClientName | Indique le nom de la session de l'ordinateur pour lequel l'information doit être retournée. Ce paramètre ne peut pas être vide. |
$sUserName | Chaîne qui spécifie le nom de l'utilisateur dont les informations de session doivent être retournées. Ce paramètre ne peut pas être vide. |
Succès: | Retourne un tableau avec le format suivant: [0] - Nom de l'ordinateur qui a ouvert la session [1] - Nom de l'utilisateur qui a ouvert la session [2] - Nombre de fichiers, de périphériques et de pipes ouverts lors de la session [3] - Nombre de secondes écoulées depuis que la session a été activée [4] - Nombre de secondes écoulées depuis que la session a été désactivée [5] - Indique comment l'utilisateur a ouvert la session: 1 - L'utilisateur a ouvert la session en utilisant un compte invité 2 - L'utilisateur a ouvert la session sans utiliser le cryptage du mot de passe [6] - Indique le type de client qui a ouvert la session |
Échec: | Définit @error <> 0. |
Seuls les membres du groupe local Administrateurs ou opérateurs serveur peuvent exécuter cette fonction.
_Net_Share_FileGetInfo, _Net_Share_ShareGetInfo
Consultez NetSessionGetInfo dans la librairie MSDN.
#include <GUIConstantsEx.au3> #include <NetShare.au3> #include <WindowsConstants.au3> Global $g_idMemo Example() Func Example() Local $sServer, $aInfo ; Crée une GUI GUICreate("NetShare", 400, 300) ; Crée un contrôle Memo $g_idMemo = GUICtrlCreateEdit("", 2, 2, 396, 296, $WS_VSCROLL) GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New") GUISetState(@SW_SHOW) ; Obtient le serveur et le nom de partage $sServer = InputBox("NetWork Demo", "Entrez le nom du serveur:", "\\MyServer", "", 200, 130) If @error Then Exit ; Obtient des informations de session $aInfo = _Net_Share_SessionGetInfo($sServer, @ComputerName, "Administrator") MemoWrite("Error ..........: " & @error) MemoWrite("Computer name ..: " & $aInfo[0]) MemoWrite("User name ......: " & $aInfo[1]) MemoWrite("Resources open .: " & $aInfo[2]) MemoWrite("Seconds active .: " & $aInfo[3]) MemoWrite("Seconds idle ...: " & $aInfo[4]) MemoWrite("Connection type : " & $aInfo[5]) MemoWrite("Client type ....: " & $aInfo[6]) ; Boucle jusqu'à ce que l'utilisateur quitte. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE EndFunc ;==>Example ; Ecrit un message dans le contrôle Memo Func MemoWrite($sMessage = "") GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1) EndFunc ;==>MemoWrite