Ver Mensaje Individual
  #12  
Antiguo 22-09-2016
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
Al estar involucrados diferentes bitness debe cuidarse bien los tipos de enteros elejidos...
Pasar de 32bits a 64bits tiene sus cosas.
No es lo mismo hacer un SizeOf(mivariable) siendo mivariable un tipo entero NativeInt en 32bits que en 64bits. En 32 son 4 bytes, en 64bits es el doble.
No descartaría que sea un error de mal pasado los parámetros como sugiere Ecfisa, pero yo miraría más allá.

Y también hay que tener mucho cuidado con los archivos cuando se trabajan con equipos de diferentes endianness y se estará intercambiando entre ellos. Lo que se suele estilar es escribir en un endian prefijado y hacer la conversión de ser necesario. Lazarus está bien preparado en esto, ya tiene las funciones LEToN y BEToN para convertir Little Endian y Big Endian al tipo Nativo, como su contraparte NToLE y NtoBE. Delphi no las tiene... o al menos no se las encontré yo.
Si bien es cierto que la enorme mayoría de las PC son LE, hoy de moda está usar los celulares y estos son ¡en su mayoría BE!

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita