Ayudaaaaaaaaaaaa! Jajaja para quemar CD
Bien pues tengo dudota así de como puedo quemar un cd, estoy usando VFP9 SP2 para desarrollar y me he atascado en eso, tengo este pedazo de código, lo encontré por ahí pero me hace el formateo del cd y ya, no me quema archivos, no se dónde mandarle el parámetro de la carpeta que quiero que queme, lo he modificado un poco a como estaba:
FUNCTION GrabarCD(MyCD,vaciar,cRuta)
local cPaciente, nPos
DECLARE INTEGER Sleep IN Win32API INTEGER
** Objecto APPLICATION
sApp = CREATEOBJECT("Shell.Application")
** Objecto SHELL
sh = CREATEOBJECT("WScript.Shell")
sh.CurrentDirectory = cRuta
** Abrimos Mi PC
ns = sApp.NameSpace(17)
sApp.Open(17)
Sleep(2800)
** Abrimos unidad de grabación
np = ns.ParseName(MyCD)
** Damos la orden de grabar el CD
np.InvokeVerbEx("Grabar estos arc&hivos en un CD")
np.InvokeVerb()
** Esperamos mientras se activa el asistente
DO WHILE NOT sh.appactivate("Grabar un disco")
* WAIT "" TIMEOUT 2
ENDDO
** Insertamos el número de orden y la fecha actual
nPos = at("\",cRuta,4)
cPaciente=right(cRuta,len(cRuta)-nPos)
sh.appactivate("Asistente para grabación de CD")
sh.SendKeys(cPaciente)
** Iniciamos grabación
sh.appactivate("Asistente para grabación de CD")
sh.SendKeys("{Enter}")
** Esperamos mientras se cierra el asistente
DO WHILE sh.appactivate("Asistente para grabación de CD")
WAIT "" TIMEOUT 5
ENDDO
IF vaciar == .T.
** Borramos los archivos del directorio temporal de grabación de CD's
MyTarget = sh.regread("HKCU\Software\Microsoft\Windows\" + ;
"CurrentVersion\Explorer\Shell Folders\CD Burning")
deltree(MyTarget,.F.)
** Liberamos el objecto SHELL
RELEASE sh
Endif
endfunc
O si tu sabes cómo pueda hacerlo de otra forma por favor ayuda, este código me había gustado porque usa lo que ya trae windows sin usar otras cosas, en fin...
Ahhh pues dije: ya que tengo el disco formateado pues le voy a copiar la carpeta que quiero, por lo que estuve buscando y encontré:
oFS = CREATEOBJECT('Scripting.FilesystemObject')
ofs.CopyFile("C:\Lab_tmp\Generados\20100326\315","E:\")
Pero me marca este horror:
OLE error code 0x800a0035: Unknow COM status code.
En fin, espero me puedas ayudar, muchas gracias de antemano...
FUNCTION GrabarCD(MyCD,vaciar,cRuta)
local cPaciente, nPos
DECLARE INTEGER Sleep IN Win32API INTEGER
** Objecto APPLICATION
sApp = CREATEOBJECT("Shell.Application")
** Objecto SHELL
sh = CREATEOBJECT("WScript.Shell")
sh.CurrentDirectory = cRuta
** Abrimos Mi PC
ns = sApp.NameSpace(17)
sApp.Open(17)
Sleep(2800)
** Abrimos unidad de grabación
np = ns.ParseName(MyCD)
** Damos la orden de grabar el CD
np.InvokeVerbEx("Grabar estos arc&hivos en un CD")
np.InvokeVerb()
** Esperamos mientras se activa el asistente
DO WHILE NOT sh.appactivate("Grabar un disco")
* WAIT "" TIMEOUT 2
ENDDO
** Insertamos el número de orden y la fecha actual
nPos = at("\",cRuta,4)
cPaciente=right(cRuta,len(cRuta)-nPos)
sh.appactivate("Asistente para grabación de CD")
sh.SendKeys(cPaciente)
** Iniciamos grabación
sh.appactivate("Asistente para grabación de CD")
sh.SendKeys("{Enter}")
** Esperamos mientras se cierra el asistente
DO WHILE sh.appactivate("Asistente para grabación de CD")
WAIT "" TIMEOUT 5
ENDDO
IF vaciar == .T.
** Borramos los archivos del directorio temporal de grabación de CD's
MyTarget = sh.regread("HKCU\Software\Microsoft\Windows\" + ;
"CurrentVersion\Explorer\Shell Folders\CD Burning")
deltree(MyTarget,.F.)
** Liberamos el objecto SHELL
RELEASE sh
Endif
endfunc
O si tu sabes cómo pueda hacerlo de otra forma por favor ayuda, este código me había gustado porque usa lo que ya trae windows sin usar otras cosas, en fin...
Ahhh pues dije: ya que tengo el disco formateado pues le voy a copiar la carpeta que quiero, por lo que estuve buscando y encontré:
oFS = CREATEOBJECT('Scripting.FilesystemObject')
ofs.CopyFile("C:\Lab_tmp\Generados\20100326\315","E:\")
Pero me marca este horror:
OLE error code 0x800a0035: Unknow COM status code.
En fin, espero me puedas ayudar, muchas gracias de antemano...
Respuesta
1