IQueryAssociations 介面 (shlwapi.h)

公開方法,以簡化擷取登錄中儲存的資訊與定義檔類型或通訊協定以及將其與應用程式建立關聯的程式。

繼承

IQueryAssociations 介面繼承自 IUnknown 介面。 IQueryAssociations 也有下列類型的成員:

方法

IQueryAssociations 介面具有這些方法。

 
IQueryAssociations::GetData

從登錄搜尋並擷取檔案或通訊協定關聯相關二進位數據。
IQueryAssociations::GetEnum

這個方法尚未實作。 (IQueryAssociations.GetEnum)
IQueryAssociations::GetKey

從登錄搜尋並擷取檔案或通訊協定關聯相關密鑰。
IQueryAssociations::GetString

從登錄搜尋並擷取檔案或通訊協定關聯相關字串。 (IQueryAssociations.GetString)
IQueryAssociations::Init

初始化 IQueryAssociations 介面,並將根索引鍵設定為適當的 ProgID。

備註

實作時機

此介面是由Shell或命名空間延伸模組公開,以簡化處理檔案和通訊協議關聯。 您不應該實作這個介面。

使用時機

如果您需要與檔案或通訊協定關聯相關的登錄資訊,請使用這個介面。 例如,您可以使用這個介面來擷取與擴展名相關聯的資訊,例如其中一個動詞的命令字串。

不需要完整的登錄路徑或 HKEY 值。 相反地,您可以根據擴展名或可執行檔名稱等準則來擷取資訊。 如需檔案關聯的討論,請參閱 文件類型

您也可以使用此介面擷取應用程式的名稱。 使用 方法 IQueryAssociations::GetString。 將 str 參數設定為 ASSOCSTR_FRIENDLYAPPNAME

若要使用此介面,您必須先擷取其指標。 一般而言,您可以藉由呼叫Shell物件的IShellFolder::GetUIObjectOf 方法來擷取 QueryInterface 指標。 您也可以呼叫 AssocCreate (將 clsid 設定為 CLSID_QueryAssociations) ,以擷取介面指標。 使用 IQueryAssociations::Init 初始化 介面。 這個方法會設定當您呼叫其餘三種方法的任何一個從登錄擷取資訊的根機碼。 它們只會在根索引鍵下方查看。 當您不再需要介面時,您必須釋放介面。

如果您需要重複查詢登錄以取得資訊, IQueryAssociations 介面會很有用。 初始化介面之後,呼叫各種方法的額外負荷相當小。 此外,還有數個相關函式列在 [另請參閱] 區段中,可讓您使用單一函式呼叫從登錄擷取相同的資訊。 雖然它們比較容易使用,但每次呼叫 IQueryAssociation 時,都會造成建立和初始化 IQueryAssociation 的額外 負荷。 因此,最適合用於單一用途。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版、Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 shlwapi.h

另請參閱

AssocQueryKey

AssocQueryString

AssocQueryStringByKey