调整当无法访问缓存目录,扫描至功能更改目录可继续扫描

This commit is contained in:
yangjiaxuan 2022-10-25 19:17:33 +08:00
parent e6ef27f390
commit 4f35e2158f
4 changed files with 33 additions and 12 deletions

Binary file not shown.

View File

@ -2350,7 +2350,8 @@ Please finish scanning first.</source>
<location filename="mainwindow.cpp" line="3464"/>
<location filename="mainwindow.cpp" line="3465"/>
<source>folder limit</source>
<translation>访访</translation>
<translation type="unfinished">访
访</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="3543"/>

View File

@ -1122,7 +1122,7 @@ void MainWindow::on_export_scanned_image(void)
void MainWindow::on_continueScan()
{
if(!isLimitAccessFolder())
if(!isLimitAccessFolder(""))
{
return;
}
@ -2879,7 +2879,7 @@ void MainWindow::on_act_scannerSettings_triggered()
void MainWindow::on_act_acquire_triggered()
{
if(!isLimitAccessFolder())
if(!isLimitAccessFolder(""))
{
return;
}
@ -2952,7 +2952,7 @@ void MainWindow::on_act_acquire_triggered()
void MainWindow::on_act_acquireSingle_triggered()
{
if(!isLimitAccessFolder())
if(!isLimitAccessFolder(""))
{
return;
}
@ -3025,11 +3025,6 @@ void MainWindow::on_act_acquireSingle_triggered()
void MainWindow::on_act_acquireInto_triggered()
{
if(!isLimitAccessFolder())
{
return;
}
if (!cur_dev_.is_online() || m_isScanning)
{
return;
@ -3063,6 +3058,12 @@ void MainWindow::on_act_acquireInto_triggered()
// m_aquireIntoSaveParam.m_savePath = getStdFileName(m_aquireIntoSaveParam.m_savePath + dateTime.toString("yyyyMMddhhmmss") + "/");
if(!isLimitAccessFolder(m_aquireIntoSaveParam.m_savePath))
{
return;
}
if (!startSpaceCheck(this))
{
m_dialogLog->updateStatus(cur_dev_.is_online() && 0 != m_scanType, m_isScanning);
@ -3114,7 +3115,7 @@ void MainWindow::on_act_acquireInto_triggered()
void MainWindow::on_act_insertFromScanner_triggered()
{
if(!isLimitAccessFolder())
if(!isLimitAccessFolder(""))
{
return;
}
@ -3479,7 +3480,7 @@ void MainWindow::upgradeApp(QString pkgPath)
}
}
bool MainWindow::isLimitAccessFolder()
bool MainWindow::isLimitAccessFolder(QString filePath)
{
HGChar documentsPath[512];
HGBase_GetDocumentsPath(documentsPath, 512);
@ -3495,6 +3496,25 @@ bool MainWindow::isLimitAccessFolder()
HGResult result = HGBase_CreateDir(getStdString(documentsPath).c_str());
if(result != HGBASE_ERR_OK)
{
if(!filePath.isEmpty())
{
HGChar uuid2[512];
HGBase_GetUuid(uuid2, 512);
filePath += uuid2;
HGResult result = HGBase_CreateDir(getStdString(filePath).c_str());
if (result != HGBASE_ERR_OK)
{
QMessageBox::critical(this, tr("error"), tr("folder limit"));
m_dialogLog->addLog(tr("folder limit"), true);
m_wndStatusBar->setDeviceStatusInfo(tr("folder limit"), true);
return false;
}
else
{
HGBase_DeleteDir(getStdString(filePath).c_str());
}
return true;
}
QMessageBox::critical(this, tr("error"), tr("folder limit"));
m_dialogLog->addLog(tr("folder limit"), true);
m_wndStatusBar->setDeviceStatusInfo(tr("folder limit"), true);

View File

@ -238,7 +238,7 @@ private:
bool open_scanner(const QString& name, OPTSCHEME* schm);
bool judgeDiskSpace(QString currentPath);
void upgradeApp(QString pkgPath);
bool isLimitAccessFolder();
bool isLimitAccessFolder(QString filePath);
private:
Ui::MainWindow *ui;