Newsgroup: it.comp.lang.c
Titolo: ANCORA AIUTO, PER FAVORE!

Ciao a tutti ragazzi, grazie ancora per l'aiuto offertimi, ma ho ancora
delle domande da porvi:
1. Come mai quando avvio il mio programma (che visualizza sullo schermo il
contenuto dell' HARD DISK) mi compare sullo schermo il quadratino del mouse
come se fossi nell'EDIT DOS?
2. Ipotizziamo una situazione di questo tipo (path del nostro programma):
C:\dir1\dir2\dir3\......................\n-esima directory\*.exe
Ora, come faccio a fargli capire che voglio il contenuto della ROOT e non
della sua directory?
Mi spiego; se provo a scrivere:
system("dir c:");
lui, giustamente mi da il contenuto della SUA directory; infatti se in DOS
proviamo a scrivere - dir c: - quando siamo, ad esempio,  nella directory di
windows, ciò che otteniamo è il contenuto di c:\windows e non di c:\.
Avete suggerimenti? Come al solito se ho detto una vaccata non lapidatemi,
cerco solo di capire.
Se provo a scrivere:
system("cd\\");
(i due \ mi sembrano necessari, come quando do il path di un file da aprire,
o no?)  e poi, immediantamente sotto:
system("dir");
non funziona, sapete dirmi il perchè?
3. Nella riga di comando:
system("dir c: /w/p");
ammesso che la posso usare, devo mettere i doppi slash o va bene così?
4. Ultima richiesta: come faccio a lasciargli indicata la sua ROOT?
Mi spiego: quando apro un file in lettura con il C, basta che scrivo, ad
esempio:
infile=fopen(".\\entrata.txt","r");
Ora se il mio programma è sull'HARD DISK (indipendentemente dal suo path),
lui cerca e apre il file c:\entrata.txt, mentre se è su dischetto aprirà
a:\entrata.txt ecc. ecc.
Quello che voglio dire è come faccio ad esplorare la ROOT del DRIVE su cui è
copiato il mio programma? Nel senso che, se fosse su CD-ROM io non posso
dirgli di esplorare D:, perchè se lo do a qualche mio amico che ha il CD-ROM
con la lettera E: (come il sottoscritto), la cosa non funziona!!
Scusate se mi sono dilungato e grazie anticipatamente per la vostra
attenzione!!
Ciao e alla prossima!!
;o)

con la lettera E: (come il sottoscritto), la cosa non funziona!!
Dipende da come funziona il tuo programma. Se il .exe rimane sul
cd-rom allora sai che il file da leggere si trova nello stesso drive
dal quale hai caricato il programma e quindi vai sempre con
fopen("\\entrata.txt", "r");
Se invece prevedi di poter installare l'exe sull'HD e di avere il file
sul CD allora da qualche parte devi chiedere all'utente dove si trova
il file da leggere o, in alternativa, fai una ricerca su tutti i
device.
Domanda : perche' non usi le funzioni fornite dal tuo compilatore per
cercare i file (che in DOS spesso sono findfirst e findnext) invece di
richiamare il comando DIR ?
ciao

copiato il mio programma?
system( "dir c:\\" ) ;


Scusami ancora; il mio problema è che:
1. Non conoscevo queste funzioni
2. I miei erano solo esempi a scopo informativo: attualmente non devo fare
niente.
Comunque sono uno che accetta aiuti e critiche e mi ha fatto molto piacere
il tuo consiglio e la tua disponibilità; ti sarei molto grato se tu mi
delucidassi su quello che intendi dire.
Ringraziamenti anticipati e grazie ancora.
Ciao!

 copiato il mio programma?
system("dir \\");
EMG

favore?
A dirti la verita' non ho capito come possa uscirti il cursore DOS del
mouse. In genere, quando possibile, preferisco non usare la funzione
system ma, tutte le volte che l'ho usata, non ho mai visto nessun
quadratino strano.
ciao