Nabend,
momentan will ich zur Übung ein programm schreiben, das mir meine Daten auf einem USB-Stick sichert. Auf dem USB-Stick muss ein Verzeichnis "backup" sein, dass eine config.txt enthält. Wenn diese config-Datei gefunden wurde, wird das Back-Up erstellt. Nun prüfe ich über meine Funktion testPort(); nacheinander, ob die jewweiligen Ports belegt sind und anschließen in der FUnktion getPort, welcher dieser POrts nun der richtige ist, indem sich auch die Config-Datei befindet. Als Fehlermeldung bekomm ich aber folgende:
[Blockierte Grafik: http://img4.imageshack.us/img4/5848/unbenannttlc.png]
Trotzdem bekomme ich in der Konsole den richtigen Pfad ausgegeben. Am USB-Stick kanns nicht liegen, das ich es schon mit mehreren ausprobiert habe.
Codes:
main.cpp
functions.cpp
Alles anzeigen
functions.h
Motzt mich ruhig an, wenn ich da irgend n Müll fabriziert habe
Ich möchte allerdings die WInAPI nicht benutzen, sondern Plattformübergreifend bleiben
Danke
Edit: Wenn ich mit der Funktion testPort() einen Port öffne, der nicht existiert, bekomme ich keine Fehlermeldung.
momentan will ich zur Übung ein programm schreiben, das mir meine Daten auf einem USB-Stick sichert. Auf dem USB-Stick muss ein Verzeichnis "backup" sein, dass eine config.txt enthält. Wenn diese config-Datei gefunden wurde, wird das Back-Up erstellt. Nun prüfe ich über meine Funktion testPort(); nacheinander, ob die jewweiligen Ports belegt sind und anschließen in der FUnktion getPort, welcher dieser POrts nun der richtige ist, indem sich auch die Config-Datei befindet. Als Fehlermeldung bekomm ich aber folgende:
[Blockierte Grafik: http://img4.imageshack.us/img4/5848/unbenannttlc.png]
Trotzdem bekomme ich in der Konsole den richtigen Pfad ausgegeben. Am USB-Stick kanns nicht liegen, das ich es schon mit mehreren ausprobiert habe.
Codes:
main.cpp
functions.cpp
Quellcode
- #include <iostream>
- #include <cstdio>
- #include <string>
- #include <fstream>
- #include <vector>
- #include "functions.h"
- using namespace std;
- bool testPort(string port_name)
- {
- string path(port_name+":\\12612d2fdf786bda6235dcf7bb000155f8a20b9a.txt");
- ofstream test_file(path.c_str());
- if(!test_file)
- {
- return false;
- }
- remove(path.c_str());
- return true;
- }
- string getPort()
- {
- string alphabet[14];
- alphabet[1] = "E";
- alphabet[2] = "F";
- alphabet[3] = "G";
- alphabet[4] = "H";
- alphabet[5] = "I";
- alphabet[6] = "J";
- alphabet[7] = "K";
- alphabet[8] = "L";
- alphabet[9] = "M";
- alphabet[11] = "N";
- alphabet[12] = "O";
- alphabet[13] = "P";
- ifstream config_file;
- for(int i = 0; i < 14; i++)
- {
- if(testPort(alphabet[i]))
- {
- config_file.open((alphabet[i]+":\\backup\\config.txt").c_str());
- if(config_file.is_open())
- {
- cout << alphabet[i] << ":\\backup\\config.txt";
- return alphabet[i];
- }
- }
- }
- return "none";
- }
functions.h
Motzt mich ruhig an, wenn ich da irgend n Müll fabriziert habe

Ich möchte allerdings die WInAPI nicht benutzen, sondern Plattformübergreifend bleiben

Danke
Edit: Wenn ich mit der Funktion testPort() einen Port öffne, der nicht existiert, bekomme ich keine Fehlermeldung.