none
Domanda programma C# RRS feed

  • Domanda

  • Buongiorno a tutti. Ho un piccolo problema inerente a questo pezzo di codice:

    private void button1_Click(object sender, EventArgs e)
            {
                StreamReader sR = new StreamReader("destfot6.txt"); // qui è contenuta la directory dove andranno a finire le foto, in questo caso in
                                                                    // D:\Documenti\
                String CartellaFotografo5 = sR.ReadLine();
                sR.Close();
                string DirectoryName = DateTime.Now.ToString("dd.MM.yyyy Ore HH.mm.ss");
                Directory.CreateDirectory(CartellaFotografo5 + DirectoryName);
    
                string sourceDir1 = @"F:\DCIM\100CANON\"; // questa è la directory da dove dove prendo le foto
                string backupDir = CartellaFotografo5 + DirectoryName;
    
                if (Directory.Exists(sourceDir1))
                {
                    string[] picList1 = Directory.GetFiles(sourceDir1, "*.jpg");
                    foreach (string a in picList1)
                    {
                        string aName = a.Substring(sourceDir1.Length);
                        File.Copy(Path.Combine(sourceDir1, aName), Path.Combine(backupDir, aName), true);
                        pBar1.PerformStep();
                    }
                }
                MessageBox.Show("Trasferimento foto COMPLETATO!");
                pBar1.Value = 1;
                lb1.Text = "Trasferimento Completato";
            }

    Questo programma permette di trasferire, tramite l'ausilio di un bottone, le foto da una scheda SD o USB quel che sia a una cartella scelta. Però c'è un problema:

    Se io devo prendere le foto da qui (vedi screen) come faccio?

    So che il pezzo da modificare è: 

    string sourceDir1 = @"Computer\Canon EOS 600D\SD\DCIM\100CANON\";

    Ma nonostante che ci ho provato in diversi modi non mi è mai riuscito. Sapreste aiutarmi?

    lunedì 14 aprile 2014 12:36

Risposte

  • ciao

    a me sembra un pò piu complicato di quanto hai riportato sopra

    ...

    siccome il dispositivo è esterno al pc puo essere che devi acquisire le immagine 

    utilizzando il "wia" windows image acquisition library 2.0

    cioe al tuo progetto devi aggiungere quel riferimento e poi sviluppare un codice appropriato per quel DeviceType

    magari attendi qualcuno piu esperto di me

    avrà una soluzione più semplice

    ciao

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms630368%28v=vs.85%29.aspx


    • Modificato eugenio lunedì 14 aprile 2014 14:42 aggiunto link
    • Proposto come risposta Irina Turcu mercoledì 16 aprile 2014 14:32
    • Contrassegnato come risposta Irina Turcu giovedì 17 aprile 2014 12:43
    lunedì 14 aprile 2014 14:35

Tutte le risposte

  • ciao

    a me sembra un pò piu complicato di quanto hai riportato sopra

    ...

    siccome il dispositivo è esterno al pc puo essere che devi acquisire le immagine 

    utilizzando il "wia" windows image acquisition library 2.0

    cioe al tuo progetto devi aggiungere quel riferimento e poi sviluppare un codice appropriato per quel DeviceType

    magari attendi qualcuno piu esperto di me

    avrà una soluzione più semplice

    ciao

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms630368%28v=vs.85%29.aspx


    • Modificato eugenio lunedì 14 aprile 2014 14:42 aggiunto link
    • Proposto come risposta Irina Turcu mercoledì 16 aprile 2014 14:32
    • Contrassegnato come risposta Irina Turcu giovedì 17 aprile 2014 12:43
    lunedì 14 aprile 2014 14:35
  • Ciao Marco,

    Oltre l'utilizzo della libreria Windows Image Acquisition, sulla quale trovi tutorial in rete (come questo), puoi provare ad ottenere lo stesso risultato con l'interfaccia di sviluppo WPD (Windows Portable Devices). Il SDK WPD è incluso nel Windows SDK.

    Trovi maggiori dettagli sulla Libreria MSDN:

    WPD Application Programming Interface


    <QUESTO CONTENUTO È DISTRIBUITO "AS IS", ESCLUDENDO OGNI FORMA DI RESPONSABILITÀ DI QUALUNQUE GENERE, ESPLICITA O IMPLICITA>

    Grazie
    Il Supporto delle Comunità MSDN

    Vi preghiamo di ricordare a “Segnare come Risposta” i post che risolvono il vostro problema. Questa è di solito una modalità di riconoscimento verso chi vi ha aiutati, facilitando per il futuro la scoperta della risoluzione per gli altri visitatori.

    mercoledì 16 aprile 2014 14:40