Copy CD/DVD to Hard Drive <_ tag = 0 id = outset > taskwin #exepath#\#exename#.log 0 <_ tag = 0 id = taskstate > no 400 <_ tag = 0 id = taskbottom > show 0 uncheck hide 1 <_ tag = 0 id = varset > <_ > continue Copy Files <_ > readonly 1 <_ > regsubkey Software\Perfect Automation\Programs <_ > dest #curdir# <_ > exit Exit <_ > autocopy 0 <_ > patcd CDDVD%i <_ tag = 0 id = sources expanded = 2 > <_ tag = 0 id = empty > 0 arrstr drives str drivelist drive drives = getdrives() foreach curd, drives { str var val if getdrivetype( curd ) == $DRIVE_CDROM { ( var = "drive".appendch( curd[0] )).lower() defmacro.set( var, curd ) if *drivelist : drivelist += ",\(var)" else : drivelist = var if !*drive : drive = var } } defmacro.set( "drivelist", drivelist) defmacro.set( "drive", drive ) <_ tag = 0 id = regget > curuser #regsubkey# <_ > Drive drive #drive# <_ > Dest dest #dest# <_ > patcd #patcd# #patcd# <_ > ReadOnly readonly 1 <_ tag = 0 id = form > 1 <_ > combobox Source CD/DVD drive: drive #drivelist# 150 <_ > folder Destination folder dest <_ > checkbox Clear Read-Only attribute readonly <_ > text <_ > checkbox Copy a lot of CD/DVD automatically autocopy <_ > edit Pattern for the regular CD/DVD patcd <_ > buttons ret continue,exit <_ tag = 0 id = outtext > Start Executing the program: #date# #time# Program filename: #exefile# <_ tag = 0 id = if expanded = 2 > <_ tag = 0 id = exit > exit 1 <_ > ret equali exit and <_ tag = 0 id = sources expanded = 2 > <_ tag = 0 id = empty > 0 str stemp defmacro.get("drive", stemp) stemp.del( 0,5 ) defmacro.set("drivel", stemp += ":\\") stemp+= "*.*" defmacro.set("src", stemp) <_ tag = 0 id = if expanded = 2 > <_ tag = 0 id = whilefile expanded = 2 > <_ tag = 0 id = message > warn Insert CD/DVD disc! msgret ok <_ > #src# cddvd 1 and <_ tag = 0 id = copy expanded = 2 > <_ tag = 0 id = if expanded = 2 > <_ tag = 0 id = setattr > <_ > #copyfile# <_ > readonly check and #src# #dest# all 1 1 1 1 <_ > autocopy uncheck and <_ tag = 0 id = if expanded = 2 disabled = 0 > <_ tag = 0 id = sources expanded = 2 > <_ tag = 0 id = eject > #drivel# eject <_ tag = 0 id = outtext > This CD/DVD will be copied into #destcd#... <_ tag = 0 id = whilefile expanded = 2 > <_ tag = 0 id = wait > pause 2 <_ > #src# cddvd 1 and <_ tag = 0 id = outset > logfile #dest#\cddvd.log 1 <_ tag = 0 id = copy expanded = 2 > <_ tag = 0 id = if expanded = 2 > <_ tag = 0 id = setattr > <_ > #copyfile# <_ > readonly check and #src# #destcd# all 1 1 1 1 <_ tag = 0 id = outset > taskwin #exepath#\#exename#.log 0 0 while 1 { str pattern destcd dest uint count = defmacro.getint("count") + 1 defmacro.set("count", count ) defmacro.get( "patcd", pattern ) defmacro.get( "dest", dest ) destcd = dest if *pattern { destcd.fappendslash() destcd.out4( pattern, count ) } defmacro.set("destcd", destcd ) $body$ } <_ > autocopy check and <_ tag = 0 id = regset > curuser #regsubkey# <_ > Dest #dest# <_ > Drive #drive# <_ > patcd #patcd# <_ > ReadOnly #readonly# <_ tag = 0 id = outtext > Finish Duration: #diftime# Finishing the program: #date# #time# New project show 2008-09 Alexey Krivonogov http://www.perfectautomation.com 1.1