Jump to content

CD/DVD Burning UDF


monoceres
 Share

Recommended Posts

Hi!

Here's the first preview of my Disc burning UDF, it uses the windows built in COM object IMAPI2 for burning.

Features:

  • Burning data CD & DVD
  • Determine a drives burning capacity
  • Burn ISO files
  • Ejecting/Closing drives
  • Erasing CD-RW / DVD-RW

XP users may have to install the KB932716 update to have this working.

Please give me feedback on this since it's the first time I seriously use COM objects.

Enjoy :)

IMAPI2.au3

(Previous downloads: 862)

IMAPI2_Example.au3

Edited by monoceres

Broken link? PM me and I'll send you the file!

Link to comment
Share on other sites

  • Replies 70
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Cool!!,

may I suggest something? I had this add-on for my Total Commander, in which you could burn data onto CD/DVD by copy(F5)ing files from your HDD list to CD/DVD list, so it would be cool if you could establish your script to have this option, "burn as you add data to the CD/DVD", useful for fast data adding to the CD/DVD, like small pictures or doc files, etc...

Link to comment
Share on other sites

Richard, thank you very much :)

@sandin

If you mean like "on the fly" burning I don't know if that's possible with the IMAPI2 interface.

If it's possible I add it to my to-do list :P

Currently I'm trying to add iso support and the possibility to choose write speed. I also need to have more error checking.

:P

Broken link? PM me and I'll send you the file!

Link to comment
Share on other sites

ya, I meant "on the fly", unfortunately I found disappointing information @ http://forums.microsoft.com/msdn/ShowPost....99&SiteID=1 (question No. 6) :P

That's a bit sad.

Oh and could someone with XP confirm that the example is working?

I haven't been able to test it on a xp machine.

:)

Edited by monoceres

Broken link? PM me and I'll send you the file!

Link to comment
Share on other sites

I tested it, and I get this error in imapi2.au3:

......  IMAPI2.au3 (52) : ==> Variable must be of type "Object".:
$iCount = $oDiscmaster.Count()
$iCount = $oDiscmaster^ ERROR

p.s. my OS is Win XP SP3, I have downloaded KB932716, but on installation I get this msg:

---------------------------
KB932716 Setup Error
---------------------------
Setup has detected that the Service Pack version of this system
is newer than the update you are applying.

There is no need to install this update.
---------------------------
OK   
---------------------------
Link to comment
Share on other sites

I tested it, and I get this error in imapi2.au3:

......  IMAPI2.au3 (52) : ==> Variable must be of type "Object".:
 $iCount = $oDiscmaster.Count()
 $iCount = $oDiscmaster^ ERROR

p.s. my OS is Win XP SP3, I have downloaded KB932716, but on installation I get this msg:

---------------------------
 KB932716 Setup Error
 ---------------------------
 Setup has detected that the Service Pack version of this system
 is newer than the update you are applying.
 
 There is no need to install this update.
 ---------------------------
 OK   
 ---------------------------
Seems very weird, the discmaster object is the most basic object in the entire script. The only explanation is that IMAPI2 somehow isn't installed correctly.

Could be useful! Thanks!

Btw, does it support .iso and .img?

I'm working on it :P

http://www.autoitscript.com/forum/index.ph...c=73684&hl=

@All

Thank you so much for showing interest in this :)

Broken link? PM me and I'll send you the file!

Link to comment
Share on other sites

I tested it (the example) and got the following erro:

C:\Program Files\AutoIt3\Include\IMAPI2.au3 (52) : ==> Variable must be of type "Object".:
$iCount = $oDiscmaster.Count()
$iCount = $oDiscmaster^ ERROR
->15:29:37 AutoIT3.exe ended.rc:1
Edited by ludocus
Link to comment
Share on other sites

I found a bug :P

After script works is done (burning done) process Autoit3.exe don`t terminate. So add this code in your UDF:

Func OnAutoitExit()
    If ProcessExists(@AutoItPID) Then
    ProcessClose(@AutoItPID)
    EndIf
EndFunc
:)
Haven't been able to reproduce but I'll add it anyways, it doesn't hurt to do a extra check :P

Broken link? PM me and I'll send you the file!

Link to comment
Share on other sites

  • 3 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...