Oppure

Loading
13/11/13 2:30
sherof
ciao a tutti , come da titolo vorrei sapere un metodo per richiamare un programma esterno senza conoscere il percorso..
vi spiego io vorrei fare un programma che mi esegua i programmi che voglio io .. ho provato con system() e mi apre solo i programmi come notepad calcolatrice ecc .. ma quando voglio aprire per esempio explorer non me lo fa fare perche non è un programma di windows(?) di conseguenza l'unica soluzione che ho trovato è passargli come parametro il percorso insieme al nome del programma ma io voglio creare una funzione che mi esegua un programma esterno senza conoscere il percorso prima della compilazione, non so se mi spiego..
detto questo mi servirebbe o una funzione che mi esegua il programma appunto senza passargli il percorso o una funzione che mi restituisca il percorso dato il nome di un programma, grazie in anticipo :)
aaa
13/11/13 8:33
nessuno
Il sistema operativo trova i percorsi prendendoli dalla variabile d'ambiente PATH.

Se il percorso non è tra quelli indicati in PATH l'eseguibile non può essere trovato.

Quindi non esiste alcuna funzione che faccia quello che cerchi di fare tu.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
13/11/13 11:52
sherof
neanche un modo x trovarmi io il percorso dato il nome di un programma? :-|
aaa
13/11/13 13:16
nessuno
Puoi fare una ricerca in tutto il disco.

Puoi fare una ricerca nel registro.

Ma non puoi saperlo "magicamente".
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
13/11/13 14:23
sherof
non voglio saperlo magicamente .. non pretendo nemmeno perforza una funzione già pronta , mi basta sapere anche come posso fare una ricerca nel disco in c/c++
aaa
13/11/13 15:09
nessuno
Una singola ricerca in tutto il disco può anche impiegare molto tempo e molte risorse in termini di CPU. Non è una cosa raccomandabile ... (io butterei subito il programma che mi spazzola tutto il disco mandando al 100% la CPU ...).

In ogni caso, per la ricerca è meglio usare un banale algoritmo ricorsivo ma dato che dipende fortemente dal file system impiegato, dovrai utilizzare le API opportune (per Windows, ad esempio, le classiche FindFirstFile e compagnia bella, di cui trovi esempi ovunque).
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
13/11/13 15:26
pierotofy
Il mio blog: piero.dev
13/11/13 18:07
quello che non so come si chiama
Scusatemi se mi permetto, ma sono d'accordissimo con nessuno, è letteralmente un suicidio setacciare l'intero filesystem in cerca di un file che può stare ovunque, quantomeno posso consigliarti di memorizzarti in uno o più file i path degli eseguibili man mano li che trovi così da evitarti questo calvario ad ogni esecuzione
aaa