Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/09/2011, 07:50
Jor1980
 
Fecha de Ingreso: mayo-2011
Mensajes: 72
Antigüedad: 11 años, 3 meses
Puntos: 1
problema compilando este código de un ejemplo

Hola estoy siguiendo un tutorial, y al compilar esté simple código me da errores:

Código:
#include <windows.h>
#include "detours.h"

#pragma comment(lib, "detours.lib")

BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
	switch (ul_reason_for_call) {
		case DLL_PROCESS_ATTACH: {
			DisableThreadLibraryCalls(hModule);
			// Apply the hook
		}
	}
	return TRUE;
}

typedef HMODULE (WINAPI *LoadLibrary_t)(LPCSTR);
LoadLibrary_t orig_LoadLibrary; // holds address of original non-detoured function


// Our hooked LoadLibrary
HMODULE WINAPI LoadLibrary_Hook ( LPCSTR lpFileName ) 
{
	HMODULE hM = orig_LoadLibrary( lpFileName ); // keep functionality

	return hM;
}

// When the dll loads
orig_LoadLibrary = (LoadLibrary_t)DetourFunction((LPBYTE) LoadLibraryA, (LPBYTE) LoadLibrary_Hook );
El error que me envía al compilar es este:


1>------ Operación Generar iniciada: proyecto: dll, configuración: Debug Win32 ------
1>Compilando...
1>dllmain.cpp
1>c:\users\jorge\documents\visual studio 2008\projects\dll\dll\dllmain.cpp(30) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
1>c:\users\jorge\documents\visual studio 2008\projects\dll\dll\dllmain.cpp(30) : error C2373: 'orig_LoadLibrary' : nueva definición; modificadores de tipo distintos
1> c:\users\jorge\documents\visual studio 2008\projects\dll\dll\dllmain.cpp(18) : vea la declaración de 'orig_LoadLibrary'
1>c:\users\jorge\documents\visual studio 2008\projects\dll\dll\dllmain.cpp(30) : error C2440: 'inicializando' : no se puede realizar la conversión de 'LoadLibrary_t' a 'int'
1> No existe un contexto en el que sea posible realizar esta conversión
1>El registro de compilación se guardó en el "file://c:\Users\Jorge\Documents\Visual Studio 2008\Projects\dll\dll\Debug\BuildLog.htm"
1>dll - 3 errores, 0 advertencias
========== Generar: 0 correctos, 1 incorrectos, 0 actualizados, 0 omitidos ==========

¿Alguien me puede orientar para saber cómo corregirlo?