TNB Library
クラス | 列挙型
IMAPI2 関係

IMAP2 関係. [詳解]

クラス

class  CImageMastering::CDiscImage
 ディスクイメージ管理. [詳解]
 
class  CImageMastering::CDrive
 ドライブ管理. [詳解]
 
class  CImageMastering
 IMAPI2管理. [詳解]
 
class  CImageMasteringResult
 IMAPI2リザルト管理. [詳解]
 
struct  CImageMastering::CDiscImage::IListener
 ディスクイメージ管理リスナー. [詳解]
 
struct  CImageMastering::CDrive::IListener
 ドライブ管理リスナー. [詳解]
 

列挙型

enum  IMAPI_FORMAT2_DATA_MEDIA_STATE {
  IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY = 0x1 , IMAPI_FORMAT2_DATA_MEDIA_STATE_BLANK = 0x2 , IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE = 0x4 , IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION = 0x8 ,
  IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED = 0x400 , IMAPI_FORMAT2_DATA_MEDIA_STATE_ERASE_REQUIRED = 0x800 , IMAPI_FORMAT2_DATA_MEDIA_STATE_NON_EMPTY_SESSION = 0x1000 , IMAPI_FORMAT2_DATA_MEDIA_STATE_WRITE_PROTECTED = 0x2000 ,
  IMAPI_FORMAT2_DATA_MEDIA_STATE_FINALIZED = 0x4000 , IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MEDIA = 0x8000
}
 ディスク状態. [詳解]
 
enum  IMAPI_FORMAT2_DATA_WRITE_ACTION {
  IMAPI_FORMAT2_DATA_WRITE_ACTION_VALIDATING_MEDIA , IMAPI_FORMAT2_DATA_WRITE_ACTION_FORMATTING_MEDIA , IMAPI_FORMAT2_DATA_WRITE_ACTION_INITIALIZING_HARDWARE , IMAPI_FORMAT2_DATA_WRITE_ACTION_CALIBRATING_POWER ,
  IMAPI_FORMAT2_DATA_WRITE_ACTION_WRITING_DATA , IMAPI_FORMAT2_DATA_WRITE_ACTION_FINALIZATION , IMAPI_FORMAT2_DATA_WRITE_ACTION_COMPLETED
}
 書き込みアクション. [詳解]
 
enum  IMAPI_MEDIA_PHYSICAL_TYPE {
  IMAPI_MEDIA_TYPE_UNKNOWN , IMAPI_MEDIA_TYPE_CDROM , IMAPI_MEDIA_TYPE_CDR , IMAPI_MEDIA_TYPE_CDRW ,
  IMAPI_MEDIA_TYPE_DVDROM , IMAPI_MEDIA_TYPE_DVDRAM , IMAPI_MEDIA_TYPE_DVDPLUSR , IMAPI_MEDIA_TYPE_DVDPLUSRW ,
  IMAPI_MEDIA_TYPE_DVDPLUSR_DUALLAYER , IMAPI_MEDIA_TYPE_DVDDASHR , IMAPI_MEDIA_TYPE_DVDDASHRW , IMAPI_MEDIA_TYPE_DVDDASHR_DUALLAYER ,
  IMAPI_MEDIA_TYPE_DISK , IMAPI_MEDIA_TYPE_DVDPLUSRW_DUALLAYER , IMAPI_MEDIA_TYPE_HDDVDROM , IMAPI_MEDIA_TYPE_HDDVDR ,
  IMAPI_MEDIA_TYPE_HDDVDRAM , IMAPI_MEDIA_TYPE_BDROM , IMAPI_MEDIA_TYPE_BDR , IMAPI_MEDIA_TYPE_BDRE
}
 ディスクタイプ. [詳解]
 

詳解

IMAP2 関係.

       IMAPI2 (Image Mastering API Version 2)を使った、
       CD-R/RW,DVD±R/RW の書込みをサポートするクラスが用意してあります。

   \attention CoInitialize() ではなく OleInitialize() を使う必要があります
       (プロジェクト作成時に、「オートメーション有り」にする、など)。

   \par 例:
   - ドライブ一覧
   \code
       CImageMastering im;
       loop ( i, im.GetDriveCount() )
       {
           CImageMastering::CDrive drv = im.CreateDrive(i);
           if ( drv.IsValid() )
           {  // 有効なドライブ発見
               CImageMastering::CDrive::TInformation info = drv.GetInformation();
               TRACE1("ProductId = %s\n", info.productId);
               TRACE1("ProductRevision = %s\n", info.productRevision);
               TRACE1("VendorId = %s\n", info.vendorId);
               TRACE1("VolumeName = %s\n", dev.GetVolumeOnDisc());
               TRACE1("DiscType = %s\n", drv.GetTypeStringOnDisc());
               TRACE1("DiscState = %04X\n", drv.GetStatusOnDisc());
           }
       }
   \endcode
   - フォルダ c:\\Temp 以下を ディスクの \\ABC 以下に書き込み、 d:\\data\\memo.txt をディスクの \\ABC\\001 に書き込む
   \code
       // CImageMastering::CDrive drv; // 有効なドライブ
       if ( ! drv.IsBlankDisc() ) {
           drv.Erase();    //ブランクでないので削除
       }
       CImageMastering::CDiscImage di;
       di.AddSourceDirectory(_T("c:\\Temp"), _T("\\ABC"));
       di.AddSourceFile(_T("d:\\data\\memo.txt"), _T("\\ABC\\001"));
       di.SetVolumeName(_T("ボリューム"));      //ボリューム名
       drv.Burn(di, true);     // 書いて、閉じる
   \endcode
   - クローズしていないディスクの \\ABC\\A.txt を削除する。
   \code
       // CImageMastering::CDrive drv; // 有効なドライブ
       CImageMastering::CDiscImage di;
       drv.ReadMultiSession(di); //セッション情報読み込む
       di.RemoveFile(_T("\\ABC\\A.txt"));
       drv.Burn(di, false);        // 書く
   \endcode
   - クローズしていないディスクをクローズするだけ
   \code
       // CImageMastering::CDrive drv; // 有効なドライブ
       CImageMastering::CDiscImage di;
       di.SetVolumeName(_T("ボリューム")); //ボリューム名を変えるなら
       drv.Burn(di, true);     // 書いて、閉じる
   \endcode
