共用方式為


IDirectDrawSurface7::D eleteAttachedSurface 方法 (ddraw.h)

中斷連結一或多個附加表面。

語法

HRESULT DeleteAttachedSurface(
  [in] DWORD                unnamedParam1,
  [in] LPDIRECTDRAWSURFACE7 unnamedParam2
);

參數

[in] unnamedParam1

目前未使用且必須設定為 0。

[in] unnamedParam2

要中斷連結之 DirectDrawSurface 物件的 IDirectDrawSurface7 介面指標。 如果此參數為 Null,所有附加表面都會中斷連結。

傳回值

如果方法成功,傳回值會DD_OK。

如果失敗,方法可以傳回下列其中一個錯誤值:

  • DDERR_CANNOTDETACHSURFACE
  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_SURFACELOST
  • DDERR_SURFACENOTATTACHED

備註

DeleteAttachedSurface 會遞減要卸離之表面的參考計數。 如果要卸離的介面參考計數達到 0,表面就會遺失並從記憶體中移除。

無法中斷連結由 DirectDraw 而非 IDirectDrawSurface7::AddAttachedSurface 方法所形成之隱含附件。 從翻轉鏈結卸離表面可能會改變鏈結中的其他表面。 如果前端緩衝區與翻轉鏈結中斷連結,鏈結中的下一個表面會變成前端緩衝區,而下清單面會變成背景緩衝區。 如果後端緩衝區與鏈結中斷連結,則下列介面會變成背景緩衝區。 如果一般表面與鏈結中斷連結,則鏈結會變得較短。 如果翻轉鏈結只有兩個表面且已中斷連結,則會終結鏈結,而且兩個表面都會回到先前的指定。

需求

   
目標平台 Windows
標頭 ddraw.h
程式庫 Ddraw.lib
Dll Ddraw.dll

另請參閱

IDirectDrawSurface7