Implementowanie innych programów do inno setup
Sprawdzenie spójności danych na koniec instalacji .
Podczas tworzenia instalatorów dla patchy ważne jest aby po uaktualnieniu plików programu wykazać czy program ma wpełni podmienione pliki i czy czegoś nie brakuje.
Błędna linijka w skrypcie, usunięty plik przez użytkownika lub przez antywirus mogą doprowadzić wysypywania się programu.
Aby wymusić sprawdzanie plików pod kątem zgodności będzie nam potrzebny program :
QuickSFV v2.36 X86!!!
Dostepny na stronie http://www.quicksfv.org/download.html
Nie będę opisywał jak działa ten program, tylko jak wpleść go w instalator aby ten za zgodą użytkownika sprawdzał pliki na końcu instalacji.
Otwieramy nasz skrypt i dodajemy w sekcji [RUN]
następująca linie:
Filename: "{app}\QuickSFV.exe"; Parameters: "o22y.sfv"; Description: "Sprawdz poprawnność plików"; Flags: postinstall hidewizard unchecked
Aby całość wyglądała tak:
Uwaga!!!
Funkcja : Parameters: "o22y.sfv"; tyczy się tylko dla danego przykładu. Jeśli twój plik z sumami kontrolnymi nazywa się inaczej to wtedy tą nazwę musisz wpisać w skrypcie i w pliku konfiguracyjnym QuickSFV.ini opisywany niżej.
Przykład:
Jeśli twój plik sfv nazywa się: bronek.sfv
to wpis w skrypcie powinien być: Parameters: "bronek.sfv" a w pliku ini. :
Signature=bronek
Teraz w moim przypadku do katalogu z plikami do skompilowania dodajemy jeszcze trzy pliki :
QuickSFV.exe ---> nasz program
QuickSFV.ini ---> plik konfiguracyjny. Jeśli go nie masz odpal raz QuickSFV.exe i go zamknij
o22y.sfv ---> informacje o plikach. Sumy kontrolne. Tworzenie tego pliku pomijam.
Edytujemy plik QuickSFV.ini i zmieniamy wartość signature na tę którę używamy w skrypcie:
Signature=o22y
Możemy już kompilować instalator.
Po skończonej instalacji użytkownik będzie musiał zaznaczyć ze chce takiego sprawdzenia plików po instalacji .
Gototwe.
Dzieki za poradnik.
OdpowiedzUsuńZ tego co piszesz wnioskuje ze plik "QuickSFV.exe" powinien znajdować się głównym katalogu programu z którego chcemy zrobić instalator. A jak powinna wyglądać linijka skryptu gdy chcemy dodać do instalatora możliwość instalacji zawartości folderu "redist" np DirectX itp.
Próbuje zrozumieć jak skrypt odnajdzie dany program dodatkowy który znajdzie się w innej lokalizacji niż katalog główny.
Wręcz identycznie. Ręcznie trzeba edytować ścieżki i dodawać wszystko z osobna, Zasadniczo jest to strasznie żmudne zadanie które trzeba zawsze powtarzać i lepiej się zdać tu jak już na polecenia #define.
OdpowiedzUsuńAle gdy bys chciał jednak ręcznie to robić to wtedy :
Filename: "{src}\Redist\Directx\Directx.exe"; Parameters: "silent"; Description: "Zainstaluj Directx"; Flags: postinstall hidewizard unchecked
Co do instalacji zawartości folderów to bym musiał się trochę wgłębi w temat, ale nie sądzę że inno setup posiada taka możliwość sam w sobie. Tu już możliwe że będzie potrzebny jakiś dodatkowy skrypt.
Właśnie o to mi chodziło, Dzieki z podpowiedz. Nie przeraza mnie ręczna edycja ścieżki, a z poleceniami #define całkiem nie wiem o co chodzi :D
OdpowiedzUsuńDodatkowe skrypty to raczej ludzie piszą sami dla siebie i w sieci chyba nie są łatwo dostępne.
Jak pobrać ?
OdpowiedzUsuńA ja mam Win 10 i dupka blada...nie działą mi ani ten program jaki tutaj radzisz pobrać, ani Simsy, wyskakuje pod koniec instalacji błąd. :( Buu
OdpowiedzUsuńBardzo fajnie napisane. Jestem pod wrażeniem i pozdrawiam.
OdpowiedzUsuń