Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - Aiuto copia file
Forum - Pascal - Aiuto copia file - Pagina 3

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 15:10
Venerdì, 18/12/2009
Testo quotato

Postato originariamente da gm.jimmy:

ho scaricato il free pascal ma il codice che mi hai postato non funziona lo stesso..si apre solo per qualche secondo la finestra del dos, ma non viene eseguito l'ordine di copiare l'immagine...

mah...



allora ho provato direttamente io... devi aver sbagliato qualcosa... perché il programma si compila senza errori (ti ho postato l'immagine...). però effettivamente non fa il suo compito quando lo si lancia... ma l'errore quindi deve essere per forza nel comando imposto... conosci meglio i comandi da dos??? devi solo provare a sostituire quello, il resto è corretto

ah altra cosa, ho controllato... a quanto pare il dev pascal (stranamente) non implementa le tre librerie occorrenti... quindi ho scaricato il freepascal e tutto funziona a meraviglia


riccardo_2193 ha allegato un file: pierotofy.jpg (115371 bytes)
Clicca qui per guardare l'immagine

Ultima modifica effettuata da riccardo_2193 il 18/12/2009 alle 15:11
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 16:07
Venerdì, 18/12/2009
Se volete utilizzare le applicazioni di DOS\WINDOWS basta utilizzare
exec('xcopy',concat('"',nomefile1, '"  "', nomefile2));
oppure(non l'ho provato):
exec('C:\windows\system32\xcopy', concat('"',nomefile1, '"  "', nomefile2));

Comunque il programma:

Program Prog;

var
A, B : file of byte;
v : byte;
S1, S2 : string;

BEGIN
writeln('Inserisci il nome del file');
readln(S1);
writeln('Inserisci il nome della copia');
readln(S2);
Assign(A, S1);
Assign(B, S2);
reset(A);
rewrite(B);
repeat
read(A, v);
write(B, v);
until EOF(A);
close(A);
close(B);
writeln('Fatto');
readln;
END.


funziona(allego l'eseguibile)

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 16:12
Venerdì, 18/12/2009
Scusate ecco il file


ha allegato un file: copia.zip (14025 bytes)
Clicca qui per scaricare il file
PM Quote
Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 17:07
Venerdì, 18/12/2009
Testo quotato

Postato originariamente da Phi:

Se volete utilizzare le applicazioni di DOS\WINDOWS basta utilizzare
exec('xcopy',concat('"',nomefile1, '"  "', nomefile2));
oppure(non l'ho provato):
exec('C:\windows\system32\xcopy', concat('"',nomefile1, '"  "', nomefile2));



la soluzione che hai postato te funziona esclusivamente su windows, non è multipiattaforma in quanto se non vado errato utilizza la unit dos....


Testo quotato

Comunque il programma:

Program Prog;

var
A, B : file of byte;
v : byte;
S1, S2 : string;

BEGIN
writeln('Inserisci il nome del file');
readln(S1);
writeln('Inserisci il nome della copia');
readln(S2);
Assign(A, S1);
Assign(B, S2);
reset(A);
rewrite(B);
repeat
read(A, v);
write(B, v);
until EOF(A);
close(A);
close(B);
writeln('Fatto');
readln;
END.


funziona(allego l'eseguibile)



leggi tutta la conversazione... il tuo esempio è già stato portato ed è già stato detto che questo tipo di metodo funziona solo con file txt.... nel caso dovessi copiare un'immagine come dovresti fare col tuo metodo??

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 17:32
Venerdì, 18/12/2009
Sì la funzione exec è della unit DOS.
Comunque l'altro programma sul mio PC funziona.
L'avevo già portato io stesso e, visto che è stato detto che non funziona, ho provato a riscriverlo(magari avovo sbagliato a copiarlo la prima volta).
Se non funziona non so cosa dirvi.

PM Quote
Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 20:58
Venerdì, 18/12/2009
Testo quotato

Postato originariamente da Phi:

Sì la funzione exec è della unit DOS.
Comunque l'altro programma sul mio PC funziona.
L'avevo già portato io stesso e, visto che è stato detto che non funziona, ho provato a riscriverlo(magari avovo sbagliato a copiarlo la prima volta).
Se non funziona non so cosa dirvi.



allora: che tipo di file è che cerchi di copiare col tuo programma? presumo file con estensione 'txt' no?
Ecco, prova a copiare col tuo programma un file 'jpg' o 'mp3' ecc.... non si può.
Che il tuo programma funzioni non lo metto in dubbio, ma semplicemente non è quanto richiesto dall'utente...

Scusate nessuna sa dare qualche dritta su come copiare i file da ms dos?

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo