PDA

Visualizza la versione completa : [c++] accesso ad un file


senise
22-02-2009, 00:14
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

shodan
22-02-2009, 00:57
Lo recuperi cosė:


int main(int argc, char*argv[]) {
printf("%s\n",argv[0]);
}

senise
22-02-2009, 01:54
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.

senise
22-02-2009, 02:20
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

senise
22-02-2009, 02:35
Ho risolto cosė dalla classe principale derivata da wxApp prendo il path in questo modo:

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


Grazie mille
Saluti

Loading