Cargando api en memoria?

Iniciado por ØnLy, 21 Enero 2011, 04:20 AM

0 Miembros y 1 Visitante están viendo este tema.

ØnLy

Saludos , es mi primer post po aca y aprovecho para felicitarlos
por su comundad...

Mi Duda es la siguiente acabo de escribir este codigo
que deberia abrir la bandeja de CDs al ejecutarse

#include <windows.h>
#include <stdio.h>

typedef long (*AbrirCD)(LPCTSTR ,LPTSTR ,UINT,HANDLE);

int main()
{
long lpRe;

AbrirCD _AbrirCD = (AbrirCD)GetProcAddress(LoadLibrary("winmm.dll") ,"mciSendString");
lpRe= _AbrirCD("Set CDAudio Door Open Wait" , NULL , 0 ,NULL);

if(lpRe != 0)
   printf("Bandeja Abierta Correctamente");
else
 printf("Error AbriendoBandeja");

return 0;
}


Pero por alguna razon me tira error al ejecutarse( No al Compilarlo :)

Estoy Con Code::Blocks + GCC , bajo windows 7.....

Gracias de Antemano....

Space.Medafighter.X

El API tiene dos variantes, una para unicode (mciSendStringW) y otra para ascii (mciSendStringA), al usar GetProcAddress deberías hacer un :

AbrirCD _AbrirCD = (AbrirCD)GetProcAddress(LoadLibrary("Winmm.dll") ,"mciSendStringA");

ØnLy

 :o , como se me ha pasado esa xD , bueno muchas gracias por la respuesta!
Ya esta funcional.....

BlackZeroX

.
que hubo chico.

En lo personal obtaria por la llamada directa a mciSendStringA

Dulces Lunas!¡.
The Dark Shadow is my passion.