Wywoływanie kodu w czasie instalacji programu.

0

Witam!
Pracuję w Visual c#, chciałem zapytać czy da się wywołać jakiś kod w czasie/pod koniec instalacji. Chodzi o zapisanie pewnej wartości do pliku tekstowego.

0

ale jakiej instalacji?
Odpalasz .exe, wiec nie musisz nic instalowac. Chyba, ze napisales swoj wlasny instalator (mogles tez uzyc jakiegos).
Wiec pytanie co to za instalator?

0

Chodzi o to, że jeśli komuś wyślę plik .exe, on musi go zainstalować na swoim urządzeniu. Ja chcę żeby w czasie instalacji/pierwszego użycia aplikacji zapisać pewną wartość do pliku .txt.
Chodzi o inny komputer niż mój.

0

Jakbym wiedział jak zrobić instalator to bym nie zadawał tego pytania.

0

Ale co to za problem instalator zrobić?

Robisz instalator, który wypakowuje z siebie samego folder rar do folderu, na koniec pliku instalator dopisujesz plik rara, plik rar jest czytany od tyłu pliku, a exe od przodu, i tak oto zrobiłeś sobie instalator z skompresowanymi plikami :)

0

No to się dowiedz jak się tworzy instalator. Np
Inno Setup.
Jak wyślesz komuś sam exe to on nic nie instaluje. Jak exe korzysta z jakiejś biblioteki niestandardowe to się nie uruchomi bez niej.

0
jacek.placek napisał(a):

No to się dowiedz jak się tworzy instalator. Np
Inno Setup.

Nie dowiaduj się, po prostu użyj Inno Setup.
A jeśli to ma być jakieś działanie przy pierwszym uruchomieniu, to rozpoznaj pierwsze uruchomienie:
Odczytaj z rejestru jakiś konkretny klucz. Jeśli go nie ma, to znaczy, że program jest uruchomiony pierwszy raz. I wtedy możesz sobie zrobić co tam chcesz. Oczywiście musisz zapisać potem wartość w rejestrze, żeby przy kolejnym uruchomieniu już wiedzieć, że to nie jest pierwsze. Rozumiesz?

0

Nie rozumiem tutaj: ''odczytaj z rejestru''. Nw co to jest, ani czy odczytuje się z tego tak jak z pliku.

I czy jeśli komuś prześlę to bez rejestrów?

0

Zobaczyłem coś o tym Inno Setup, ale jak włożyć tam trochę kodu C#?

0

C# się nie da. Możesz albo napisać jakimś maly program, który cos zrobi po instalacji i się usunie albo napisać coś w pascalopodovnym języku.
Ale najpierw KONIECZNIE się dowiedz co to jest rejestr.

0

Na około idziecie. Jeśli ma to być prosty exe, to tam bym sprawdzał File.Exist..., czy dany plik istnieje, np. w katalogu roboczym i jeśli nie to go tworzył. Niemniej to strasznie lamerskie podejście które niesie sporo zagrożeń. Tak na serio to bym trzymał te dane albo w rejestrze, albo w folderze AppData(https://social.msdn.microsoft.com/Forums/vstudio/en-US/67159d80-eacb-41d9-911b-7f520715a074/how-to-use-the-appdata-folder?forum=csharpgeneral). Do instalacji i konfiguracji (generowanie pliku) natomiast użył bym https://wixsharp.codeplex.com. Zachowujemy stos C#, bo InnoSetup dobrze sprawdza się w przypadku pisania apek dla Delphi, ale używania jego zamiast Wix'a jest lekko karkołomne, a Wix zrobi fajnie i prosto *.msi

1
JanuszKodingu napisał(a):

Nie rozumiem tutaj: ''odczytaj z rejestru''. Nw co to jest, ani czy odczytuje się z tego tak jak z pliku.

I czy jeśli komuś prześlę to bez rejestrów?

Naucz się najpierw zupełnych podstaw. Czym jest rejestr, co to AppData, jak działa C# (co to .NET, co to CLR). Dopiero później bierz się za programowanie. To dobra rada. W między czasie poczytaj jak działa Windows (komunikaty). Bo przekładając to na język ludzki - nie wiesz jak działa śrubokręt, a chcesz skręcić meble z Ikei.

1 użytkowników online, w tym zalogowanych: 0, gości: 1