Dodawanie wersji
tomaszos
Napewno wiesz co to jest wersja w pliku exe. Gdy klikniemy na plik prawym przyciskiem myszy i wejdziemy we właściwości to jest tam zakładka Wersja. I to mi chodzi. Jak dodać taką wersje do swojego programu? Są dwa sposoby. Pierwszy: W menu delphi klikasz Project a później Options wybierasz zakłedke Version Info, zaznaczasz ,,Include version information in project" i edytujesz.
A drugi, mówiąc skromnie wymyślony przezemnie (czekam na patent :D) jest bardziej skomplikowany. Najpierw uruchamiamamy notatnik i wpisujemy:
1 VERSIONINFO LOADONCALL MOVEABLE
FILEVERSION 1, 0, 0, 0
PRODUCTVERSION 1, 0, 0, 0
{
BLOCK "StringFileInfo"
{
BLOCK "040904E4"
{
VALUE "Autor", "cos tam/000"
VALUE "FileDescription", "cos tam/000"
VALUE "FileVersion", "1.0/000"
VALUE "InternalName", "cos tam/000"
VALUE "LegalCopyright", "brak/000"
VALUE "OriginalFilename", "nie powiem!/000"
VALUE "Data wydania", "13 Grudnia 1974/000"
VALUE "ProductName", "cos tam/000"
VALUE "ProductVersion", "1.0/000"
VALUE "co jest?", "nico/000"
VALUE "bardzo ważna iformacja", "ty żyjesz!/000"
VALUE "Comments", "blablabla/000"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0415 0x04B0
}
}
To jest kod w asseblerze. Każda wartość musi się kończyć znakami /000". Morzemy dodawać to co nam sie podoba (przykładem jest wpis ,,co jest?") i odejmować! Np.
1 VERSIONINFO LOADONCALL MOVEABLE
FILEVERSION 1, 0, 0, 0
PRODUCTVERSION 1, 0, 0, 0
{
BLOCK "StringFileInfo"
{
BLOCK "040904E4"
{
VALUE "bardzo ważna iformacja", "ty żyjesz!/000"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0415 0x04B0
}
}
Niektóre wpisy windows tłumaczy. A oto one:
FileDescription - Opis (nie pojawi się na liście ale w polu tekstowym nad nią)
FileVersion - Wersja pliku (j.w.)
LegalCopyright - Prawa autorskie (j.w.)
InternalName - Nazwa wewnętrzna
OriginalFilename - Pierwotna nazwa pliku
ProductName - Nazwa produktu
ProductVersion - Wersja produktu
Comments - Komentarze
No to teraz zapisujemy ten plik i zmieniamy rozszerzenie na rc (np. plik.rc). Teraz skorzystamy z narzędzia które znajduje się w katalogu ...DelphiBin o nazwie brcc32.exe. Kopiujesz go do folderu z plikiem plik.rc. Program jest w DOS'ie to trzeba włączyć okienko DOS'a i wejść do tego katalogu. W DOS'ie do folderu przenosimy sie tak:
cd NazwaFolderu
lub:
cd NazwaFolderuDrugiFolder
jeśli chcesz przejść o folder wyżej to stosujesz polecenie:
cd..
a jak już jesteś to wpisujesz polecenie:
brcc32.exe plik.rc
i już mamy plik z rozszeżeniem .res! Gdy włączysz go w Restoratorze to zobaczysz sekcje Wersja. Teraz tylko wystarczy skopiować do ktalogu z źródłem programu i w kodzie delphi pod napisem {$R *.dfm} wpisać {$R plik.res}. Teraz trzeba tylko skopilować i gotowe!
Jak coś to pisz: tomasz_j@hoga.pl!
Jak piszesz jakiś artykuł to pisz w Wordzie najlepiej albo zainstaluj sobie Firefox'a bo z pisownią u Ciebie nie najlepiej :P
"Napewno" "przezemnie" "Morzemy" "rozszeżeniem" <ściana>
...To jest kod w asseblerze. ..
Swietny dowcip :D:D:D
Po co się męczyć (Mr. Muscle cię wyręczy) :)
A jeśli potrzebuję w czasie działania programu (runtime) odczytać info o wersji pliku EXE i np. wkleić do komponentu typu TEdit? Przydałaby się podobna procedura.
jak kto woli. jak na mnie jest bez sensu bo moim sposobem moge dać to co mi się podoba i odjąć a tak nie.
hmm.a wybierając MENU/OPTIONS nie łatwiej?? :)
Przedchwilą poprawiłem błędy!