C/Visual C - problemas con winreg.h en rsxntdj...

 
Vista:

problemas con winreg.h en rsxntdj...

Publicado por chelo (7 intervenciones) el 25/09/2002 21:02:58
Hola amigos:
He tenido problemas para compilar un programa que usa la libreria winreg.h para modificar el registro de windows usando la utilidad rsx de rsxntdj. Me podria decir alguien que comandos uso para compilar un programa de tal naturaleza. A modo de informacion les cuento que tengo instalado djgpp version 2.03 y rsxntdj ; y que los programas que he hecho tanto en c como c++ y en w32 se compilado bien salvo estos ultimos que usan la libreria anders, aunque puede ser que esto se deba a mi falta de experiencia con esta librería .
gracias....
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

Compilación de programas que usan winreg.h con DJGPP y RSXNTDJ

Publicado por Alejandro (913 intervenciones) el 24/03/2025 17:48:12
Para compilar un programa que utiliza la biblioteca `winreg.h` en un entorno de desarrollo como DJGPP con RSXNTDJ, es importante asegurarte de que tienes configuradas correctamente las rutas y que estás utilizando los comandos adecuados. Aquí te dejo una guía paso a paso para compilar tu programa.

1. Configuración del entorno



Asegúrate de que tienes las siguientes configuraciones:

- DJGPP: Debes tener DJGPP instalado y configurado correctamente. Asegúrate de que las variables de entorno `DJGPP` y `PATH` estén configuradas para incluir la ruta a DJGPP.
- RSXNTDJ: Asegúrate de que RSXNTDJ esté instalado y que las bibliotecas necesarias estén disponibles.

2. Archivos necesarios



Asegúrate de que tienes los siguientes archivos:

- `winreg.h`: Este archivo de encabezado debe estar disponible en tu entorno de desarrollo.
- `windows.h`: Este archivo también es necesario, ya que `winreg.h` depende de él.

3. Comandos de compilación



Para compilar un programa que utiliza `winreg.h`, puedes usar el siguiente comando en la línea de comandos de DJGPP:

1
gcc -o mi_programa.exe mi_programa.c -lwinmm -lws2_32

O si estás utilizando C++:

1
g++ -o mi_programa.exe mi_programa.cpp -lwinmm -lws2_32

Notas:
- `-o mi_programa.exe`: Especifica el nombre del archivo ejecutable de salida.
- `mi_programa.c` o `mi_programa.cpp`: Especifica el archivo fuente que deseas compilar.
- `-lwinmm` y `-lws2_32`: Estas son bibliotecas de Windows que pueden ser necesarias dependiendo de las funciones que estés utilizando en tu programa.

4. Ejemplo de código



Aquí tienes un ejemplo simple de cómo podrías usar `winreg.h` para modificar el registro de Windows:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <windows.h>
#include <winreg.h>
#include <iostream>
 
int main() {
    HKEY hKey;
    LONG result;
 
    // Abrir una clave del registro
    result = RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\MiAplicacion", 0, KEY_ALL_ACCESS, &hKey);
    if (result == ERROR_SUCCESS) {
        // Modificar un valor en el registro
        const char* value = "NuevoValor";
        RegSetValueEx(hKey, "MiValor", 0, REG_SZ, (const BYTE*)value, strlen(value) + 1);
        RegCloseKey(hKey);
        std::cout << "Valor modificado exitosamente." << std::endl;
    } else {
        std::cerr << "Error al abrir la clave del registro." << std::endl;
    }
 
    return 0;
}

5. Compilación y ejecución



1. Guarda el código en un archivo llamado `mi_programa.cpp`.
2. Abre la línea de comandos de DJGPP.
3. Navega al directorio donde guardaste el archivo.
4. Ejecuta el comando de compilación mencionado anteriormente.
5. Si la compilación es exitosa, ejecuta el programa generado.

Conclusión



Si sigues estos pasos y aseguras que todas las configuraciones y archivos necesarios están en su lugar, deberías poder compilar y ejecutar tu programa que utiliza `winreg.h` sin problemas. ¡Buena suerte, Chelo!
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