PDA

Ver la Versión Completa : No me lee versión correcta de bpl en delphi 11


tiqui_loquito
27-11-2023, 23:57:07
Hola a todos, estoy trabajando con Delphi 11 comunity, anteriormente estaba usando delphi 10.3 comunity

Yo he creado un bpl, cada vez que hago un ajuste realizo el cambio de versión.

Tengo un programa que me lee la versión de la bpl, este es el codigo



procedure TFrmPrincipal.mniSelecionandoRutaClick(Sender: TObject);
var
FileName, Dir,
MsgUsr, MsgApp : String;
begin

Dir := 'C:\';
FileCtrl.SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt],SELDIRHELP);


FileName := Dir+ '\Servicios.bpl';
if (FileName <> EmptyStr) and (FileExists(FileName)) then
begin


MsgApp := 'GetFileVersion';
MsgUsr := Format('%s v%s',[ExtractFileName(FileName),GetFileVersion(FileName)]);
MessageBox(Handle, PChar(MsgUsr), PChar(MsgApp), MB_OK + MB_ICONINFORMATION);
end
else
Application.MessageBox('No se encuentra Servicios.bpl en la ruta',
'GetFileVersion', MB_OK + MB_ICONSTOP);

end;



Resulta que si leo una bpl que compile con delphi10.3 me lee de manera correcta la versión, pero si leo una bpl que compile con delphi11 me carga la ultima versión que compile con delphi 10 (1.1.0.4)

No se si me haga entender

Tengo las versiones;

(compilada con delphi 10.3) 1.1.0.1 me la lee bn
(compilada con delphi 10.3)1.1.0.2 me la lee bn
(compilada con delphi 10.3)1.1.0.3 me la lee bn
(compilada con delphi 10.3)1.1.0.4 me la lee bn
(compilada con delphi 11)1.1.0.5 me la lee con versión 1.1.0.4
(compilada con delphi 11)1.1.0.6 me la lee con versión 1.1.0.4

Adjunto el programa que lee la versión y las bpls

https://drive.google.com/file/d/1gkElnKBYgq_D97X6u5yMggzLKtI15c2s/view?usp=drive_link

Neftali [Germán.Estévez]
28-11-2023, 11:15:47
A mi algo así me funciona correctamente con verisones de EXE's y BPL's compilados con calquer versión de Dlephi.

var AMajor, AMinor, ABuild: Cardinal;
GetProductVersion(FileName, AMajor, AMinor, ABuild);
memo1.Lines.Text := Format('GetProductVersion %d.%d.%d',[AMajor, AMinor, ABuild]);

NOTA: El adjunto que has puesto solicita permisos para descarga. Deberías eliminar esa restricción.

tiqui_loquito
28-11-2023, 15:22:37
Buenos días Neftali

Ya quite la restricción, se me paso ese detalle.

Voy a probar lo que me dices.

Muchas gracis

Neftali [Germán.Estévez]
29-11-2023, 08:29:27
(compilada con delphi 11)1.1.0.5 me la lee con versión 1.1.0.4



En el link que as puesto, esta versión (1.1.0.5) realmente tiene esta información de versión:


1 VERSIONINFO
FILEVERSION 1,1,0,4
PRODUCTVERSION 1,0,0,0
FILEOS 0x4
FILETYPE 0x1
{
BLOCK "StringFileInfo"
{
BLOCK "040904E4"
{
VALUE "FileDescription", "Servicios"
VALUE "FileVersion", "1.1.0.4"
VALUE "ProgramID", "com.embarcadero.Servicios"
VALUE "ProductName", "Servicios"
VALUE "ProductVersion", "1.0.0.0"
}
}

BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0409 0x04E4
}
}

(Extraída con ResourceHacker (https://www.angusj.com/resourcehacker/))

Por lo tanto la información que te está devolviendo el procedimiento es correcta.
La versión 1.1.0.6 no está incluída en el attachment.

tiqui_loquito
29-11-2023, 17:35:07
Hola Neftali

Te adjunto el video del proceso que hago del cambio de versión de la bpl y no se pq al consultar me sigue diciendo que es 1.1.0.4 si le he colocado 1.1.0.6

Te adjunto la bpl que compilo en el video

Quizás algo este haciendo mal pero no se que sea, pq es el proceso que siempre hago

https://drive.google.com/drive/folders/1l2msuWRQP9VXNFFbreThhyK3mvEQF8Oh?usp=sharing

tiqui_loquito
29-11-2023, 17:41:12
Me respondo, borre varios archivos que estaban compilados con la versión anterior de delphi, los depure y ya me sale la versión que es.

No cai en cuenta hasta que hice el video

Suele pasar que las cosas obvias se nos pasen desapercibidas.

Muchas gracias Neftali por siempre tomarte el tiempo de leer y colaborarnos

Un abrazo desde Colombia