Seite 1 von 1
Versionsinformation von meiner EXE anzeigen JAPBE
Verfasst: 01.02.2005 10:08
von gonimaus
Hallo,
kann ich die Versionsinformation, die ich bei den Projekteinstellungen in JAPBE eintragen kann, irgendwie auslesen, damit ich diese z. B. in der Titelleiste meines Programmes anzeigen kann?
Ich erhöhe meine Versionsnummer und muß dann jedesmal die Titelleiste dazu anpassen.
Vielen Dank für Eure Hilfe
Verfasst: 01.02.2005 13:45
von sbehrens
Ob
das geht weiß ich nicht, aber du könntest eine Konstante Deklarieren, in der deine Versionsnummer enthalten ist.
Dann müsstest du nur noch die Konstante ändern und die Versionsinfo unter 'Project Options'.
mfG
Basti
Verfasst: 01.02.2005 13:54
von gonimaus
Hallo Basti,
genau das will ich nicht machen. Ich will nur an einer einzigen Stelle ändern müssen.
Toll wäre es, wenn es ein Makro gäbe, welches die Info aus der Projekteinstellung übernimmt und vor dem Compilieren in den Code einfügt. Wenn ich den Joker %build% einsetze, zählt dieser die Versionen hoch und ich brauche mich nicht mehr darum zu kümmern.
Gruß Gonimaus
Verfasst: 01.02.2005 14:25
von bobobo
die stehen direkt mit im quelltext .. werden nur nicht angezeigt
öffnen ne PB-Datei die du mit dem jaPBe erstellt hast mal mit dem Notepad (o.ä.) und schau Dir die letzten Zeilen an.
Verfasst: 01.02.2005 18:59
von ts-soft
Weiß jetzt leider nicht mehr wer der Original-Autor ist:
Code: Alles auswählen
Procedure.s GetFileVersion(FileSpec.s)
Dummy.l
*Buffer
BufferLen.l
VerBuffer.VS_FIXEDFILEINFO
VerPointer.l
VerBufferLen.l
FileVersion.s
If OpenLibrary(0, "version.dll")
*GFI_Size = IsFunction(0, "GetFileVersionInfoSizeA")
*GFI_Info = IsFunction(0, "GetFileVersionInfoA")
*GFI_Value = IsFunction(0, "VerQueryValueA")
If *GFI_Size And *GFI_Info And *GFI_Value
; get size of version information buffer
BufferLen = CallFunctionFast(*GFI_Size, FileSpec, @Dummy)
If BufferLen
; allocate buffer and get version information
*Buffer = AllocateMemory(BufferLen)
CallFunctionFast(*GFI_Info, FileSpec, 0, BufferLen, *Buffer)
; find file version and copy into structure
CallFunctionFast(*GFI_Value, *Buffer, "\", @VerPointer, @VerBufferLen)
CopyMemory(VerPointer, VerBuffer, VerBufferLen)
; build file version string "x.x.x.x"
FileVersion = Str((VerBuffer\dwFileVersionMS & $FFFF0000) >> 16) + "." + Str(VerBuffer\dwFileVersionMS & $0000FFFF) + "." + Str((VerBuffer\dwFileVersionLS & $FFFF0000) >> 16) + "." + Str(VerBuffer\dwFileVersionLS & $0000FFFF)
EndIf
EndIf
CloseLibrary(0)
EndIf
; return file version string
ProcedureReturn FileVersion
EndProcedure
Debug GetFileVersion("C:\Programme\Internet Explorer\iexplore.exe")
Verfasst: 01.02.2005 19:05
von GPI
#jaPBe_ExecuteBuild
Verfasst: 02.02.2005 00:13
von gonimaus
Hallo GPI,
ganaus das wars. SUUUPER

.
Gibt es noch mehr so Konstanten?
DANKE auch an alle anderen.
TS-Soft. Dein Code-Beispiel hat mir auch sehr geholfen.
Viele Grüße
Gonimaus