参照
CImageMastering

列挙型詳解

◆ IMAPI_FORMAT2_DATA_MEDIA_STATE

ディスク状態.

参照
TNB::CImageMastering::CDrive::GetStatusOnDisc()
列挙値
IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY 

上書きのみ

IMAPI_FORMAT2_DATA_MEDIA_STATE_BLANK 

ブランク

IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE 

追記可能

IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION 

最後のセクション

IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED 

ダメージ

IMAPI_FORMAT2_DATA_MEDIA_STATE_ERASE_REQUIRED 

消去必要あり

IMAPI_FORMAT2_DATA_MEDIA_STATE_NON_EMPTY_SESSION 

セクション有り

IMAPI_FORMAT2_DATA_MEDIA_STATE_WRITE_PROTECTED 

書き込み禁止

IMAPI_FORMAT2_DATA_MEDIA_STATE_FINALIZED 

ファイナライズ済み

IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MEDIA 

未サポートディスク

TnbImageMastering.h2181 行目に定義があります。

◆ IMAPI_FORMAT2_DATA_WRITE_ACTION

書き込みアクション.

参照
TNB::CImageMastering::CDrive::IListener::OnDriveWriteEvent()
列挙値
IMAPI_FORMAT2_DATA_WRITE_ACTION_VALIDATING_MEDIA 

ディスク確認中

IMAPI_FORMAT2_DATA_WRITE_ACTION_FORMATTING_MEDIA 

ディスクフォーマット中

IMAPI_FORMAT2_DATA_WRITE_ACTION_INITIALIZING_HARDWARE 

初期化中

IMAPI_FORMAT2_DATA_WRITE_ACTION_CALIBRATING_POWER 

パワー調整中

IMAPI_FORMAT2_DATA_WRITE_ACTION_WRITING_DATA 

データ書き込み中

IMAPI_FORMAT2_DATA_WRITE_ACTION_FINALIZATION 

ファイナライズ中

IMAPI_FORMAT2_DATA_WRITE_ACTION_COMPLETED 

完了

TnbImageMastering.h2166 行目に定義があります。

◆ IMAPI_MEDIA_PHYSICAL_TYPE

ディスクタイプ.

参照
TNB::CImageMastering::CDrive::GetTypeOnDisc()
列挙値
IMAPI_MEDIA_TYPE_UNKNOWN 

不明,

IMAPI_MEDIA_TYPE_CDROM 

CD-ROM

IMAPI_MEDIA_TYPE_CDR 

CD-R

IMAPI_MEDIA_TYPE_CDRW 

CD-RW

IMAPI_MEDIA_TYPE_DVDROM 

DVD-ROM

IMAPI_MEDIA_TYPE_DVDRAM 

DVD-RAM

IMAPI_MEDIA_TYPE_DVDPLUSR 

DVD+R

IMAPI_MEDIA_TYPE_DVDPLUSRW 

DVD+RW

IMAPI_MEDIA_TYPE_DVDPLUSR_DUALLAYER 

DVD+R DL

IMAPI_MEDIA_TYPE_DVDDASHR 

DVD-R

IMAPI_MEDIA_TYPE_DVDDASHRW 

DVD-RW

IMAPI_MEDIA_TYPE_DVDDASHR_DUALLAYER 

DVD-R DL

IMAPI_MEDIA_TYPE_DISK 

DISK

IMAPI_MEDIA_TYPE_DVDPLUSRW_DUALLAYER 

DVD+RW DL

IMAPI_MEDIA_TYPE_HDDVDROM 

HD DVD-ROM

IMAPI_MEDIA_TYPE_HDDVDR 

HD DVD-R

IMAPI_MEDIA_TYPE_HDDVDRAM 

HD DVD-RAM

IMAPI_MEDIA_TYPE_BDROM 

BD-ROM

IMAPI_MEDIA_TYPE_BDR 

BD-R

IMAPI_MEDIA_TYPE_BDRE 

BD-RE

TnbImageMastering.h2199 行目に定義があります。