共用方式為


與 IMAPI 互動

下列步驟描述應用程式與 IMAPI 之間的一般互動。

  1. 使用CoCreateInstance建立MSDiscMasterObj (實例、從匯入的智慧型指標,依此類) 並要求IDiscMaster介面。
  2. 藉由呼叫 IDiscMaster::Open來取得 IMAPI 的存取權。 如果此呼叫成功,應用程式就能夠完整存取 MSDiscMasterObj中實作的所有介面和方法。
  3. 使用 EnumDiscMasterFormats擷取磁碟片主要格式列舉值。 列舉磁片主物件支援的一組格式,然後選取使用中格式。 從列舉值傳回的格式是 IJolietDiscMasterIRedbookDiscMaster介面的 IID。
  4. 使用 EnumDiscRecorders擷取光碟錄製器列舉值。 列舉使用中格式) 特定支援的磁片錄製 (器清單) ,然後選取使用中的錄製器。 IDiscRecorder介面代表實體裝置。
  5. 使用 IDiscMaster::P rogressAdvise 註冊進度回呼。
  6. 使用所選格式的 介面來建置內容。 內容會以累加方式建置,因此追蹤或資料夾內容可以逐一新增至磁片區。 建置此內容稱為 暫存映射。 暫存影像的內容無法累加刪除, (您無法移除已新增的追蹤) ,但可以清除暫存影像的內容,以便重新開始預備。 使用 IDiscMaster::ClearFormatContent 重新開機暫存。

**適用于音訊: **

  1. 使用 IRedbookDiscMaster::CreateAudioTrack 來指出磁片上正在啟動新的音訊播放軌。
  2. 使用 IRedbookDiscMaster::AddAudioTrackBlocks 將原始音訊資料新增至曲目。應用程式可以使用 GetAvailableAudioTrackBlocksGetTotalAudioBlocksGetUsedAudioBlocks 來擷取統計資料。
  3. 使用 IRedbookDiscMaster::CloseAudioTrack 關閉音訊播放軌。
  4. 重複步驟 1-3,直到寫入空間不足或所有音訊播放軌為止。

**針對資料: **

  1. 使用 IJolietDiscMaster::AddData 將資料夾的內容新增至影像。 資料夾中的專案會放在影像檔的根目錄中。 使用 GetTotalDataBlocksGetUsedDataBlocks 來擷取統計資料。
  2. 重複上述步驟,直到新增空間不足或所有資料為止。

**針對所有磁片: **

  1. 使用 IDiscMaster::RecordDisc 來錄製磁片。
  2. 使用 IDiscMaster::Close 關閉IMAPI 會話。 關閉會話會清除磁片隱藏的內容。