[Lazarus-es] problema con Unicode y CreateFileW
islanis en infomed.sld.cu
islanis en infomed.sld.cu
Jue Oct 16 14:50:10 CEST 2014
Hola Jose
Te envío el proyecto por acá
http://www15.zippyshare.com/v/6383648/file.html
para que le eches un ojo y me digas por fin que problemas tiene
porque me he cansado de debugearlo de arriba abajo y no soy capaz de
darme cuenta solo de
que es lo que en realidad tiene, lo envío por acá pues no tengo
acceso a internet además
de que es correo mío permite un adjunto mayor del que uso en la
lista, pero bueno a medidas que
vayas esclareciendo el problema con las codificaciones del proyecto
pues vas comentándomelo
en la lista si quieres para saber que tengo que cambiar y bueno
aprovechas ahí y lo explicas
porque soy nuevo en lazarus y nunca toqué tan profundo pascal,
cuando estaba en el 10mo grado
lo que dimos ahí fue delphi y muy por encima por lo que no tengo
nada de experiencia en el tema
, el proyecto está lleno de puntos de ruptura porque he estado
debugeandolo como te comentaba
sin exito alguno, he hecho algunos cambios, si te fijas dondequiera
que aparezca una línea
comentariada y debajo una muy similar es que la original que venía
en el proyecto es la comentariada
y la que está debajo es la que tiene los cambios realizados por mí,
he hecho esto con solo aquellas
que tenían utf8Encode y utf8Decode y las he cambiado por algo como esto
ConvertEncoding(varstr,GuessEncoding(varstr),'utf8')
Porque me pareció que era lo correcto al ver que había
codificaciones que eran CP1252 que me di cuenta
gracias a la función GuessEncoding entonces ni idea tampoco pero
igual trataba de convertirlas a
utf8 pero bueno ahora el copiador crea las carpetas pero el
contenido de ellas no los copia
y antes copiaba bien las carpetas sin tilde y sus contenidos, y de
las carpetas que tenían
tilde solo copiaba sus carpetas pero no su contenido, ahora tanto
pata las con tilde como
las que no tienen tilde hacen lo mismo "solo copia las carpetas", lo
otro es que en existen 2 dll
que deben estar siempre junto con el ejecutable que compiles, y
bueno en install esta e setup compilado
en nsis para que sea lo primero que hagas, instalarlo y luego que lo
instales cierras el de la instalación
y ejecuta el del proyecto y es así como hago yo, además el proyecto
depende de un componente que esta
en lo que te encío tambien que se llama SCcomponent compilas el
lazarus con el y luego abres ya el
proyecto, porque la instalación pone cosas en el registro que luego
el mismo ejecutable usa luego para que no te de errores y dolores de
cabeza por gusto, entonces espero que me
ayudes con esto te lo agradeceré siempre, el objetivo es corregir
este copiador que es muy bueno
pero tiene muchos errores este es uno de ellos, ya he corregido
muchos ya, pero de este
no salgo llevo días, es que también no entiendo mucho esto de las
codificaciones de
el trabajo con ficheros, espero que me vayas enseñando a medida que
hagas cambios.
Saludos Ale
José Mejuto <joshyfun en gmail.com> escribió:
> El 15/10/2014 a las 21:08, islanis en infomed.sld.cu escribió:
>> Hola José, acabo de corregir uno de los problemas de por que el hash me
>> da mal, es que no estaba creando la carpeta acentuada, entonces lo que
>> hice fué como bien dices tu acá lo que hice fué sustituir la función
>> DirectoryExists por CreateDirectoryUTF8 y ya por lo menos cuando pasa
>> por esa rutina pues devuelve true cuando verifica nuestra carpeta
>> "Áfolder" que antes no lo hacía ahora crea la carpeta vacía e igual
>> cuando va a copiar me da error cuando comienza a copiar su contenido su
>> contenido estoy buscando la forma de subir todo el proyecto en un
>> compactado a algún lugar para entonces ir a la par, porque me parece que
>> de esta forma todo es muy lento y a veces estamos por lugares distintos,
>> de momento sigo revisando a ver si encuentro el problema.
>>
>
> Hola,
>
> 99% seguro es un problema Ansi<->UTF8<->WideString. Si quieres
> puedes subir un ZIP a donde te parezca (zippyshare, uploaded, etc.)
> y me lo bajo y mañana le pego un ojo a todo eso.
>
>
> --
>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
--
Nunca digas nunca, di mejor: gracias, permiso, disculpe.
Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas
Infomed: http://www.sld.cu/
More information about the Lazarus-es
mailing list