Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    151

    [c++] accesso ad un file

    Salve a tutti.
    Ho il seguente problema. Ho un file eseguibile compilato in C++ in una cartella BIN e devo accedere ad un file che sta su una cartella DB allo stesso livello di BIN.

    Quando apro il file, uso un percorso relativo, del tipo "../DB/test.db" ed il tutto funziona.

    Il problema è quando lancio il programma da una cartella diversa da BIN, per esempio in questo modo:

    /dati/programmazione/test/bin/progr.exe

    che non riesco ad accedere alla posizione corretta del file.

    Come posso prendere il path da cui è stato lanciato il programma?

    Saluti

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Lo recuperi così:
    codice:
    int main(int argc, char*argv[]) {
       printf("%s\n",argv[0]);
    }
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    151
    Grazie mille della risposta.

    Il problema è che non ho il metodo main in quel modo, perchè l'applicazione ha una GUI grafica creata con le wxWidgets.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    151
    Ho trovato questo membro nella classe wxApp delle librerie WxWidgets.

    wxApp::argv

    wxChar ** argv

    Command line arguments (after environment-specific processing).

    Lo provo al più presto.

    Saluti

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    151

    [risolto] c++ accesso ad ul file

    Ho risolto così dalla classe principale derivata da wxApp prendo il path in questo modo:

    string s(this->argv[0]);


    Grazie mille
    Saluti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.