C/Visual C - Libreria de Grabacion de cd

 
Vista:

Libreria de Grabacion de cd

Publicado por Gonzalo (2 intervenciones) el 29/04/2003 19:18:12
Hola a Todos, me dispongo a hacer un pequeño programilla que haga copias de seguridad, que las comprima y que luego las grabe en un cd.
Yo se que rar se le puede atacar con comandos para que me comprima los datos, pero lo que ahora me preocupa es grabar en cd. Yo tb se que en linux hay librerias en c++ para grabar cd incluso e visto esos comandos, asi que he pensado que tambien puede haberlo para que funcione en windows. Asi que si sois tan amables y me podeis ayudar a saber que librería tengo que utilizar, y si alguno sabe la sintaxis mejor.
O sino la opcion b es atacar a un programa de grabacion de cds pero que sea de ms-dos.
Darme las respuestas que podais y gracias de antemano que quiero ponerme cuanto antes a programar esta herramienta.

un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Librerías para grabar CDs en Windows

Publicado por Alejandro (1153 intervenciones) el 19/05/2025 22:49:58
Para tu proyecto de hacer copias de seguridad, comprimirlas y grabarlas en un CD en Windows, aquí tienes algunas opciones que puedes considerar:

Opción 1: Usar la API de Windows (IMAPI)



Windows proporciona la **Image Mastering API (IMAPI)**, que te permite grabar CDs y DVDs. Aquí tienes un ejemplo básico de cómo puedes utilizar IMAPI en C++:

1. Incluir las bibliotecas necesarias:
Asegúrate de tener las bibliotecas de IMAPI disponibles en tu entorno de desarrollo.

2. Código de ejemplo:
Aquí tienes un fragmento de código que muestra cómo puedes usar IMAPI para grabar un CD:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <windows.h>
#include <imapi2.h>
 
int main() {
    // Inicializa COM
    CoInitialize(NULL);
 
    // Crea un objeto de grabación
    MsftDiscRecorder2 *recorder = NULL;
    CoCreateInstance(CLSID_MsftDiscRecorder2, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&recorder));
 
    // Aquí puedes agregar más lógica para seleccionar el disco y grabar los datos
 
    // Limpia
    recorder->Release();
    CoUninitialize();
    return 0;
}

Este es solo un punto de partida. Necesitarás implementar la lógica para crear la imagen del disco y manejar los errores.

Opción 2: Usar un programa de línea de comandos



Si prefieres usar un programa de grabación de CDs que funcione desde la línea de comandos, puedes considerar CDBurnerXP o ImgBurn, que son herramientas populares y tienen opciones de línea de comandos.

1. CDBurnerXP: Puedes usar su interfaz de línea de comandos para grabar CDs. Consulta la documentación de CDBurnerXP para obtener detalles sobre cómo usarlo.

2. ImgBurn: También tiene una interfaz de línea de comandos que puedes utilizar para grabar imágenes ISO en CDs. La sintaxis básica sería algo como:

1
ImgBurn.exe /MODE:WRITE /SRC:"ruta\a\tu\imagen.iso" /DEST:Z: /START

Asegúrate de reemplazar `"ruta\a\tu\imagen.iso"` con la ruta a tu archivo ISO y `Z:` con la letra de la unidad de tu CD.

Conclusión



Ambas opciones son viables, pero usar IMAPI te dará más control sobre el proceso de grabación si prefieres hacerlo directamente desde tu aplicación. Si decides usar un programa externo, asegúrate de manejar adecuadamente la ejecución de comandos y la captura de errores.

¡Buena suerte con tu proyecto, Gonzalo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar