各位大神,我現在遇到一個問題,苦苦得不到解決。
小弟在qt程式中有一個資料庫檔案的復制功能,代碼如下:
mDefaultDB = QCoreApplication::applicationDirPath() + "/menu.db";
QString fileName = QFileDialog::getSaveFileName(this,"保存到檔案","","Database Files(*.db)");
if (fileName.isNull())
{
return;
}
if(QFile::exists(fileName))
{
QFile::remove(fileName);
}
QFile file(fileName);
if(file.copy(mDefaultDB,fileName))
{
qDebug()<<"另存為檔案成功";
qDebug()<<fileName;
}
程式在qt中除錯沒有問題,可是當我把程式打包后,運行程式后,就會出現以下提示框:

其中mDefaultDB是我想要復制的資料庫檔案的地址,有大神遇到過這種問題嗎,請幫我解答一下,謝謝了。
uj5u.com熱心網友回復:
你程式是不是安裝在c盤,c盤的話很多地方需要有管理員權限才能進行檔案操作,建議你不要放在程式安裝的位置,可以放在appdata或者檔案這些地方uj5u.com熱心網友回復:
我的程式用windeployqt找到所有的依賴,然后運行程式沒問題。后來我用打包軟體Enigma Virtual Box打包程式后,運行打包后的程式后就出現了上述問題。你所題的權限問題我考慮過了,可是放在其他檔案夾下還是不行。uj5u.com熱心網友回復:
正常運行打包后不能運行,可能是你打包的方式不對,也可以試試其他電腦能否運行;轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/94213.html
標籤:Qt
下一篇:ps能干什么
