IDisplayHelp::ShowTopic 方法 (mmc.h)
IDisplayHelp::ShowTopic方法會在合併的 MMC HTML 說明檔中顯示指定的 HTML 說明主題。
語法
HRESULT ShowTopic(
[in] LPOLESTR pszHelpTopic
);
參數
[in] pszHelpTopic
Null終止字串的指標,指定要在合併的 MMC HTML 說明檔中顯示的主題。 字串必須具有下列格式:
helpfilename::topicfilename
其中 helpfilename 是嵌入式管理單元 HTML 說明檔的檔案名 (.chm) MMC 合併到 MMC HTML 說明集合檔案 (這是唯一的檔案名,而不是原始 HTML 說明檔的路徑) , 而 topicfilename 是嵌入式管理單元 .chm 檔案內主題檔案的內部路徑。 嵌入式管理單元的 HTML 說明檔作者會決定主題 HTML 檔案是否有內部目錄結構,或所有主題 HTML 檔案是否位於 .chm 檔案的根目錄。
嵌入式管理單元會在 ISnapinHelp2::GetHelpTopic 方法的實作中,告知 MMC 其 .chm 檔案。
例如,如果嵌入式管理單元已將 HTML 說明檔 mysnapin.chm 合併到 MMC HTML 說明集合檔案,以及具有 htm/help01.htm 內部檔案路徑的主題 HTML 檔案,則字串的格式如下:
mysnapin.chm::htm/help01.htm
如果 help01.htm 主題檔案位於 mysnapin.chm 說明檔的根目錄,則字串的格式應如下:
mysnapin.chm::/help01.htm
1.2 版和更早版本不包含主題的數值識別碼支援。
傳回值
這個方法可以傳回其中一個值。
備註
MMC 1.0 和 1.1 版要求 pszHelpTopic 是透過 COM API 函式 CoTaskMemAlloc配置,然後該 MMC 會釋放字串。 這違反配置內部參數的 COM 規則,要求呼叫端 (嵌入式管理單元) 配置和釋放這些規則。 在 MMC 1.2 和 MMC 2.0 中,不再需要使用CoTaskMemAlloc配置pszHelpTopic。 呼叫端可以使用所需的任何記憶體管理。 如果呼叫端選擇使用 CoTaskMemAlloc,它也會負責呼叫 CoTaskMemFree 以釋放字串。
嵌入式管理單元可以藉由在其IComponent::Notify方法中處理MMCN_CONTEXTHELP通知,以及呼叫IDisplayHelp::ShowTopic,為選取的專案提供內容說明。
對於屬性頁,嵌入式管理單元應該呼叫 MMCPropertyHelp ,而不是 IDisplayHelp::ShowTopic。 因為 MMC 屬性工作表通常會在不同的執行緒上執行,所以屬性頁無法直接使用 IDisplayHelp 介面。 相反地,屬性頁可以從 MMC 程式庫呼叫 MMCPropertyHelp ,以達到相同的結果。 MMCPropertyHelp 採用與 IDisplayHelp::ShowTopic 相同的主題字串參數,並處理對主要 MMC 執行緒的要求封送處理。
如果嵌入式管理單元處理 MMCN_CONTEXTHELP 通知,MMC 預期嵌入式管理單元會指定所選項目的 [說明] 主題。 因此,在 MMCN_CONTEXTHELP 通知的通知處理常式中,嵌入式管理單元有兩個選項:
- 它可以呼叫 IDisplayHelp::ShowTopic 或 MMCPropertyHelp 來指定 [說明] 主題,然後傳回 S_OK 以指出成功。 請注意,如果嵌入式管理單元指定說明主題,則只能傳回 S_OK 。 如果嵌入式管理單元傳回 S_OK 而不指定 [說明] 主題,則不會顯示 [說明] 主題。
- 它可以將 S_FALSE 傳回通知。 MMC 接著會顯示已選取預設 MMC 主題的說明收集檔。
需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | mmc.h |
Dll | Mmcndmgr.dll |