Ich schreibe ein Qt-Programm (4.7 für Windows 7 zunächst), die Schreiben in das installierte Verzeichnis (C: \ Programme ...) erfordert. Es werden keine Dateien erstellt, wenn ich versuche, an einen Speicherort zu schreiben, der "geschützt" wäre (Programmdateien, C: \ etc). QFile gibt mir jedoch keinen Fehlercode (error() gibt 0 zurück, was bedeutet, dass es fehlerfrei funktioniert).Qt kann nicht erstellen/schreiben zu C:
Hier ist ein Code-Snippit, den ich benutze, der nicht funktioniert. Ich schließe die Datei erst viel später im Programm.
QApplication a (argc, argv);
// Setting plugin paths.
QStringList paths = QCoreApplication::libraryPaths();
paths.append(QCoreApplication::applicationDirPath());
QCoreApplication::setLibraryPaths(paths);
// Debug file.
QString path = QCoreApplication::applicationDirPath() + "/debug.dat";
//QFile debugFile(QCoreApplication::applicationDirPath() + "/debug.dat");
QFile debugFile("C:/debug.txt");
qDebug() << debugFile.error();
debugFile.setPermissions(QFile::WriteUser | QFile::WriteGroup | QFile::WriteOwner | QFile::WriteOther);
debugFile.open(QFile::WriteOnly);
QTextStream debugStream(&debugFile);
// Processing the arguments.
debugStream << QString("Processing Arguments\n");
Hat jemand irgendwelche Tipps, wie dieses Problem zu lösen?
Danke für die Hilfe,
Jec
eine Manifest-Datei hinzufügen ist der Weg, den ich wählen, um dieses Problem zu beheben.
Vielen Dank für die Hilfe.
"QFile gibt mir jedoch keinen Fehlercode": Sie sollten den Rückgabewert von debugFile.open() überprüfen. –