FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Reemplazar texto en un .dfm
Soy de los dinosaurios que aún desarrollo en D7. La pregunta es la siguiente:
He desarrollado un método para traducir proyectos completos a otro idioma que en resumen hace lo siguiente: a) Determina los archivos ".pas" y ".dfm" del proyecto b) Extraigo todas las lineas de texto (previo pasaje del dfm de binario a texto) b) Lleno una tabla con los Caption, hints, etc, de todos los componentes involucrados... es decir: todo lo que se llena con palabras en el idioma del programador c) dejando un campo vacío el programador llena cada string de estos con su traducción en otro idioma. hecho esto tengo una tabla con tres campos y cientos de registros del tipo: archivo idioma1 idioma2 (este lo lleno a mano) unit1.pas Cerrar Close unit1.pas Botón uno Button one .... etc Que falta? Lo que no se hacer es una función que sustituya cada registro de idioma2 por los string que coincidan con idioma1. Puedo imaginarme que con Loadfromfile, sustituir todo y SaveToFile puedo hacerlo con los .pas pero no sé que hacer con los .dfm Alguien conoce una pieza de código que sustituya texto en un .dfm? |
#2
|
||||
|
||||
¿Lo dices por la antigüedad? Yo aún utilizo D3!
En cuanto a tu problema, hay programas que generan archivos .dfm o que importan datos de ellos, aunque la verdad no estoy puesto en el tema. Si mal no recuerdo el entorno Pascal Develop tiene una opción de "Importar formulario Delphi". Lo que no sé es si es de código abierto (para que le puedas echar un vistazo). Si es así igual en la red tienes la solución. Además la cuestión de los .dfm es que cambian en cada versión de Delphi (por eso yo no puedo abrir proyectos creados con versiones posteriores ) Siento no ser de más ayuda. Saludos. |
#3
|
||||
|
||||
Cita:
Saludos. |
#4
|
||||
|
||||
Pues porque es el que tengo legal, y estoy mudándome (o eso intento) al 100% software libre, no me interesa (económicamente) mudarme a una versión nueva. Y para una afición (sí, para mí la programación es una afición ) creo que me sirve el que tengo.
¿O es que todos juegan con las nuevas videoconsolas? Yo aún tengo por ahí la SNES, aunque hace cosa de un año que no la uso . Vaya, nos vamos del tema que proponía elcigarra. ¿Alguien puede ayudarle? Saludos. |
#5
|
|||
|
|||
Re:
Re: Reemplazar texto en un .dfm
Hola, fijate que el .dfm es un archivo de texto también por lo tanto podrías realizar el mismo procedimiento que con los .pas, abrilos con el bloc de notas y comprobalo.
Saludos. |
#6
|
||||
|
||||
Cita:
Hola. Verás, aunque en Delphi puedas editar un archivo .dfm en modo texto, realemente no son archivos de texto (al menos no en mi versión de Delphi). Y si no, pues prueba a abrirlos con el bloc de notas y comprobarlo. Saludos. |
#7
|
|||
|
|||
Bueno, en las primeras versiones de Delphi los .dfm se guardaban en formato binario, pero en las más recientes (no recuerdo si desde D6 o D7), puedes especificar que los .dfm se guarden en formato de texto plano...
Aun así, Delphi trae una utilidad de línea de comandos para convertir los .dfm de un formato a otro. El nombre no lo recuerdo ahora... Saludos... |
#8
|
||||
|
||||
Cita:
sin saber algo más (o algo así, no lo recuerdo bien). Saludos. |
#9
|
|||
|
|||
Modificar recursos
Creo que lo que necesitas, elcigarra, es traducir un programa que puede ser hecho con el programa ya compilado y listo.
Para esto tienes que modificar los recursos. Consulta la respuesta de seoane en este Tema: http://www.clubdelphi.com:80/foros/s...ad.php?t=38718 En Ejemplo35.zip encontraras una aplicacion que permite modificar un exe desde otro. Asi cambiando los recursos tendras el programa en otro lenguaje. Es una idea, espero que te sirva. Felices Fiestas |
#10
|
||||
|
||||
¡Hola!
Coincido en que una buena opción es manejar cadenas "ResourceString". ¿O sea que la mayoría de los desarrolladores Delphi, al día de hoy, somos unos dinosaurios? Tranquilo, Delphi 2007 promete mucho, y probablemente terminará desplazando a Delphi 7 (a la cual extrañaremos por haber sido una versión grande entre las grandes) por estar más completo, pero la cosa lleva su tiempo. Tal vez en el 2009 sea cuando alcance la nueva mayoría. Hay que ser realistas, pero caro, sin dejar de avanzar. Yo en unas semanas comenzaré con Delphi 2007, si el bolsillo me lo permite (o las promesas se cumplen ). Un dino-abrazo. Al González. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Reemplazar texto de encabezamiento y pie | toni.vi | Servers | 2 | 16-10-2007 11:36:50 |
Reemplazar texto en fichero HTML | Sr_Sombrero | Varios | 1 | 17-04-2007 20:01:50 |
Pregunta Inno Setup: ¿Cómo puedo reemplazar la barrita del wizard por texto? | Black_Ocean | Varios | 2 | 25-01-2007 09:41:10 |
Reemplazar Archivos en Uso | eduarcol | Noticias | 2 | 15-06-2004 12:58:06 |
Buscar y reemplazar | sur-se | Servers | 2 | 16-04-2004 19:36:16 |
|