FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Fecha de compilacion
Hola a todos.
Tengo una duda con fechas. Como puedo obtener la fecha de compilacion o de build de un ejecutable? Quiero poner esta fecha en un formulario AbouBox en el que ya tengo puesta la versión con un GetAppVersion Saludos Josep |
#2
|
|||
|
|||
Prueba este código : Usa el Unit Windows
Function TForm1.DaVersion : String;
{Se pueden pedir los siguientes datos: CompanyName FileDescription FileVersion InternalName LegalCopyright OriginalFilename ProductName ProductVersion } type PaLeerBuffer = array [0..MAX_PATH] of char; var Size, Size2 : DWord; Pt, Pt2, Pt3 : Pointer; Mensa,Idioma : string; begin Size := GetFileVersionInfoSize(PChar (Application.Exename), Size2); if Size > 0 then begin GetMem (Pt, Size); GetFileVersionInfo (PChar (ParamStr (0)), 0, Size, Pt); VerQueryValue( Pt, '\VarFileInfo\Translation',Pt2, Size2); Idioma:=IntToHex( DWord(Pt2^) ,8 ); Idioma:=Copy(Idioma,5,4)+Copy(Idioma,1,4); VerQueryValue( Pt,Pchar('\StringFileInfo\'+Idioma+'\'+'FileVersion'),Pt2, Size2); if Size2 > 0 then mensa := mensa +'Version: '+Copy(PaLeerBuffer(Pt2^),1,Size2)+#13+#13; Result := Copy(PaLeerBuffer(Pt2^),1,Size2); FreeMem (Pt); end; end; |
#3
|
||||
|
||||
Gracias por la respuesta.
Esta opcion ya la habia visto, pero la implementé ya que no veo por ningun lado es la variable con la fecha que es loq ue me interesa. Saludo Josep |
#4
|
||||
|
||||
Buscalo en esta sección, la respuesta ya esta.
|
#5
|
||||
|
||||
Hola jafera.
Probá de este modo:
Llamada de ejemplo:
Saludos. Última edición por ecfisa fecha: 23-08-2010 a las 20:51:20. |
#6
|
||||
|
||||
Hola, estoy intentando implementar la funcion que me pasasteis y me lanza este error:
[Error] ModulDades.pas(192): Declaration of 'filegetdatetime' differs from previous declaration En private declaro la funcion function FilegetdateTime : TDateTime; Luego coloco la funcion y me lanza este error. Que puedo hacer mal? Gracias Josep |
#7
|
||||
|
||||
Hola Jafera.
Si usás la funcion tál como está no te tendría que dar ese mensaje. Pero si la querés declarar como privada de un Form, seria:
El por qué del error es fácil de ver si comparas: Cita:
Cita:
Saludos. Última edición por ecfisa fecha: 25-08-2010 a las 20:19:51. |
#8
|
||||
|
||||
Para sumar algo:
Este tema lo consulté una vez y llegué a la siguiente solución. A mí me ha funcionado de mil maravillas, pero requiere instalar las CNWizards (que de todas maneras son muy recomendables). http://www.clubdelphi.com/foros/showthread.php?t=65520 Saludongons. |
#9
|
||||
|
||||
Ok ecfisa, era un problema de colocacion del código en los forms.
Con el ejemplo que pusiste del chkdsk funciona de perlas pero si le pongo la ruta de mi exe me da un error: Debugger Exception Notification --------------------------- Project Bombers.exe raised exception class EConvertError with message 'Invalid argument to date encode'. Process stopped. Use Step or Run to continue. --------------------------- OK Help Que puede ser? Lord_Delfos, vi tu codigo, tengo CnPack instaldo pero intente seguir el tutorial y no tuve narices a sacarlo en mi aplicación. Es que hay muchas cosas que aun se me escapan, cree el script, con su .pas, etc pero luego no consegui ejecutarlo de ninguna manera. Creo que se quedó algo en el tintero. Volveré a intentarlo de nuevo. Gracias a todos Josep |
#10
|
||||
|
||||
Para que corra hay que marcar la casilla fmBeforeCompile y listo. Uno no corre el script, se corre él solo al compilar.
|
#11
|
||||
|
||||
Cita:
¿ Podés enviar el código donde se genéra el error ? Saludos. Última edición por ecfisa fecha: 26-08-2010 a las 17:08:31. |
#12
|
||||
|
||||
Hola de nuevo Jafera.
No es necesario que pongas el código, ya ví donde está el problema. El procedimiento llama a FileOpen para obtener el Handle: E intenta abrir un archivo (el que se está ejecutando) que yá está abierto. ( Perdón por la obviedad... ) Así que no te va a servir para obtener el handle de la aplicación que está en ejecución. Voy a investigar un poco a ver si se puede tomar algún atajo... Si logro algo te comento. Saludos. |
#13
|
||||
|
||||
Gracias ecfisa.
Ahora que ya habia aprendido a colocar la funcion en su sitio y que me las daba felices pues me sale esto, jejeje. Gracias por vuestras respuestas y si sabemos como obtener los datos del fichero "abierto" pues perfecto, sino, intentaremos la solucion de Lord_Delfos la cual me parece correcta pero que no supe implementar en mi aplicacion todo y el mini tutorial que colgo. Igual no llego a más y en vez de Delphi debo volver al antiguo Basic con sus lineas 10.20.30...., bromas a parte me encantan los retos y como soy obstinado no parare hasta sacarlo. Josep |
#14
|
||||
|
||||
Hola Jafera.
Estaba seguro se podría lograr, solo había que saber donde buscar y es en TWin32FindData... Probá este código:
Ejemplos de llamada:
Saludos. Última edición por ecfisa fecha: 26-08-2010 a las 23:05:41. |
#15
|
||||
|
||||
Ahora si que funciona, solo que se debe borrar el exe antes de hacer un nuevo build para que no guarde la ultima fecha de creacion, pero esto es lo de menos.
Gracias Josep |
#16
|
||||
|
||||
Lo he solucionado cambiando un parámetro el la linea siguiente:
Asi accedo a la fecha de ultima modificacion. Ademas la variable dt y la asignacion del valor dt no son necesarios, funciona pasando directamente el valor a la etiqueta o edit que tengamos en el form
Saludos Josep Última edición por jafera fecha: 27-08-2010 a las 09:52:47. |
#17
|
||||
|
||||
Cita:
Si, sólo hay que cambiar 'ShowMessage()' por 'Label3.Caption:='... Saludos. Última edición por ecfisa fecha: 28-08-2010 a las 22:58:43. |
#18
|
||||
|
||||
Hola a todos de nuevo.
Lord_Delfos, ya implementé el codigo generado con el CnWizards, funciona de p.m. es justo lo que quería. Me costó un poco entender el tema del script, me faltaba compilarlo para obtener el .inc y una vez comprendido, pues a funcionar. Como decimos por aquí, una vez le vez el trasero sabes que es gallina. Saludos a todos y muchas gracias, sois unos profesores esplendidos. Ahora me quiero liar con el gnu gettext para poder usar mi aplicacion en castellano y catalan, algun tutorial para delphi_adictos_torpones como yo? Gracias por adelantado Josep |
#19
|
||||
|
||||
De nada.
Cita:
jajaajaja... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Directivas compilacion? | drykea | Varios | 1 | 03-05-2007 14:51:15 |
Compilación de componentes | Velia | Varios | 1 | 06-09-2006 06:00:31 |
Errores De CompilaciÓn | nax | Varios | 1 | 20-08-2005 07:54:24 |
Error Compilaciòn | amesoft | Varios | 1 | 07-08-2005 19:09:23 |
Velocidad de compilacion | kalimero | Varios | 2 | 10-11-2004 14:06:12 |
|