OSDN Git Service

* include/wtsapi32.h (WTSQueryUserToken, WTSEnumerateSessionsW,
authorcorinna <corinna>
Wed, 24 Jun 2009 10:30:06 +0000 (10:30 +0000)
committercorinna <corinna>
Wed, 24 Jun 2009 10:30:06 +0000 (10:30 +0000)
WTSEnumerateSessionsA): Add function prototypes.
(struct _WTS_SESSION_INFOW, struct _WTS_SESSION_INFOA): Add typedefs.
(WTS_SESSION_INFO, PWTS_SESSION_INFO, WTSEnumerateSessions): Add
defines dependent on UNICODE setting.

winsup/w32api/ChangeLog
winsup/w32api/include/wtsapi32.h

index a04b62a..dcae4f9 100644 (file)
@@ -1,3 +1,11 @@
+2009-06-24  Corinna Vinschen  <corinna@vinschen.de>
+
+       * include/wtsapi32.h (WTSQueryUserToken, WTSEnumerateSessionsW,
+       WTSEnumerateSessionsA): Add function prototypes.
+       (struct _WTS_SESSION_INFOW, struct _WTS_SESSION_INFOA): Add typedefs.
+       (WTS_SESSION_INFO, PWTS_SESSION_INFO, WTSEnumerateSessions): Add
+       defines dependent on UNICODE setting.
+
 2009-06-07  Corinna Vinschen  <corinna@vinschen.de>
 
        * include/ddk/ntapi.h: Add NtXxx equivalent to ZwXxx where missing
index 23e54bb..dcf95a5 100644 (file)
@@ -74,6 +74,7 @@ BOOL WINAPI WTSQuerySessionInformationA(HANDLE hServer, DWORD SessionId, WTS_INF
                                 LPSTR *ppBuffer, DWORD *pBytesReturned);
 BOOL WINAPI WTSQuerySessionInformationW(HANDLE hServer, DWORD SessionId, WTS_INFO_CLASS WTSInfoClass,
                                 LPTSTR *ppBuffer, DWORD *pBytesReturned);
+BOOL WINAPI WTSQueryUserToken(ULONG SessionId, PHANDLE pToken);
 void WINAPI WTSFreeMemory(PVOID pMemory);
 
 #ifdef UNICODE
@@ -86,6 +87,26 @@ void WINAPI WTSFreeMemory(PVOID pMemory);
 
 #if (_WIN32_WINNT >= 0x0500)
 
+typedef struct _WTS_SESSION_INFOW {
+  DWORD SessionId;
+  LPWSTR pWinStationName;
+  WTS_CONNECTSTATE_CLASS State;
+} WTS_SESSION_INFOW, *PWTS_SESSION_INFOW;
+
+typedef struct _WTS_SESSION_INFOA {
+  DWORD SessionId;
+  LPSTR pWinStationName;
+  WTS_CONNECTSTATE_CLASS State;
+} WTS_SESSION_INFOA, *PWTS_SESSION_INFOA;
+
+#ifdef UNICODE
+#define WTS_SESSION_INFO       WTS_SESSION_INFOW
+#define PWTS_SESSION_INFO      PWTS_SESSION_INFOW
+#else
+#define WTS_SESSION_INFO       WTS_SESSION_INFOA
+#define PWTS_SESSION_INFO      PWTS_SESSION_INFOA
+#endif
+
   // WTSWaitSystemEvent local server handle
 #define WTS_CURRENT_SERVER_HANDLE 0
 #define WTS_CURRENT_SESSION       ((DWORD)-1)
@@ -106,6 +127,19 @@ void WINAPI WTSFreeMemory(PVOID pMemory);
 
 BOOL WINAPI WTSWaitSystemEvent(HANDLE hServer, DWORD EventMask, DWORD* pEventFlags);
 BOOL WINAPI WTSDisconnectSession(HANDLE hServer, DWORD SessionId, BOOL bWait);
+BOOL WINAPI WTSEnumerateSessionsW(HANDLE hServer, DWORD Reserved, DWORD Version,
+                                 PWTS_SESSION_INFOW *ppSessionInfo,
+                                 PDWORD pCount);
+BOOL WINAPI WTSEnumerateSessionsA(HANDLE hServer, DWORD Reserved, DWORD Version,
+                                 PWTS_SESSION_INFOA *ppSessionInfo,
+                                 PDWORD pCount);
+
+#ifdef UNICODE
+#define WTSEnumerateSessions WTSEnumerateSessionsW
+#else
+#define WTSEnumerateSessions WTSEnumerateSessionsA
+#endif
+
 #endif /* _WIN32_WINNT >= 0x0500 */
 
 #ifdef __cplusplus