Page 1 of 1
Harbour Msvc
Posted:
Tue Jul 02, 2013 3:32 pm
by fgondi
Al linkar una aplicación con Harbour y MsVc me aparece los siguientes errores:
FiveHCm.lib(KEYBRD.obj) : error LNK2019: símbolo externo _SendInput sin resolver al que se hace referencia en la función _HB_FUN_SENDKEY
FiveHCm.lib(MEM.obj) : error LNK2019: símbolo externo _GlobalMemoryStatusEx sin resolver al que se hace referencia en la función _HB_FUN_NEXTMEM
Re: Harbour Msvc
Posted:
Tue Jul 02, 2013 6:12 pm
by Antonio Linares
Fernando,
Las librerias que tienes que usar son FiveH32.lib y FiveHC32.lib para MSVC 2010/2012
Usa FWH\samples\buildh32.bat para construir
Re: Harbour Msvc
Posted:
Tue Jul 02, 2013 8:39 pm
by fgondi
Antonio,
Muchas gracias.
Ni me había dado cuenta que no usaba esas librerias
Re: Harbour Msvc
Posted:
Wed Jul 03, 2013 11:50 am
by fgondi
Genero sin ningún error la aplicación con FWH, Harbour y MsVc express 2012.
Uso las librerías FWH y Harbour para 32 bits y SDK v7.1A
Pruebo la aplicación en windows 7 de 64 y funciona bien. En el administrador de tareas me dice que estoy ejecutando una aplicación de 32 bits.
Paso el ejecutable a un Windows 2000 Server y al ejecutar me aparace el mensaje "No es una aplicación Win32 valida"
¿Que hago mal?
Re: Harbour Msvc
Posted:
Wed Jul 03, 2013 2:57 pm
by fgondi
Lo mismo me pasa si genero con samples\tutor02 con buildh32.
En windows 2000 no me deja ejecutarlo.
También lo he probado a crear tutor02 desde otro ordenador donde tengo instalado Windows 7 de 32 bits.
Re: Harbour Msvc
Posted:
Wed Jul 03, 2013 3:27 pm
by Antonio Linares
Fernando,
Usa PEInfo:
http://www.pazera-software.com/products/peinfo/ para analizar tu EXE y mira las DLLs de Windows que usa.
Es posible que alguna de ellas
no este presente en Windows 2000.
Re: Harbour Msvc
Posted:
Wed Jul 03, 2013 4:09 pm
by fgondi
Solucionado:
he variado las opciones de link, incluyendo:
/subsystem:windows,5.01
http://msdn.microsoft.com/es-es/library/fcc1zstk(v=vs.80).aspxYa aprovechando he mirado como quitar los mensajes LNK4006
P.E. FiveHC32.lib(MSGS.obj) : warning LNK4006: _HB_FUN_MSGYESNO ya se definió en vGhe_ExtAlsis.LIB(extfw2.obj); segunda definición omitida
se lleva a cabo con la opción /Ignore:4006