[C++] programmi backup o formattazione

di il
7 risposte

[C++] programmi backup o formattazione

Buongiorno a tutti.

volevo chiedere a qualcuno se sapeste una libreria o delle funzioni già predefinite... con le quali poter per esempio formattare una chiave usb da un programma... e fare in modo che quel programma poi copi una cartella dal desktop nella chiavetta...

mi spiego meglio.. non mi serve per uno specifico programma.... ma ho notato studiando il C++ che si continuano ad elaborare solo dati matematici o file di testo... io vorrei essere in grado di creare programmi anche che possano produrre dei risultati come quelli sopra citati..
so di non essermi spiegato molto bene...
qualcuno può comunque aiutarmi?

grazie in anticipo a tutti

7 Risposte

  • Re: [C++] programmi backup o formattazione

    Stai tentando di scalare l'Everest con il fisico che fatica fare 2 piani di scale !

    Le API ci sono tutte: dipende dalla piattaforma (Windows/Linux). Quindi basta andare a cercare nella documentazione corrispondente. Ad esempio per Windows c'e' l'MSDN.

    A meno che tu non stia sviluppando un software che implementa un particolare filesystem, operazione alquanto complessa, anche per quelli con un saaaaacco di esperienza, avere un programma che ti permette di formattare uno storage (dischi, chiavetta, ecc) per un suo uso personale (semplicemente per vuotarne il contenuto) non e' una buona idea.

    Per prima cosa perche' il SO mette gia' a disposizione tutti gli strumenti per la formattazione, come seconda cosa perche' ci sono diversi parametri di formattazione che devono essere impostati e chi ha realizzato il software ha gia' identificato con opportuni default, ed infinie perche' difficilmente serve: l'utente usera' la chiavetta per un sacco di altre cose, oltre che per il tuo programma.

    Se invece vuoi implementare un nuovo tipo di filesystem, allora auguri.
    Se ci riesci, stai tranquillo che nel curriculum fara' un figurone.
    Per fare una cosa del genere, pero', hai un bel po' da studiare:

    1) almeno http://www.amazon.com/Modern-Operating-Systems-3rd-Edition/dp/0136006639
    2) studiare come sono implementati i filesystem ext2, ext3 di Linux
    3) studiare come implementare i driver da installare sul SO per poter leggere il contenuto del disco

    Per esempio puoi studiare i sorgenti di TrueCrypt, che implementa un filesystem cifrato.
    Oppure come funzionano i filesystem di rete, e quelli distribuiti su rete geografica, ...

    L'argomento e' vasto, e ho appena scalfito la superficie .

    Anche progettare un software di backup e' alquanto complicato.
    Ad esempio: sul backup c'e' un file e sul tuo disco no.
    Cosa fai? Fai una copia o cancelli?
    Lo lanci da linea di comando alla bisogna o parte in automatico?
    Ovviamente dovra' essere qualcosa di piu' complicato di una copia ricorsiva, perche' altrimenti non ti serve niente di piu' delle primitive di festione dei file e delle directory messe a disposizione in qualunque linguaggio di programmazione.
    Anzi, non ti serve neppure implementarlo, perche' basta un "copy /s *.* BACKUP" (o meglio ancora usare "robocopy")
  • Re: [C++] programmi backup o formattazione

    Mi sono decisamente spiegato male... e in pù oltre ad essermi spiegato male mi aspettavo qualcosa di relativamente più semplice...

    chiedevo se esistono librerie o funzioni per effettuare qualche operazione.. copia, incolla, sposta, duplica ecc..

    io sono ancora inesperto per poter fare cose di quel tipo anche perchè sto studiando da privatista..
    quindi intendevo solo se c'erano delle librerie o delle funzioni di quel tipo..

    grazie lo stesso e comunque per il chiarimento.. piano piano arriverò anche a fare quelle cose li ma per il momento mi limito ad andare avanti per passi...

    grazie ancora.
  • Re: [C++] programmi backup o formattazione

    Ma allora!!!
    Con un po' di pazienza su Internet trovi tutto.
    Al limite lo implement (abbastanza facile).
    La libreria standard di qualunque linguaggio ha un ricco insieme di funzioni/classi per la manipolazione di file e directory.

    Non c'e' tutto: ad esempio in genere mancano operazioni complesse come 'copia file', 'muovi file su un'altro storage', 'cancella directory e tutto il suo contenuto'.

    Questo perche' in generale queste operazioni richiedono molto tempo (secondi o anche minuti) e quindi e' necessario aggiungere un qualche tipo di interazione con l'utente per poter tenere sotto controllo lo stato di avanzamento.

    Comunque quello che manca si implementa in modo abbastanza semplice.

    Tu parlavi di backup e formattazione, non di una banale copia di un file. Certo un backup si basa sulla copia di un file, ma fa anche tante altre cose.
  • Re: [C++] programmi backup o formattazione

    Ok allora mi ero espresso male e chiedo scusa... mi potresti indicare un link oppure scrivermi le funzioni e le classi del c++ che permettono queste operazioni?

    ti ringrazio in anticipo...
  • Re: [C++] programmi backup o formattazione

    Ma un motore di ricerca?

    o semplicemente
  • Re: [C++] programmi backup o formattazione

    Nosba ha scritto:


    ok allora mi ero espresso male e chiedo scusa... mi potresti indicare un link oppure scrivermi le funzioni e le classi del c++ che permettono queste operazioni?

    ti ringrazio in anticipo...
    Ti conviene iniziare ad imparare a leggere la documentazione: se in un forum chiedi informazioni che puoi reperire in 30 secondi, dopo un po' succede come la storiella del "al lupo, al lupo"
  • Re: [C++] programmi backup o formattazione

    Chiedo scusa a tutti in questo caso.. è solo che sono un disastro nel cercare in rete e non riesco quasi mai a trovare cio che mi serve... grazie a tutti per l'aiuto.
Devi accedere o registrarti per scrivere nel forum
7 risposte