if exist "%ProgramFiles%\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" call "%ProgramFiles%\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" call "%ProgramFiles(x86)%\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64
Este mensaje, visto con un editor hexadecimal, me sale en un programa de 32 bits y en otro de 64 bits compilados con Visual Studio.Antonio Linares wrote:En 64 bits está esta cadena: "This program cannot be run in DOS mode"
Este mensaje NO me sale en programas de 32 bits ni de 64 bits compilados con Visual Studio. Sin embargo compilado con BCC7, el de 32 bits, si sale este mensaje.Antonio Linares wrote:En 32 bits aparece esta: "This program must be run under Win32"
#ifndef _C_TYPES
#define _C_TYPES
#define VOID 0
#define BYTE 1
#define CHAR 2
#define WORD 3
#ifdef __CLIPPER__
#define _INT 4 // conflicts with Clipper Int()
#else
#define _INT 7
#endif
#define BOOL 5
#define HDC 6
#define LONG 7
#define STRING 8
#define LPSTR 9
#define PTR 10
#define _DOUBLE 11 // conflicts with BORDER DOUBLE
#define DWORD 12
#define LONGLONG 13
#endif
BOOL WINAPI GetBinaryType(
_In_ LPCTSTR lpApplicationName,
_Out_ LPDWORD lpBinaryType
);
Por otro lado la dll Kernel32.dll dispone de dos funciones GetBinaryType: GetBinaryTypeA (ANSI) y GetBinaryTypeW (Unicode), y no se cual usar.DLL32 FUNCTION GetBinaryType(cFile AS <no se que poner>, nType AS <no se que poner>) AS LONG PASCAL FROM "GetBinaryTypeW" LIB "Kernel32.dll"
Usando la función GetBinaryTypeA me da el error de "Programa.exe dejo de funcionar...". Usando GetBinaryTypeW funciona el ejecutable pero no hace nada, no me devuelve la variable nType "modificada".Antonio Linares wrote:DLL32 FUNCTION GetBinaryType(cFile AS LPSTR, nType AS PTR ) AS LONG PASCAL FROM "GetBinaryTypeA" LIB "Kernel32.dll"
#include "FiveWin.Ch"
FUNCTION main()
public cFichero:="Programa.exe",nTipo:=-1
GetBinaryType(cFichero,@nTipo)
MsgInfo(nTipo,"Tipo de fichero")
return nil
DLL32 FUNCTION GetBinaryType(cFile AS LPSTR, nType AS PTR) AS LONG PASCAL FROM "GetBinaryTypeA" LIB "Kernel32.dll"
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: TOTOVIOTTI and 41 guests