PropertySheetW 函式 (prsht.h)
建立屬性工作表,並加入指定之屬性工作表頁首結構中定義的頁面。
語法
INT_PTR PropertySheetW(
LPCPROPSHEETHEADERW unnamedParam1
);
參數
unnamedParam1
類型: LPCPROPSHEETHEADER
定義屬性工作表框架和頁面之 PROPSHEETHEADER 結構的指標。
傳回值
類型: INT_PTR
針對強制回應屬性工作表,傳回值如下所示:
>=1 | 變更已由使用者儲存。 |
0 | 使用者未儲存任何變更。 |
-1 | 發生錯誤。 |
對於無模式屬性工作表,傳回值是屬性工作表的視窗控制碼。
下列傳回值具有特殊意義。
傳回碼 | 描述 |
---|---|
|
頁面會將 PSM_REBOOTSYSTEM 訊息傳送至屬性工作表。 電腦必須重新開機,使用者所做的變更才會生效。 |
|
將 PSM_RESTARTWINDOWS 訊息傳送至屬性工作表的頁面。 必須重新開機 Windows,使用者的變更才會生效。 |
備註
若要擷取擴充的錯誤資訊,請呼叫 GetLastError。
如果您嘗試將超過 99 頁新增至屬性工作表,此函式將會失敗,但沒有錯誤原因的指示: PropertySheet 會傳回 -1 的值,但 GetLastError 會傳回 0。
對於無模式屬性工作表,您的訊息迴圈應該使用 PSM_ISDIALOGMESSAGE 將訊息傳遞至屬性工作表對話方塊。 您的訊息迴圈應該使用 PSM_GETCURRENTPAGEHWND 來判斷何時要終結對話方塊。 當使用者按一下 [ 確定 ] 或 [ 取消] 按鈕時, PSM_GETCURRENTPAGEHWND 會傳回 Null。 然後,您可以使用 DestroyWindow 函式來終結對話方塊。
5.80 版。 PropertySheet傳回值會為強制回應和無模式屬性工作表提供不同的資訊。 在某些情況下,無模式屬性工作表可能需要當屬性工作表已強制回應時,從 PropertySheet 收到的資訊。 特別是,他們可能需要知道ID_PSREBOOTSYSTEM或ID_PSRESTARTWINDOWS是否已傳回。 無模式屬性工作表可以等候PSM_GETCURRENTPAGEHWND傳回Null,然後傳送PSM_GETRESULT訊息,以擷取強制回應屬性工作表從PropertySheet接收的值。
注意
prsht.h 標頭會將 PropertySheet 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | prsht.h |
程式庫 | Comctl32.lib |
Dll | Comctl32.dll |
API 集合 | ext-ms-win-shell-comctl32-window-l1-1-0 (Windows 10 10.0.14393 版) |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應