共用方式為


IAudioEndpointVolume::UnregisterControlChangeNotify 方法 (endpointvolume.h)

UnregisterControlChangeNotify方法會刪除用戶端在先前呼叫IAudioEndpointVolume::RegisterControlChangeNotify方法中註冊的用戶端通知回呼介面註冊。

語法

HRESULT UnregisterControlChangeNotify(
  [in] IAudioEndpointVolumeCallback *pNotify
);

參數

[in] pNotify

用戶端 IAudioEndpointVolumeCallback 介面的指標。 用戶端在先前呼叫 IAudioEndpointVolume::RegisterControlChangeNotify 方法中,將這個相同的介面指標傳遞至端點磁片區物件。 如果UnregisterControlChangeNotify方法成功,它會在用戶端的IAudioEndpointVolumeCallback介面上呼叫Release方法。

傳回值

如果方法成功,它會傳回 S_OK。 如果失敗,可能的傳回碼包括,但不限於下表所示的值。

傳回碼 描述
E_POINTER
參數 pNotifyNull

備註

在用戶端釋放 IAudioEndpointVolumeCallback 介面的最終參考之前,它應該呼叫 UnregisterControlChangeNotify 來取消註冊介面。 否則,應用程式會洩漏 IAudioEndpointVolumeCallbackIAudioEndpointVolume 物件所持有的資源。 請注意 ,IAudioEndpointVolume::RegisterControlChangeNotify 方法會呼叫用戶端的 IAudioEndpointVolumeCallback::AddRef 方法,而 UnregisterControlChangeNotify 會呼叫 IAudioEndpointVolumeCallback::Release 方法。 如果用戶端在呼叫UnregisterControlChangeNotify之前釋放其IAudioEndpointVolumeCallback介面的參考,則 IAudioEndpointVolume物件永遠不會釋放對IAudioEndpointVolumeCallback介面的參考。 例如,設計不佳的IAudioEndpointVolumeCallback實作可能會從IAudioEndpointVolumeCallback物件的解構函式呼叫UnregisterControlChangeNotify。 在此情況下,用戶端不會呼叫 UnregisterControlChangeNotify ,直到 IAudioEndpointVolume 物件釋放其 IAudioEndpointVolumeCallback 介面的參考,而 IAudioEndpointVolume 物件將不會釋放其對 IAudioEndpointVolumeCallback 介面的參考,直到用戶端呼叫 UnregisterControlChangeNotify為止。 如需 AddRefRelease 方法的詳細資訊,請參閱 Windows SDK 檔中的 IUnknown 介面討論。

如需呼叫 UnregisterControlChangeNotify的程式碼範例,請參閱 端點磁片區控制項

需求

   
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 endpointvolume.h

另請參閱

IAudioEndpointVolume 介面

IAudioEndpointVolume::RegisterControlChangeNotify

IAudioEndpointVolumeCallback 介面