共用方式為


ISharedPropertyGroupManager::CreatePropertyGroup 方法 (comsvcs.h)

建立新的共用屬性群組。 如果具有指定名稱的屬性群組已經存在, CreatePropertyGroup 會傳回現有群組的參考。

語法

HRESULT CreatePropertyGroup(
  [in]      BSTR                 Name,
  [in, out] LONG                 *dwIsoMode,
  [in, out] LONG                 *dwRelMode,
  [out]     VARIANT_BOOL         *fExists,
  [out]     ISharedPropertyGroup **ppGroup
);

參數

[in] Name

要建立的共用屬性組名。

[in, out] dwIsoMode

新共用屬性群組中屬性的隔離模式。 請參閱下列中的常數數據表。 如果 fExists 參數的值設定為傳回此方法時VARIANT_TRUE,則會忽略輸入值,而且此參數中傳回的值是建立屬性群組時所指派的隔離模式。

[in, out] dwRelMode

新共用屬性群組中屬性的發行模式。 請參閱下列中的常數數據表。 如果 fExists 參數的值設定為傳回此方法時VARIANT_TRUE,則會忽略輸入值,而且此參數中傳回的值是建立屬性群組時所指派的發行模式。

[out] fExists

如果名稱參數中指定的共用屬性群組存在於這個呼叫之前,則VARIANT_TRUE從這個方法傳回,而且如果屬性群組是由這個呼叫所建立,則VARIANT_FALSE。

[out] ppGroup

ISharedPropertyGroup 的參考,這是 Name 參數所識別的共用屬性群組,如果遇到錯誤,則為 NULL

傳回值

這個方法可以傳回標準傳回值E_OUTOFMEMORY、E_UNEXPECTED和E_FAIL,以及下列值。

傳回碼 描述
S_OK
ppGroup 參數中會傳回 Name 參數中指定的共用屬性群組參考。
CONTEXT_E_NOCONTEXT
呼叫端未在 COM+ 下執行。 呼叫端必須在 COM+ 下執行,才能使用共用屬性管理員。
E_INVALIDARG
至少有一個參數無效,或相同的對象嘗試多次建立相同的屬性群組。

備註

下列常數是用來指定共用屬性群組的有效隔離模式。

常數 Description
LockSetGet 0 預設值。 它可確保在呼叫期間鎖定 屬性,以確保共用屬性上的每個取得或設定作業都是不可部分完成的。 這可確保兩個客戶端無法同時讀取或寫入相同的屬性,但不會防止其他客戶端同時存取相同群組中的其他屬性。
LockMethod 1 只要呼叫端的目前方法正在執行,這個值就會鎖定共用屬性群組中的所有屬性,以供呼叫端獨佔使用。 這是在屬性之間有相依性時使用的適當模式,或在用戶端在讀取屬性之後必須立即更新屬性,才能再次存取時使用。
 
注意 當您將隔離模式設定為 LockMethod 時,共用屬性管理員需要存取呼叫對象的物件內容。 您無法使用此隔離模式,從物件的建構函式或非 COM+ 物件內建立共用屬性群組,因為對象內容在物件建構期間無法使用,而且基底用戶端沒有對象內容。
 
下列常數是用來指定共用屬性群組的有效發行模式。
常數 描述
標準 0 預設值。 當所有用戶端已經在屬性群組上發行其參考時,屬性群組將自動終結。
流程 1 屬性群組一直到建立它的處理序結束以前都不會被終結。 在屬性群組上保存參考的物件仍必須在其參考上呼叫 Release
 
注意 對象不應該嘗試將共用屬性群組參考傳遞給另一個物件。 如果參考是在取得該參考的物件外部傳遞,它就不再是有效的參考。
 

規格需求

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

另請參閱

ISharedPropertyGroupManager