ST0RM Δημοσ. 21 Δεκεμβρίου 2015 Δημοσ. 21 Δεκεμβρίου 2015 Φτιαχνω ενα console application, το οποιο δημιουργει μια directory και κανει αντιγραφη και επικολληση εκει το προγραμμα που θελω. Το θεμα ειναι οτι δεν ξερω καθε φορα ποιο θα ειναι το path. Γι'αυτο και εβαλα το Directory.GetCurrentDirectory() method για να παρω την directory που ειναι το αρχειο. Αναλυτικα ο κωδικας μου μεχρι τωρα σε αυτο το "κομματι" ειναι: public void move_file() { string current_path = Directory.GetCurrentDirectory(); string target_path = @"C:\Program Files\Revolution Software"; } Το θεμα μου ειναι πως θα συνεχισω/τελειωσω τον κωδικα. Δηλαδη, τι θα γραψω για να κανει αντιγραφη απο την τρεχων directory το αρχειο, στην target directory.
ST0RM Δημοσ. 22 Δεκεμβρίου 2015 Μέλος Δημοσ. 22 Δεκεμβρίου 2015 Ωραιος !! Το θεμα ειναι οτι δεν μπορω να κανω αντιγραφη-επικολληση τα αρχεια .ink(αρχεια συντομευσης) με αυτο το τροπο. Εχει κανενας καμια ιδεα γιατι ??
defacer Δημοσ. 22 Δεκεμβρίου 2015 Δημοσ. 22 Δεκεμβρίου 2015 Τι σημαίνει "δε μπορώ"? Αν αποτυχαίνει η File.Copy τότε σου δίνει Exception που εξηγεί ακριβώς ποιό είναι το πρόβλημα.
ST0RM Δημοσ. 22 Δεκεμβρίου 2015 Μέλος Δημοσ. 22 Δεκεμβρίου 2015 Τι σημαίνει "δε μπορώ"? Αν αποτυχαίνει η File.Copy τότε σου δίνει Exception που εξηγεί ακριβώς ποιό είναι το πρόβλημα. Οχι. Δεν βγαζει exception. Ειναι σαν να εγινε επιτυχως η διαδικασια. Επισης το αρχειο .exe που ηθελα να μεταφερω δεν ειχε προβλημα, εγινε κανονικα η μεταφορα. Με το αρχειο ink ειναι το θεμα. Πιστευω οτι κανω κατι λαθος στην ονομασια του αρχειου. Το αρχειο εχει σαν(official) ονομα: "Account Dumper.exe - Συντόμευση". Το εβαλα ετσι. Το εβαλα ως "Account Dumper.exe - Συντόμευση.ink" το εβαλα επισης σαν "Account Dumper.exe.ink" οπως επισης και σαν "Account Dumper.ink". Τιποτα δεν δουλεψε. Να ποσταρω τον κωδικα ?
defacer Δημοσ. 22 Δεκεμβρίου 2015 Δημοσ. 22 Δεκεμβρίου 2015 Δεν είναι δυνατόν να έκανες οτιδήποτε και να απέτυχε η Copy και να μην έδωσε exception. Άρα ή κάπου έφαγες το exception χωρίς να το καταλάβεις, ή το αρχείο υπάρχει και κάτι άλλο συμβαίνει. Πόσταρε και τον κώδικα αν θες. 1
ST0RM Δημοσ. 22 Δεκεμβρίου 2015 Μέλος Δημοσ. 22 Δεκεμβρίου 2015 Ναι εννοειτε, καποια χαζομαρα εχω κανει εγω. Δεν φταιει ποτε ο κωδικας Ο κωδικας αυτης της συναρτησης ειναι αυτος: public static void create_shortcut() { string sourceDir = Directory.GetCurrentDirectory(); string Desktop_Path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); string[] exeList = Directory.GetFiles(sourceDir, "Account Dumper.Ink"); foreach (string f in exeList) { string fName = f.Substring(sourceDir.Length + 1); try { File.Copy(Path.Combine(sourceDir, fName), Path.Combine(Desktop_Path, fName)); } catch (IOException copyError) { Console.WriteLine(copyError.Message); } } }
defacer Δημοσ. 23 Δεκεμβρίου 2015 Δημοσ. 23 Δεκεμβρίου 2015 Βασικά εδώ έχουμε φτάσει στο σημείο που πρέπει να κάνεις good old fashioned debugging. Έχει μέσα τίποτα το exeList; Μήπως παίρνεις κάποιο άλλο exception εκτός από IOException και χάνεται κάπου αλλού; Δε βλέπω τίποτα προφανώς λάθος στον κώδικα που δίνεις.
bnvdarklord Δημοσ. 23 Δεκεμβρίου 2015 Δημοσ. 23 Δεκεμβρίου 2015 Οχι. Δεν βγαζει exception. Ειναι σαν να εγινε επιτυχως η διαδικασια. Επισης το αρχειο .exe που ηθελα να μεταφερω δεν ειχε προβλημα, εγινε κανονικα η μεταφορα. Με το αρχειο ink ειναι το θεμα. Πιστευω οτι κανω κατι λαθος στην ονομασια του αρχειου. Το αρχειο εχει σαν(official) ονομα: "Account Dumper.exe - Συντόμευση". Το εβαλα ετσι. Το εβαλα ως "Account Dumper.exe - Συντόμευση.ink" το εβαλα επισης σαν "Account Dumper.exe.ink" οπως επισης και σαν "Account Dumper.ink". Τιποτα δεν δουλεψε. Να ποσταρω τον κωδικα ? Δηλαδή δεν πήρες FileNotFoundException μιας και δεν είναι ink αλλά lnk ?
Tmark Δημοσ. 23 Δεκεμβρίου 2015 Δημοσ. 23 Δεκεμβρίου 2015 Όπως ανέφερε ο defacer κακώς περιορίζεις τα exceptions σε ΙΟ μόνο, μπορεί κάτι άλλο να παίζει και να το πνίγεις με αυτό τον τρόπο. Γράψτο έτσι για να πιάσεις τυχόν άλλα exceptions που δεν είναι IO. catch (IOException IO_ex){Console.WriteLine(IO_ex.Message);} catch (Exception General_ex){Console.WriteLine(General_ex.Message);}
defacer Δημοσ. 23 Δεκεμβρίου 2015 Δημοσ. 23 Δεκεμβρίου 2015 Δηλαδή δεν πήρες FileNotFoundException μιας και δεν είναι ink αλλά lnk ? Μάλλον αυτό είναι. Απλά δε θα έπαιρνε exception γιατί θα ήταν άδειο το αποτέλεσμα της GetFiles => μηδέν loop iterations. 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα