This commit is contained in:
love-code-yeyixiao 2024-03-17 19:49:22 +08:00
parent 4f5477628d
commit 87c35d6853
2 changed files with 142 additions and 149 deletions

View File

@ -285,58 +285,16 @@
<string>File Options</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_28">
<item row="0" column="0">
<widget class="QLabel" name="lblStructure">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
<kerning>true</kerning>
</font>
<item row="13" column="1">
<widget class="QLabel" name="label_37">
<property name="maximumSize">
<size>
<width>20</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Box Structure</string>
</property>
</widget>
</item>
<item row="0" column="2" colspan="4">
<widget class="QLabel" name="lblWhenEmpty">
<property name="text">
<string>The box structure can only be changed when the sandbox is empty</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="3">
<widget class="QLabel" name="lblScheme">
<property name="text">
<string>Virtualization scheme</string>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="QComboBox" name="cmbVersion"/>
</item>
<item row="2" column="1" colspan="4">
<widget class="QCheckBox" name="chkSeparateUserFolders">
<property name="text">
<string>Separate user folders</string>
</property>
<property name="tristate">
<bool>false</bool>
</property>
</widget>
</item>
<item row="3" column="1" colspan="5">
<widget class="QCheckBox" name="chkUseVolumeSerialNumbers">
<property name="text">
<string>Use volume serial numbers for drives, like: \drive\C~1234-ABCD</string>
</property>
</widget>
</item>
<item row="4" column="1" colspan="4">
<widget class="QCheckBox" name="chkRamBox">
<property name="text">
<string>Store the sandbox content in a Ram Disk</string>
<string/>
</property>
</widget>
</item>
@ -347,12 +305,18 @@
</property>
</widget>
</item>
<item row="5" column="5">
<widget class="QToolButton" name="btnPassword">
<property name="text">
<string>Set Password</string>
<item row="14" column="3">
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
<property name="sizeHint" stdset="0">
<size>
<width>410</width>
<height>13</height>
</size>
</property>
</spacer>
</item>
<item row="6" column="2" colspan="4">
<widget class="QLabel" name="lblCrypto">
@ -367,6 +331,91 @@
</property>
</widget>
</item>
<item row="13" column="2" colspan="4">
<widget class="QCheckBox" name="chkRawDiskNotify">
<property name="text">
<string>Warn when an application opens a harddrive handle</string>
</property>
</widget>
</item>
<item row="5" column="5">
<widget class="QToolButton" name="btnPassword">
<property name="text">
<string>Set Password</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="3">
<widget class="QLabel" name="lblScheme">
<property name="text">
<string>Virtualization scheme</string>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="QComboBox" name="cmbVersion"/>
</item>
<item row="14" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>52</height>
</size>
</property>
</spacer>
</item>
<item row="11" column="0" colspan="2">
<widget class="QLabel" name="lblRawDisk">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
<kerning>true</kerning>
</font>
</property>
<property name="text">
<string>Disk/File access</string>
</property>
</widget>
</item>
<item row="12" column="1" colspan="5">
<widget class="QCheckBox" name="chkRawDiskRead">
<property name="text">
<string>Allow elevated sandboxed applications to read the harddrive</string>
</property>
</widget>
</item>
<item row="0" column="2" colspan="4">
<widget class="QLabel" name="lblWhenEmpty">
<property name="text">
<string>The box structure can only be changed when the sandbox is empty</string>
</property>
</widget>
</item>
<item row="10" column="1" colspan="4">
<widget class="QCheckBox" name="chkProtectBox">
<property name="toolTip">
<string>Partially checked means prevent box removal but not content deletion.</string>
</property>
<property name="text">
<string>Protect this sandbox from deletion or emptying</string>
</property>
<property name="tristate">
<bool>true</bool>
</property>
</widget>
</item>
<item row="9" column="1" colspan="5">
<widget class="QCheckBox" name="chkAutoEmpty">
<property name="text">
<string>Auto delete content when last sandboxed process terminates</string>
</property>
</widget>
</item>
<item row="7" column="2" colspan="4">
<widget class="QLabel" name="lblImDisk">
<property name="text">
@ -374,6 +423,37 @@
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="lblStructure">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
<kerning>true</kerning>
</font>
</property>
<property name="text">
<string>Box Structure</string>
</property>
</widget>
</item>
<item row="2" column="1" colspan="4">
<widget class="QCheckBox" name="chkSeparateUserFolders">
<property name="text">
<string>Separate user folders</string>
</property>
<property name="tristate">
<bool>false</bool>
</property>
</widget>
</item>
<item row="4" column="1" colspan="4">
<widget class="QCheckBox" name="chkRamBox">
<property name="text">
<string>Store the sandbox content in a Ram Disk</string>
</property>
</widget>
</item>
<item row="8" column="0" colspan="3">
<widget class="QLabel" name="lblDelete">
<property name="font">
@ -388,100 +468,13 @@
</property>
</widget>
</item>
<item row="9" column="1" colspan="5">
<widget class="QCheckBox" name="chkAutoEmpty">
<item row="3" column="1" colspan="5">
<widget class="QCheckBox" name="chkUseVolumeSerialNumbers">
<property name="text">
<string>Auto delete content when last sandboxed process terminates</string>
<string>Use volume serial numbers for drives, like: \drive\C~1234-ABCD</string>
</property>
</widget>
</item>
<item row="10" column="1" colspan="4">
<widget class="QCheckBox" name="chkProtectBox">
<property name="toolTip">
<string>Partially checked means prevent box removal but not content deletion.</string>
</property>
<property name="text">
<string>Protect this sandbox from deletion or emptying</string>
</property>
<property name="tristate">
<bool>true</bool>
</property>
</widget>
</item>
<item row="11" column="1" colspan="5">
<widget class="QCheckBox" name="chkLockWhenClose">
<property name="text">
<string>Force lock the encrypted sandbox when all processes in the sandbox terminate.</string>
</property>
</widget>
</item>
<item row="12" column="0" colspan="2">
<widget class="QLabel" name="lblRawDisk">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
<kerning>true</kerning>
</font>
</property>
<property name="text">
<string>Disk/File access</string>
</property>
</widget>
</item>
<item row="13" column="1" colspan="5">
<widget class="QCheckBox" name="chkRawDiskRead">
<property name="text">
<string>Allow elevated sandboxed applications to read the harddrive</string>
</property>
</widget>
</item>
<item row="14" column="1">
<widget class="QLabel" name="label_37">
<property name="maximumSize">
<size>
<width>20</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item row="14" column="2" colspan="4">
<widget class="QCheckBox" name="chkRawDiskNotify">
<property name="text">
<string>Warn when an application opens a harddrive handle</string>
</property>
</widget>
</item>
<item row="15" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>52</height>
</size>
</property>
</spacer>
</item>
<item row="15" column="3">
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>410</width>
<height>13</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabMigration">

View File

@ -106,7 +106,7 @@ void COptionsWindow::CreateAdvanced()
connect(ui.chkLessConfidential, SIGNAL(clicked(bool)), this, SLOT(OnLessConfidentialChanged()));
connect(ui.chkProtectWindow, SIGNAL(clicked(bool)), this, SLOT(OnProtectChanged()));
connect(ui.chkBlockCapture, SIGNAL(clicked(bool)), this, SLOT(OnCaptureChanged()));
connect(ui.chkLockWhenClose, SIGNAL(clicked(bool)), this, SLOT(OnAdvancedChanged()));
//connect(ui.chkLockWhenClose, SIGNAL(clicked(bool)), this, SLOT(OnAdvancedChanged()));
connect(ui.chkNotifyProtect, SIGNAL(clicked(bool)), this, SLOT(OnAdvancedChanged()));
connect(ui.treeInjectDll, SIGNAL(itemChanged(QTreeWidgetItem *, int)), this, SLOT(OnToggleInjectDll(QTreeWidgetItem *, int)));
@ -270,10 +270,10 @@ void COptionsWindow::LoadAdvanced()
ui.chkBlockCapture->setChecked(m_pBox->GetBool("IsBlockCapture")&& QString::compare(str, "*") != 0);
ui.chkBlockCapture->setCheckable(QString::compare(str, "*") != 0);
ui.chkLockWhenClose->setChecked(m_pBox->GetBool("LockWhenClose", false));
/*ui.chkLockWhenClose->setChecked(m_pBox->GetBool("LockWhenClose", false));
ui.chkLockWhenClose->setCheckable(m_pBox->GetBool("UseFileImage", false));
ui.chkLockWhenClose->setEnabled(m_pBox->GetBool("UseFileImage", false));
*/
QStringList Users = m_pBox->GetText("Enabled").split(",");
ui.lstUsers->clear();
if (Users.count() > 1)
@ -478,7 +478,7 @@ void COptionsWindow::SaveAdvanced()
WriteAdvancedCheck(ui.chkProtectWindow, "IsProtectScreen", "y", "n");
WriteAdvancedCheck(ui.chkBlockCapture, "IsBlockCapture", "y", "n");
WriteAdvancedCheck(ui.chkLockWhenClose, "LockWhenClose", "y", "n");
//WriteAdvancedCheck(ui.chkLockWhenClose, "LockWhenClose", "y", "n");
QStringList Users;
for (int i = 0; i < ui.lstUsers->count(); i++)