Wyszukanie i uruchomienie pliku [DELPHI]

Tak jak w temacie. Chcę aby po naciśnięciu przycisku “uruchom grę” program przeszukał cały komputer aby znalazł plik “PRZYKŁAD.exe” a nie tak, że muszę podawać ścieżkę do tego pliku, bo ludzie mają różnie zainstalowaną grę. Chcę aby to było zautomatyzowane. Da się coś takiego zrobić?

Nie wiem czy takie przeszukiwanie będzie dobre. Zajmie bardzo długo czasu. Jeśli ten plik jest razem z plikiem wykonywalnym gry, to możesz pobrać sobie ścieżkę z parametrów uruchomienia aplikacji(pierwszy parametr). Jeśli nie, to poczytaj o operacjach na plikach w WinAPI.

Większość instalowanych programów zapisuje conieco do rejestru, zatem można by z niego próbować wyciągnąć ścieżkę instalacji zamiast przeszukiwać dysk/i.

O… Dzięki za szybkie odpowiedzi. A w jaki sposób przeszukać rejestr?

http://msdn.microsoft.com/en-us/library/ms724880(VS.85.aspx

Szukać tak prostych rzeczy się nie umie?

Hmm… Ciężko się tam połapać co jest do czego. Może mi ktoś wytłumaczyć konkretniej? Programuje w delphi od 2 dni… :roll: Nie mam pojęcia jak tę funkcję wykorzystać, a bardzo tego potrzebuje.

P.S - Ten poszukiwany plik to plik wykonywalny gry.

Edit:

Aa… Prosił bym też o sam kod do wstawienia do Delphi 7. Jakiś przykładowy, który wykonuje tę funkcję bo sam klucz już znalazłem.

george32801 , przypominam jednak, że na forum nie otrzymasz gotowca, bowiem podchodziłoby to pod “pracę domową”. Możesz co najwyżej oczekiwać od nas wskazówek.

Ah… To przepraszam. :slight_smile:

To jak pomoże mi ktoś? Z Delphi programuje przez 2 dni wiec nie wiem jak ja mam to zrobić. :frowning: Może chociaż ktoś da mi linka do jakichś instrukcji? Potrzebne mi to jest bo tworzę program konfiguracyjny do mojej modyfikacji więc potrzebuję coś takiego aby “wyciągnęło” mi z rejestru ścieżke do pliku gry. (opcja uruchom grę)

http://4programmers.net/Delphi/Kompendium/Rozdział_6

http://www.pcworld.pl/artykuly/45939/Delphi.i.Rejestr.html

http://4programmers.net/Delphi/Gotowce/Moduł_obsługi_rejestru,_ini_dla_Delphi

http://4programmers.net/Delphi/Gotowce/Klucze_rejestru

przykład wykrywania wersji windowsa: http://4programmers.net/Delphi/FAQ/Rejestr/Jak_wykryć_wersję_Windows_na_podstawie_Rejestru_

więcej: http://www.google.com/search?client=ope … 8&oe=utf-8

Przeczytałem to kilka razy ale dalej nie wiem jak to wykorzystać do mojego problemu… :oops:

Jak podać programowi ścieżkę danego klucza rejestru aby go wykorzystał do uruchomienia aplikacji? :oops:

Edit:

Jestem w takim momencie:

procedure TForm1.Button1Click(Sender: TObject);

var

  Reg : TRegistry;

  TF : TextFile;

  Value : String;

begin

  AssignFile(TF, 'Ścieżka.txt');

  ReWrite(TF);

  Reg := TRegistry.Create;

  try

    Reg.RootKey := HKEY_CURRENT_USER;

    Reg.OpenKey('SOFTWARE\Digital Paint\Paintball2\', False);


  Value := Reg.ReadString(INSTDIR.Text);


  Writeln(TF, 'INSTDIR.Text);

  finally

      Reg.Free;

      TF.Free;

   end;

end;

Próbuję to uruchomić ale się nie da. :frowning: Czemu? Nie wiem. Tu chodzi o to, że program ma znaleźć klucz o nazwie “INSTDIR” (w którym jest ścieżka pliku) i z niego ją wyczytać i zapisać do pliku “ścieżka.txt”. Potem musi uruchomić plik “Paintball2.exe” z tej ścieżki. Jak to zrobić by działało?

Oświadczam, że to NIE JEST żadna praca domowa ani inne zadanie/polecenie. Sam po prostu chcę się nauczyć tego języku. Pozdrawiam. Myślę, że mi szybko pomożecie.

Nigdy nie miałem większej styczności z Pascalem i podobnymi, ale to bym dał rade napisać.

Zamiast “Reg.ReadString(INSTDIR.Text)”, powinno być “Reg.ReadString(“INSTDIR”)”. Wtedy w zmiennej “Value” mamy wartość tego klucza i robimy z nim co chcemy.

Zaznaczam, nie wiem czy to działać będzie.

Już sobie poradziłem. Dzięki za pomoc. :slight_smile: