C16_QueryUserInfo
C16_QueryUserInfo(const vPHANDLE aInstHdl, const vINT aUserID, const vBOOL aNextID, vC16_UserInfo* aInfoBlock) : vERROR
Informationen über Benutzer ermitteln
Details
- aInstHdl: Instanz-Handle
- aUserID: Benutzer-ID
- aNextID: true = der nächste Benutzer wird gelesen, false = der Benutzer mit der angegebenen ID wird gelesen
- aInfoBlock: Informationsstruktur
- Resultat: vERROR Fehlerwert
- Siehe: Befehle der Programmierschnittstelle , C16_QueryAreaInfo() , C16_RecInfo() , C16_UserClear()
Der Befehl füllt eine Struktur vom Typ vC16_UserInfo mit Informationen zum Server. Die Struktur ist folgendermaßen definiert:
typedef struct
{
vINT InfoSize;
vINT ID;
vINT Number;
vINT Protocol;
vLONG FirstReq;
vDATE FirstReqDate;
vTIME FirstReqTime;
vLONG LastReq;
vDATE LastReqDate;
vTIME LastReqTime;
vCHAR Name[24];
vCHAR SysName[64];
vCHAR SysNameIP[64];
vCHAR Address[24];
vCHAR SysAccount[64];
vCHAR NetAccount[64];
}
vC16_UserInfo;
- Komponente: Beschreibung
- InfoSize: Größe der Struktur
- ID: Bentzer-ID
- Number: Benutzernummer
- Protocol: Kommunikationsprotokoll
- FirstReq: Anzahl der Sekunden seit dem Login
- FirstReqDate: Datum des Login
- FirstReqTime: Uhrzeit des Login
- LastReq: Anzahl der Sekunden seit der letzten Serveranfrage
- LastReqDate: Datum der letzten Serveranfrage
- LastReqTime: Uhrzeit der letzten Serveranfrage
- Name: Benutzername
- SysName: Rechnername
- SysNameIP: Host-Name
- Address: Netzwerkadresse des Rechners
- SysAccount: Benutzerkonto
- NetAccount: Netzwerk-Benutzerkonto
Die Funktion liest Informationen aus der Benutzertabelle des CONZEPT 16-Servers aus. Im Parameter (aInstHdl) wird der von C16_InitInstance() bereitgestellte Instanz-Handle, der in der Funktion C16_OpenArea() zum Öffnen der Datenbank verwendet wurde, übergeben. Im Parameter (aUserID) wird die Benutzer-ID des zu lesenden Benutzereintrags angegeben. Mit dem Parameter (aNextID) wird bestimmt, ob der nächste Eintrag (true) oder der Eintrag der angegebenen Benutzer-ID (false) gelesen werden soll. Wird in (aUserID) 0 und in (aNextID) true übergeben, werden die Informationen des ersten Benutzers in die Informationsstruktur übertragen. Die Informationen werden in die Informationsstruktur übertragen, deren Adresse in (aInfoBlock) übergeben wurde. Vor dem Aufruf der Funktion muss die Strukturkomponente InfoSize mit der Größe der Struktur initialisiert werden (sizeof(vC16_UserInfo)).
Die eigene Benutzer-ID kann mit dem Kommando C16_QueryAreaInfo() , die ID eines sperrenden Benutzers mit C16_RecInfo() ermittelt werden.
Der Rückgabewert vom Typ vERROR beinhaltet entweder 0 (kein Fehler) oder einen negativen Fehlerwert (siehe Fehlerwerte ).
Beispiel:
// Auslesen aller Benutzer
vC16_UserInfo UserInfo;
// Struktur initialisieren
UserInfo.InfoSize = sizeof(vC16_UserInfo);
UserInfo.ID = 0;
while (C16_QueryUserInfo(instHdl,UserInfo.ID,true,&UserInfo) == C16ERR_OK)
{
// Benutzerinformationen auslesen
}
// Informationen eines bestimmten Benutzers auslesen
C16_QueryUserInfo(instHdl,UserID,false,&UserInfo);