0
我跑的親Windows 7的驗證碼的QDir ::重命名()不工作
foreach(QString str, directorie.entryList(QStringList(), QDir::Dirs))
{
if(str != "." && str != "..")
{
QDir path(directorie.path() + "\\" + str + "\\" + from.path());
if(path.exists())
{
QDir toPath(directorie.path() + "\\" + str + "\\" + to.path() + "\\" + path.dirName());
QDir make(directorie.path() + "\\" + str);
qDebug() << make.mkpath(to.path() + "\\" + path.dirName());
QDir dir;
qDebug() << dir.rename(path.path(), toPath.path()) << path.path() << toPath.path();
}
}
}
對於每一個目錄,我嘗試移動,重命名返回false
我檢查:舊路徑存在,新路徑被創建。 我對這兩個目錄都有足夠的權利。
directorie位於另一臺服務器上(以「\\」開頭)。它可以從任何地方複製到該導演(甚至從一個完全不同的服務器)
任何人都知道爲什麼它不起作用?我做錯了什麼 ?你有其他解決方案嗎?
編輯:對於神祕的原因,它不會使toPath了
不應該由執行這樣的Qt代碼引起藍屏死機。這聽起來像你有不好的硬件或驅動程序問題。 – drescherjm 2013-02-28 09:29:05
bluscreen可能是由於別的東西,我沒有了,所以讓我們忘了它 – BlueMagma 2013-02-28 09:45:06