Brief app knocked up to write ISO's to CD (or DVD?) under Vista using IMAPI2 as per instructions here
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=751508&SiteID=1.
Thank you Henry Gabryjelski!
First run "VistaCDWriter LIST" to find the index of your CD writer (can be confused by things like daemon tools)
Then run "VistaCDWriter Write <DriveNumber> <ISO File> to write to disk
C:\>VistaCDWriter LIST
Number of drives : 2
Drive 0
UID : \\?\ide#cdromsony_dvd_rw_dw-g120a____________________mys4____#5&87ae64f&0&0.0.0#{53f56308-b6bf-11d0-94f2-00a0c91efb8b}
VendorId : SONY
ProductId : DVD RW DW-G120A
ProductRevision : MYS4
VolumeName : \\?\Volume{a2065bc2-740f-11db-ac23-806e6f6e6963}\
Drive 1
UID : \\?\scsi#cdrom&ven_ix2520c&prod_wzg054h&rev_1.0#5&1f40f92b&0&000000#{53f56308-b6bf-11d0-94f2-00a0c91efb8b}
Warning : HRESULT 80004005 encountered recorder->InitializeDiscRecorder
C:\>VistaCDWriter WRITE 0 z:\temp\ubuntu-6.10-desktop-i386.iso
Drive UID : \\?\ide#cdromsony_dvd_rw_dw-g120a____________________mys4____#5&87ae64f&0&0.0.0#{53f56308-b6bf-11d0-94f2-00a0c91efb8b}
Calling SHCreateStreamOnFileEx on:
z:\temp\ubuntu-6.10-desktop-i386.iso
Sectors per second : 0
Calling discFormat2Data->Write
Fatal Error : HRESULT c0aa0202 encountered discFormat2Data->Write
COM error codes can probably be found here...
http://msdn2.microsoft.com/en-us/library/aa366209.aspx
The above error c0aa0202 was 0xc0aa0202 was "E_IMAPI_RECORDER_MEDIA_NO_MEDIA" eg. There is no disk in the drive. I've just noticed E_IMAPI_RECORDER_MEDIA_UPSIDE_DOWN,
the existance of which I find more amusing than I should :)
Zipped executable (33k)
Source code(5k!)
Not written for elegance, I'm afraid.