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
Versionsinformation von meiner EXE anzeigen JAPBE
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
Code: Alles auswählen
#Version="1.83a"
mfG
Basti
enjoy life... while you can!
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
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
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
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")
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
