CreateWindowStationA 函式 (winuser.h)
建立視窗月臺物件、將它與呼叫進程產生關聯,並將它指派給目前的會話。
語法
HWINSTA CreateWindowStationA(
[in, optional] LPCSTR lpwinsta,
DWORD dwFlags,
[in] ACCESS_MASK dwDesiredAccess,
[in, optional] LPSECURITY_ATTRIBUTES lpsa
);
參數
[in, optional] lpwinsta
要建立之視窗月臺的名稱。 視窗月臺名稱不區分大小寫,且不能包含反斜杠字元 (\)。 僅允許 Administrators 群組的成員指定名稱。 如果 lpwinstaNULL 或空字串,系統會使用呼叫程式的登入會話標識符來形成視窗月臺名稱。 若要取得此名稱,請呼叫 getUserObjectInformation 函式
dwFlags
如果此參數 CWF_CREATE_ONLY 且視窗月臺已經存在,則呼叫會失敗。 如果未指定此旗標,而且視窗月臺已經存在,函式會成功,並將新的句柄傳回至現有的視窗月臺。
Windows XP/2000:此參數是保留的,而且必須是零。
[in] dwDesiredAccess
傳回句柄對視窗月臺的存取類型。 此外,您可以指定任何標準訪問許可權,例如 READ_CONTROL 或 WRITE_DAC,以及視窗月臺特定訪問許可權的組合。 如需詳細資訊,請參閱 Window Station Security and Access Rights。
[in, optional] lpsa
SECURITY_ATTRIBUTES 結構的指標,決定傳回的句柄是否可以由子進程繼承。 如果 lpsaNULL,則無法繼承句柄。
lpSecurityDescriptor 結構的成員會指定新視窗月臺的安全性描述元。 如果 lpsaNULL,則視窗月臺(以及視窗內建立的任何桌面)會取得安全性描述元,授與所有使用者 GENERIC_ALL 存取權。
傳回值
如果函式成功,傳回值就是新建立之視窗月臺的句柄。 如果指定的視窗月臺已經存在,函式會成功,並將句柄傳回至現有的視窗月臺。
如果函式失敗,則傳回值 NULL。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
言論
完成句柄之後,您必須呼叫 closeWindowStation
注意
winuser.h 標頭會將 CreateWindowStation 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winuser.h (包括 Windows.h) |
連結庫 | User32.lib |
DLL | User32.dll |
API 集 | ext-ms-win-ntuser-windowstation-l1-1-0 (在 Windows 8 中引進) |