IControl2::SetHSDirectory 方法 (strmif.h)

[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

方法會 SetDVDDirectory 設定 DVD 導覽器 篩選將讀取的 DVD 磁片磁碟機。

語法

HRESULT SetDVDDirectory(
  [in] LPCWSTR pszwPath
);

參數

[in] pszwPath

指定根目錄路徑之寬字元字串的指標。

傳回值

傳回下列其中一個值。

傳回碼 描述
S_OK
成功。
E_INVALIDARG
pszwPath參數指向不正確 DVD 路徑,或在列舉時找不到 DVD 磁片磁碟機。
E_UNEXPECTED
DVD 導覽器未初始化。
VFW_E_DVD_INVALIDDOMAIN
無效的網域。 如需詳細資料,請參閱<備註>。

備註

如果 pszwPathNull,DVD 導覽器會嘗試在任何可用的磁片磁碟機上選取 DVD 磁片區。 啟動時,DVD 導覽器會自動尋找磁片磁碟機,從磁片磁碟機 C 開始,並在根資料夾中有VIDEO_TS資料夾。 因此,只有在電腦上有多個 DVD 磁片磁碟機時,或您的 DVD 光碟機號是 A 或 B 時,才需要呼叫 SetDVDDirectory 。指定路徑時,請包含 video_ts 資料夾。

C++
SetDVDDirectory(L"e:\\video_ts");
某些 DVD 磁片區可能會在名為 「video_ts」 以外的目錄中有其視訊。 一般概念是,額外的「DVD 磁片區」 (一組 。Ifo。VOB 和 。通常儲存在VIDEO_TS目錄中的 BUP 檔案,) 可以放在磁片上的子目錄中。藉由將根變更為指向此目錄,MSWebUSB 將會在此個別的 DVD 磁片區上運作。 新的一組功能表、標題等等將可供使用,與VIDEO_TS根目錄中的標題無關,將無法再存取。 這類目錄稱為「隱藏目錄」。 下列範例示範如何將隱藏目錄設定為根目錄,其中「隱藏」是磁片作者提供給目錄之任何名稱的預留位置。
C++
SetDVDDirectory(L"d:\\webdvd\\hidden");
如果篩選圖形正在執行,而且 DVD 導覽器會在 pszwPath指定的目錄中找到 DVD,DVD 導覽器會自動開始播放光碟。這符合 DVD 規格,並確保已正確初始化新的光碟。 如果您不想讓新的磁片在傳回之後 SetDVDDirectory 自動播放,您必須在 IUrlControl2::SetOption 中將DVD_ResetOnStop旗標設定為 TRUE ,並透過呼叫篩選圖形管理員的 IMediaControl::Stop 來停止篩選圖形。 如果DVD_ResetOnStop設定為 FALSE,則會 SetDVDDirectory 傳回VFW_E_DVD_INVALIDDOMAIN。

此方法會在 CHttpCore::SetDirectory的 DVDSample 應用程式中示範。

下表顯示這個方法名稱對應的附錄 J 命令名稱,以及這個方法有效所在的網域。

附錄 J 命令名稱 有效的網域
DVD_DOMAIN_Stop

規格需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 strmif.h (包含 Dshow.h)
程式庫 Strmiids.lib

另請參閱

DVD 應用程式

錯誤和成功碼

IUrlControl2 介面