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,以及下列值。
傳回碼 | 描述 |
---|---|
|
在 ppGroup 參數中會傳回 Name 參數中指定的共用屬性群組參考。 |
|
呼叫端未在 COM+ 下執行。 呼叫端必須在 COM+ 下執行,才能使用共用屬性管理員。 |
|
至少有一個參數無效,或相同的對象嘗試多次建立相同的屬性群組。 |
備註
下列常數是用來指定共用屬性群組的有效隔離模式。
常數 | 值 | Description |
---|---|---|
LockSetGet | 0 | 預設值。 它可確保在呼叫期間鎖定 屬性,以確保共用屬性上的每個取得或設定作業都是不可部分完成的。 這可確保兩個客戶端無法同時讀取或寫入相同的屬性,但不會防止其他客戶端同時存取相同群組中的其他屬性。 |
LockMethod | 1 | 只要呼叫端的目前方法正在執行,這個值就會鎖定共用屬性群組中的所有屬性,以供呼叫端獨佔使用。 這是在屬性之間有相依性時使用的適當模式,或在用戶端在讀取屬性之後必須立即更新屬性,才能再次存取時使用。 |
注意 當您將隔離模式設定為 LockMethod 時,共用屬性管理員需要存取呼叫對象的物件內容。 您無法使用此隔離模式,從物件的建構函式或非 COM+ 物件內建立共用屬性群組,因為對象內容在物件建構期間無法使用,而且基底用戶端沒有對象內容。
常數 | 值 | 描述 |
---|---|---|
標準 | 0 | 預設值。 當所有用戶端已經在屬性群組上發行其參考時,屬性群組將自動終結。 |
流程 | 1 | 屬性群組一直到建立它的處理序結束以前都不會被終結。 在屬性群組上保存參考的物件仍必須在其參考上呼叫 Release 。 |
注意 對象不應該嘗試將共用屬性群組參考傳遞給另一個物件。 如果參考是在取得該參考的物件外部傳遞,它就不再是有效的參考。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | comsvcs.h |