FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
procedure TForm1.CambiarVersionArchivo(const nombreArchivo: string;
nuevaVersion: string); var info: VS_FIXEDFILEINFO; handle, len: DWORD; datos, ptr: PChar; errorCode: DWORD; nuevaVersionInt: Integer; begin nuevaVersion := nuevaVersion.Replace('.', ''); nuevaVersion := nuevaVersion.PadRight(4, '0'); nuevaVersion := nuevaVersion.PadLeft(8, '0'); nuevaVersionInt := FileVersionToInteger(nuevaVersion); handle := BeginUpdateResource(PChar(nombreArchivo), False); if handle = 0 then RaiseLastOSError; len := GetFileVersionInfoSize(PChar(nombreArchivo), handle); if len = 0 then begin EndUpdateResource(handle, False); RaiseLastOSError; end; datos := AllocMem(len); try if not GetFileVersionInfo(PChar(nombreArchivo), handle, len, datos) then begin EndUpdateResource(handle, False); RaiseLastOSError; end; if VerQueryValue(datos, '\', Pointer(ptr), len) then begin Move(ptr^, info, SizeOf(info)); info.dwFileVersionMS := nuevaVersionInt; info.dwFileVersionLS := nuevaVersionInt; if not UpdateResource(handle, RT_VERSION, PChar(1), 0, datos, len) then begin errorCode := GetLastError; ShowMessage('UpdateResource Error: ' + IntToStr(errorCode)); EndUpdateResource(handle, False); RaiseLastOSError; end; end else begin errorCode := GetLastError; ShowMessage('VerQueryValue Error: ' + IntToStr(errorCode)); EndUpdateResource(handle, False); RaiseLastOSError; end; if not EndUpdateResource(handle, False) then begin errorCode := GetLastError; ShowMessage('EndUpdateResource Error: ' + IntToStr(errorCode)); RaiseLastOSError; end; finally FreeMem(datos); end; end; Algo asi? No termina de funcionar pero debe ser algo por el estilo |
#2
|
||||
|
||||
Por favor, no olvides usar las etiquetas para código:
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Cambiar datos (en runtime) de la versión de un ejecutable | dec | API de Windows | 4 | 26-10-2023 17:40:24 |
Saber la versión de un ejecutable | MAXIUM | API de Windows | 2 | 23-08-2014 04:04:59 |
Obtener la versión del ejecutable de una aplicación | dec | Trucos | 1 | 20-02-2009 09:30:31 |
como puedo hacer para cambiar un archivo de excel con versión 2.1 a versión 8.0 | RONPABLO | Servers | 4 | 23-01-2006 06:02:38 |
Leer versión de un archivo ejecutable | FerPetrei | Windows | 2 | 16-01-2004 20:41:42 |
|