Ringrazio anticipatamente chi sia in grado di rispondermi.
C'è un modo per lanciare da un programma C un altro programma eseguibile? Ad esempio in un menu... ad una certa scelta mi lancia il file pincopallo.exe?
Ringrazio anticipatamente chi sia in grado di rispondermi.
C'è un modo per lanciare da un programma C un altro programma eseguibile? Ad esempio in un menu... ad una certa scelta mi lancia il file pincopallo.exe?
Mi associo con un altra domanda, visto che è inutile aprire un nuovo 3d :quipy:
Più in generale, è possibile prendere in variabile un file presente sul OS che esegue il programma?
Ad es io ho nel mio computer un file chiamato CIAO.txt in
/home/maiosyet
Lancio il mio programmino da shell ed esso mi prende il mio CIAO.txt e magari me lo stampa ecc?
Suppongo ce se è possibile fare questo si possa rispondere quindi anche alla domanda di zaknafein...![]()
Thanx![]()
includi <stdlib.h>
poi...
system("C:\\percorso\\mio_eseguibile.exe");
n.b. attenzione ai doppi backslash.
n.b. con system() si possono chiamare tutti i comandi della shell.
...Terrible warlords, good warlords, and an english song
Grazie ho fatto un po' di prove e devo dire che la cosa mi ha un po' turbato...Originariamente inviato da Johnny_Depp
includi <stdlib.h>
poi...
system("C:\\percorso\\mio_eseguibile.exe");
n.b. attenzione ai doppi backslash.
n.b. con system() si possono chiamare tutti i comandi della shell.![]()
Ho creato dei banalissimi listati che creavano e cancellavano a mio piacere cartelle, si potrebbero formattare dischi fissi, prelevare gli hash delle pwd da un sistema...
Ho provati a passarli all'antivirus e non me li riconosce infetti ovviamente...chiunque potrebbe mandrami un simile file per email e magari installarmi un trojan nel pc...
Non è un tantino pericoloso?![]()
Oppure mi vedo già il lamerazzo che mi manda un allegato, io lo scansiono con l'antivisus e non trovo nulla si sospetto, e quello poi magari in 2 righe di codice, ad es facendo wget prelevando un visrus, salvandolo sul diso fisso e aprendolo magari siccome l'eseguibile di fatto l'ho aperto io l'antivirus non se ne accorge in tempo e addio pc...
Come prevenire certe sgradevoli situazioni? :master:
Grazie della delucidazione
I miei intenti non sono di questo tipo, mi serviva generare più eseguibili perchè ho scritto un programma per computer vecchi, e aprire un singolo file enorme è più dispendioso che aprirne tanti al momento opportuno, non trovate? :quote:
Per la pericolosità mi associo, ma credo che il sistema operativo blocchi chiamate a formattazioni o eliminazione di cartelle davvero importanti quali quelle di sistema... in ambito C++ con un Try dovrebbe fallire...
Per il resto è vero, puoi eliminare file e distruggere cartelle... ma lo potevi già fare con le funzioni standard del C o scritte di persona... ricordo che Windows l'hanno scritto in C / C++ :gren:
curiosità.. ho rogrammato qualcosa sotto linux per l'uni e si usa exec.... è una primitiva linux o funge anche su winzozzo?
è una funzione (o meglio famiglia di funzioni) specifica per ambienti Unix...Originariamente inviato da }gu|do[z]{®©
curiosità.. ho rogrammato qualcosa sotto linux per l'uni e si usa exec.... è una primitiva linux o funge anche su winzozzo?
http://www.mkssoftware.com/docs/man3/execl.3.asp
Tuttavia system() (visto che appartiene allo standard ansi per il c) può essere utilizzata anche in ambienti Linux
...Terrible warlords, good warlords, and an english song
compris.. denghiù![]()