logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Delphi: ShellExecute uruchamia plik exe z pulpitu zamiast z ini

Wild_Master_Airborne 11 Sty 2011 21:50 1644 6
REKLAMA
  • #1 8992888
    Wild_Master_Airborne
    Poziom 13  
    Posty: 115
    witam mam pewien problem,
    posiadam kod
    Kod: text
    Zaloguj się, aby zobaczyć kod


    Wszystko działa lecz gdy program odczytuje ścieżkę z ini to odpala exe tak jakby z pulpitu tzn, zwykły program "jednego exekowy" tzn exe nie posiada dodatkowych plikow,dll,iwd, itd. to jest git ale gdy próbuje odpalić grę to wysypuje błędy z brakami plików. A gdy nie ma pliku ini to program odpala przez OpenDialog i jest dobrze,
  • REKLAMA
  • #2 8993041
    Dżyszla
    Poziom 42  
    Posty: 7074
    Pomógł: 1095
    Ocena: 224
    OpenDialog jednoczesnie ustawia zdaje się katalog roboczy. W tym Twoim kodzie w ShellExecute nie podajesz katalogu roboczego.

    BTW
    Kod: text
    Zaloguj się, aby zobaczyć kod

    =
    Kod: text
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • #3 8993314
    Wild_Master_Airborne
    Poziom 13  
    Posty: 115
    Katalogu roboczego nie definuje ścieżka? jeśli nie to jak zdeklarować katalog roboczy do tego przykładu?
  • REKLAMA
  • Pomocny post
    #4 8993917
    Dżyszla
    Poziom 42  
    Posty: 7074
    Pomógł: 1095
    Ocena: 224
    Nacisnąć F1 i czytać!

    Cytat:
    HINSTANCE ShellExecute(

    HWND hwnd, // handle to parent window
    LPCTSTR lpOperation, // pointer to string that specifies operation to perform
    LPCTSTR lpFile, // pointer to filename or folder name string
    LPCTSTR lpParameters, // pointer to string that specifies executable-file parameters
    LPCTSTR lpDirectory, // pointer to string that specifies default directory
    INT nShowCmd // whether file is shown when opened
    );
  • REKLAMA
  • #5 8995606
    Wild_Master_Airborne
    Poziom 13  
    Posty: 115
    No i nadal nie działa,
    Kod: text
    Zaloguj się, aby zobaczyć kod
  • #6 8995702
    arnoldziq
    VIP Zasłużony dla elektroda
    Posty: 5376
    Pomógł: 789
    Ocena: 299
    Nie działa, bo akurat parametr, na którym Ci zależy zostawiasz pusty.
    Dżyszla napisał:
    LPCTSTR lpDirectory, // pointer to string that specifies default directory
  • #7 8995957
    Wild_Master_Airborne
    Poziom 13  
    Posty: 115
    wiem, już to odpaliłem, dzięki.

Podsumowanie tematu

✨ Użytkownik napotkał problem z uruchamianiem pliku exe z lokalizacji określonej w pliku ini, zamiast z pulpitu. W kodzie Delphi, po odczytaniu ścieżki z ini, program uruchamia plik, ale nie działa to zgodnie z oczekiwaniami. Użytkownicy sugerują, że problem może wynikać z braku określenia katalogu roboczego w funkcji ShellExecute. W odpowiedziach podano również, że należy upewnić się, że odpowiednie parametry są przekazywane do funkcji. Po kilku próbach użytkownik potwierdził, że udało mu się rozwiązać problem.
Wygenerowane przez model językowy.
REKLAMA