Home COM GDI+ WebBrowser Data Access

IDiscMaster Interface

 

CLDID_MSDiscMasterObj

{520CCA63-51A5-11D3-9144-00104BA11C5E}

IID_IDiscMaster

{520CCA62-51A5-11D3-9144-00104BA11C5E}

 

 

The IDiscMaster interface allows an application to reserve an image mastering API, enumerate disc mastering formats and disc recorders supported by an image mastering object, and start a simulated or actual burn of a disc. Although an image mastering object can support several formats, it may not be possible to access all formats through a specific recorder. For this reason, you must select a recorder with SetActiveDiscRecorder after selecting a format with SetActiveDiscMasterFormat.

 

 

Methods in VTable order

IUnknown Methods

Description

QueryInterface

Returns pointers to supported interfaces.

AddRef

Increments reference count.

Release

Decrements reference count.

IDiscMaster Methods

Description

Open

Opens an IMAPI object.

EnumDiscMasterFormats

Retrieves a format enumerator.

GetActiveDiscMasterFormat

Retrieves the currently selected recorder format.

SetActiveDiscMasterFormat

Sets a new active recorder format.

EnumDiscRecorders

Retrieves a recorder enumerator.

GetActiveDiscRecorder

Retrieves the active disc recorder format.

SetActiveDiscRecorder

Selects a new active disc recorder.

ClearFormatContent

Clears the contents of an unburned image.

ProgressAdvise

Registers for progress notifications.

ProgressUnadvise

Cancels progress notifications.

RecordDisc

Burns the staged image to media in the active disc recorder.

Close

Closes the interface.

 

CreateInstance

 

FUNCTION IDiscMaster_CreateInstance ( _

  BYREF ppIDiscMaster AS DWORD _

  ) AS LONG

  LOCAL CLSID_MSDiscMasterObj AS GUID
  LOCAL IID_IDiscMaster AS GUID

  CLSID_MSDiscMasterObj = GUID$("{
520CCA63-51A5-11D3-9144-00104BA11C5E}")
  IID_IDiscMaster = GUID$("{
520CCA62-51A5-11D3-9144-00104BA11C5E}")
  FUNCTION = CoCreateInstance(CLSID_MSDiscMasterObj, BYVAL %NULL, &H1, IID_IDiscMaster, ppIDiscMaster)

END FUNCTION

 

 

Open

 

FUNCTION IDiscMaster_Open ( _
  BYVAL pthis AS DWORD PTR _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[3] USING IDiscMaster_Open (pthis) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

EnumDiscMasterFormats

 

FUNCTION IDiscMaster_EnumDiscMasterFormats ( _
  BYVAL pthis AS DWORD PTR _

, BYREF ppenum AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[4] USING IDiscMaster_EnumDiscMasterFormats (pthis, ppenum) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

GetActiveDiscMasterFormat

 

FUNCTION IDiscMaster_GetActiveDiscMasterFormat ( _
  BYVAL pthis AS DWORD PTR _

, BYREF lpiid AS GUID _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[5] USING IDiscMaster_GetActiveDiscMasterFormat (pthis, lpiid) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

SetActiveDiscMasterFormat

 

FUNCTION IDiscMaster_SetActiveDiscMasterFormat ( _
  BYVAL pthis AS DWORD PTR _

, BYREF riid AS GUID _

, BYREF ppUnk AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[6] USING IDiscMaster_SetActiveDiscMasterFormat (pthis, riid, ppUnk) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

EnumDiscRecorders

 

FUNCTION IDiscMaster_EnumDiscRecorders ( _
  BYVAL pthis AS DWORD PTR _

, BYREF ppenum AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[7] USING IDiscMaster_EnumDiscRecorders (pthis, ppenum) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

GetActiveDiscRecorder

 

FUNCTION IDiscMaster_GetActiveDiscRecorder ( _
  BYVAL pthis AS DWORD PTR _

, BYREF ppRecorder AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[8] USING IDiscMaster_GetActiveDiscRecorder (pthis, ppRecorder) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

SetActiveDiscRecorder

 

FUNCTION IDiscMaster_SetActiveDiscRecorder ( _
  BYVAL pthis AS DWORD PTR _

, BYVAL pRecorder AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[9] USING IDiscMaster_SetActiveDiscRecorder (pthis, pRecorder) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

ClearFormatContent

 

FUNCTION IDiscMaster_ClearFormatContent ( _
  BYVAL pthis AS DWORD PTR _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[10] USING IDiscMaster_ClearFormatContent (pthis) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

ProgressAdvise

 

FUNCTION IDiscMaster_ProgressAdvise ( _
  BYVAL pthis AS DWORD PTR _

, BYVAL pEvents AS DWORD _

, BYREF pvCookie AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[11] USING IDiscMaster_ProgressAdvise (pthis, pEvents, pvCookie) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

ProgressUnadvise

 

FUNCTION IDiscMaster_ProgressUnadvise ( _
  BYVAL pthis AS DWORD PTR _

, BYVAL vCookie AS DWORD _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[12] USING IDiscMaster_ProgressUnadvise (pthis, vCookie) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

RecordDisc

 

FUNCTION IDiscMaster_RecordDisc ( _
  BYVAL pthis AS DWORD PTR _

, BYVAL bSimulate AS LONG _

, BYVAL bEjectAfterBurn AS LONG _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[13] USING IDiscMaster_RecordDisc (pthis, bSimulate, bEjectAfterBurn) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

Close

 

FUNCTION IDiscMaster_Close ( _
  BYVAL pthis AS DWORD PTR _

  ) AS LONG


  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[14] USING IDiscMaster_Close (pthis) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

Page last updated on Sunday, 12 March 2006 23:58:52 +0100