rollback 4049

This commit is contained in:
DavidXanatos 2024-07-13 15:39:14 +02:00
parent a23f7ca605
commit 17965f4f89
6 changed files with 213 additions and 243 deletions

View File

@ -8,7 +8,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- added UI options for "ForceRestartAll" and "UseCreateToken" in OptionWindow - added UI options for "ForceRestartAll" and "UseCreateToken" in OptionWindow
- added an optional context menu option to make folder/file forced quickly - added an optional context menu option to make folder/file forced quickly
- You can also use "Sandman.exe /add_force program_path" to do it - You can also use "Sandman.exe /add_force program_path" to do it
- added option "Improve3DGameRate" to enhance 3D games' FPS

View File

@ -215,20 +215,6 @@ _FX BOOLEAN Syscall_Init_List(void)
LIST disabled_hooks; LIST disabled_hooks;
Syscall_LoadHookMap(L"DisableWinNtHook", &disabled_hooks); Syscall_LoadHookMap(L"DisableWinNtHook", &disabled_hooks);
if (Conf_Get_Boolean(NULL, L"Improve3DGameRate", 0, FALSE)) {
PATTERN* pat = Pattern_Create(Driver_Pool, L"WaitForSingleObject", FALSE, 0);
if (pat)
List_Insert_After(&disabled_hooks, NULL, pat);
pat = Pattern_Create(Driver_Pool, L"ReleaseSemaphore", FALSE, 0);
if (pat)
List_Insert_After(&disabled_hooks, NULL, pat);
pat = Pattern_Create(Driver_Pool, L"SetEvent", FALSE, 0);
if (pat)
List_Insert_After(&disabled_hooks, NULL, pat);
pat = Pattern_Create(Driver_Pool, L"ClearEvent", FALSE, 0);
if (pat)
List_Insert_After(&disabled_hooks, NULL, pat);
}
LIST approved_syscalls; LIST approved_syscalls;
Syscall_LoadHookMap(L"ApproveWinNtSysCall", &approved_syscalls); Syscall_LoadHookMap(L"ApproveWinNtSysCall", &approved_syscalls);

View File

@ -1951,228 +1951,225 @@ Unlike the preview channel, it does not include untested, potentially breaking,
<item row="0" column="0"> <item row="0" column="0">
<widget class="QTabWidget" name="tabsAdvanced"> <widget class="QTabWidget" name="tabsAdvanced">
<property name="currentIndex"> <property name="currentIndex">
<number>0</number> <number>1</number>
</property> </property>
<widget class="QWidget" name="tabSandbox"> <widget class="QWidget" name="tabSandbox">
<attribute name="title"> <attribute name="title">
<string>Sandboxie Config</string> <string>Sandboxie Config</string>
</attribute> </attribute>
<layout class="QGridLayout" name="gridLayout_18"> <layout class="QGridLayout" name="gridLayout_20">
<item row="0" column="0"> <item row="0" column="0">
<widget class="QLabel" name="lblBoxRoot"> <layout class="QGridLayout" name="gridLayout_18">
<property name="font"> <item row="11" column="4">
<font> <spacer name="horizontalSpacer_5">
<weight>75</weight> <property name="orientation">
<bold>true</bold> <enum>Qt::Horizontal</enum>
<kerning>true</kerning> </property>
</font> <property name="sizeHint" stdset="0">
</property> <size>
<property name="text"> <width>40</width>
<string>Sandbox default</string> <height>20</height>
</property> </size>
</widget> </property>
</item> </spacer>
<item row="1" column="0"> </item>
<widget class="QLabel" name="label_7"> <item row="11" column="2">
<property name="text"> <spacer name="verticalSpacer_2">
<string>Default sandbox:</string> <property name="orientation">
</property> <enum>Qt::Vertical</enum>
<property name="alignment"> </property>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> <property name="sizeHint" stdset="0">
</property> <size>
</widget> <width>20</width>
</item> <height>40</height>
<item row="1" column="2"> </size>
<widget class="QComboBox" name="cmbDefault"/> </property>
</item> </spacer>
<item row="1" column="5"> </item>
<widget class="QCheckBox" name="chkAutoRoot"> <item row="3" column="0" colspan="2">
<property name="text"> <widget class="QLabel" name="label_16">
<string>Portable root folder</string> <property name="text">
</property> <string>Sandbox &lt;a href=&quot;sbie://docs/keyrootpath&quot;&gt;registry root&lt;/a&gt;: </string>
</widget> </property>
</item> <property name="alignment">
<item row="2" column="0" colspan="2"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
<widget class="QLabel" name="label_15"> </property>
<property name="text"> <property name="openExternalLinks">
<string>Sandbox &lt;a href=&quot;sbie://docs/filerootpath&quot;&gt;file system root&lt;/a&gt;: </string> <bool>true</bool>
</property> </property>
<property name="alignment"> </widget>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </item>
</property> <item row="0" column="0">
<property name="openExternalLinks"> <widget class="QLabel" name="lblBoxRoot">
<bool>true</bool> <property name="font">
</property> <font>
</widget> <weight>75</weight>
</item> <bold>true</bold>
<item row="2" column="2" colspan="2"> <kerning>true</kerning>
<widget class="QLineEdit" name="fileRoot"/> </font>
</item> </property>
<item row="2" column="6"> <property name="text">
<widget class="QPushButton" name="btnBrowse"> <string>Sandbox default</string>
<property name="maximumSize"> </property>
<size> </widget>
<width>23</width> </item>
<height>16777215</height> <item row="1" column="2" colspan="2">
</size> <widget class="QComboBox" name="cmbDefault"/>
</property> </item>
<property name="text"> <item row="4" column="2" colspan="5">
<string>...</string> <widget class="QLineEdit" name="ipcRoot"/>
</property> </item>
</widget> <item row="2" column="0" colspan="2">
</item> <widget class="QLabel" name="label_15">
<item row="3" column="0" colspan="2"> <property name="text">
<widget class="QLabel" name="label_16"> <string>Sandbox &lt;a href=&quot;sbie://docs/filerootpath&quot;&gt;file system root&lt;/a&gt;: </string>
<property name="text"> </property>
<string>Sandbox &lt;a href=&quot;sbie://docs/keyrootpath&quot;&gt;registry root&lt;/a&gt;: </string> <property name="alignment">
</property> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
<property name="alignment"> </property>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> <property name="openExternalLinks">
</property> <bool>true</bool>
<property name="openExternalLinks"> </property>
<bool>true</bool> </widget>
</property> </item>
</widget> <item row="5" column="2">
</item> <spacer name="horizontalSpacer_12">
<item row="3" column="2" colspan="2"> <property name="orientation">
<widget class="QLineEdit" name="regRoot"/> <enum>Qt::Horizontal</enum>
</item> </property>
<item row="4" column="0"> <property name="sizeHint" stdset="0">
<widget class="QLabel" name="label_17"> <size>
<property name="text"> <width>40</width>
<string>Sandbox &lt;a href=&quot;sbie://docs/ipcrootpath&quot;&gt;ipc root&lt;/a&gt;: </string> <height>20</height>
</property> </size>
<property name="alignment"> </property>
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </spacer>
</property> </item>
<property name="openExternalLinks"> <item row="1" column="0" colspan="2">
<bool>true</bool> <widget class="QLabel" name="label_7">
</property> <property name="text">
</widget> <string>Default sandbox:</string>
</item> </property>
<item row="4" column="2" colspan="2"> <property name="alignment">
<widget class="QLineEdit" name="ipcRoot"/> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</item> </property>
<item row="5" column="0" colspan="2"> </widget>
<widget class="QLabel" name="lblBoxFeatures"> </item>
<property name="font"> <item row="7" column="1" colspan="6">
<font> <widget class="QCheckBox" name="chkObjCb">
<weight>75</weight> <property name="text">
<bold>true</bold> <string>Activate Kernel Mode Object Filtering</string>
<kerning>true</kerning> </property>
</font> </widget>
</property> </item>
<property name="text"> <item row="5" column="0" colspan="2">
<string>Sandboxing features</string> <widget class="QLabel" name="lblBoxFeatures">
</property> <property name="font">
</widget> <font>
</item> <weight>75</weight>
<item row="5" column="2"> <bold>true</bold>
<spacer name="horizontalSpacer_12"> <kerning>true</kerning>
<property name="orientation"> </font>
<enum>Qt::Horizontal</enum> </property>
</property> <property name="text">
<property name="sizeHint" stdset="0"> <string>Sandboxing features</string>
<size> </property>
<width>108</width> </widget>
<height>20</height> </item>
</size> <item row="11" column="3">
</property> <spacer name="horizontalSpacer_15">
</spacer> <property name="orientation">
</item> <enum>Qt::Horizontal</enum>
<item row="6" column="1" colspan="4"> </property>
<widget class="QCheckBox" name="chkWFP"> <property name="sizeHint" stdset="0">
<property name="text"> <size>
<string>Use Windows Filtering Platform to restrict network access</string> <width>40</width>
</property> <height>20</height>
</widget> </size>
</item> </property>
<item row="7" column="1" colspan="3"> </spacer>
<widget class="QCheckBox" name="chkObjCb"> </item>
<property name="text"> <item row="8" column="1" colspan="6">
<string>Activate Kernel Mode Object Filtering</string> <widget class="QCheckBox" name="chkWin32k">
</property> <property name="text">
</widget> <string>Hook selected Win32k system calls to enable GPU acceleration (experimental)</string>
</item> </property>
<item row="8" column="1" colspan="5"> </widget>
<widget class="QCheckBox" name="chkWin32k"> </item>
<property name="text"> <item row="9" column="1" colspan="6">
<string>Hook selected Win32k system calls to enable GPU acceleration (experimental)</string> <widget class="QCheckBox" name="chkSbieLogon">
</property> <property name="text">
</widget> <string>Use a Sandboxie login instead of an anonymous token</string>
</item> </property>
<item row="9" column="1" colspan="3"> </widget>
<widget class="QCheckBox" name="chkSbieLogon"> </item>
<property name="text"> <item row="2" column="2" colspan="5">
<string>Use a Sandboxie login instead of an anonymous token</string> <widget class="QLineEdit" name="fileRoot"/>
</property> </item>
</widget> <item row="1" column="5" colspan="2">
</item> <widget class="QCheckBox" name="chkAutoRoot">
<item row="10" column="1" colspan="4"> <property name="text">
<widget class="QCheckBox" name="chkSbieAll"> <string>Portable root folder</string>
<property name="text"> </property>
<string>Add &quot;Sandboxie\All Sandboxes&quot; group to the sandboxed token (experimental)</string> </widget>
</property> </item>
</widget> <item row="4" column="0" colspan="2">
</item> <widget class="QLabel" name="label_17">
<item row="11" column="1" colspan="4"> <property name="text">
<widget class="QCheckBox" name="chkImproveGame"> <string>Sandbox &lt;a href=&quot;sbie://docs/ipcrootpath&quot;&gt;ipc root&lt;/a&gt;: </string>
<property name="text"> </property>
<string>Enhance the 3D gaming experience by releasing some system calls.</string> <property name="alignment">
</property> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</widget> </property>
</item> <property name="openExternalLinks">
<item row="12" column="1"> <bool>true</bool>
<spacer name="horizontalSpacer_4"> </property>
<property name="orientation"> </widget>
<enum>Qt::Horizontal</enum> </item>
</property> <item row="11" column="1">
<property name="sizeHint" stdset="0"> <spacer name="horizontalSpacer_4">
<size> <property name="orientation">
<width>108</width> <enum>Qt::Horizontal</enum>
<height>20</height> </property>
</size> <property name="sizeHint" stdset="0">
</property> <size>
</spacer> <width>40</width>
</item> <height>20</height>
<item row="12" column="2"> </size>
<spacer name="verticalSpacer_2"> </property>
<property name="orientation"> </spacer>
<enum>Qt::Vertical</enum> </item>
</property> <item row="3" column="2" colspan="5">
<property name="sizeHint" stdset="0"> <widget class="QLineEdit" name="regRoot"/>
<size> </item>
<width>20</width> <item row="2" column="7">
<height>139</height> <widget class="QPushButton" name="btnBrowse">
</size> <property name="maximumSize">
</property> <size>
</spacer> <width>23</width>
</item> <height>16777215</height>
<item row="12" column="3"> </size>
<spacer name="horizontalSpacer_15"> </property>
<property name="orientation"> <property name="text">
<enum>Qt::Horizontal</enum> <string>...</string>
</property> </property>
<property name="sizeHint" stdset="0"> </widget>
<size> </item>
<width>107</width> <item row="6" column="1" colspan="6">
<height>20</height> <widget class="QCheckBox" name="chkWFP">
</size> <property name="text">
</property> <string>Use Windows Filtering Platform to restrict network access</string>
</spacer> </property>
</item> </widget>
<item row="12" column="4"> </item>
<spacer name="horizontalSpacer_5"> <item row="10" column="1" colspan="6">
<property name="orientation"> <widget class="QCheckBox" name="chkSbieAll">
<enum>Qt::Horizontal</enum> <property name="text">
</property> <string>Add &quot;Sandboxie\All Sandboxes&quot; group to the sandboxed token (experimental)</string>
<property name="sizeHint" stdset="0"> </property>
<size> </widget>
<width>108</width> </item>
<height>20</height> </layout>
</size>
</property>
</spacer>
</item> </item>
</layout> </layout>
</widget> </widget>

View File

@ -427,7 +427,6 @@ CSettingsWindow::CSettingsWindow(QWidget* parent)
connect(ui.chkWin32k, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged())); connect(ui.chkWin32k, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged()));
connect(ui.chkSbieLogon, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged())); connect(ui.chkSbieLogon, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged()));
connect(ui.chkSbieAll, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged())); connect(ui.chkSbieAll, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged()));
connect(ui.chkImproveGame, SIGNAL(stateChanged(int)), this, SLOT(OnGeneralChanged()));
m_GeneralChanged = false; m_GeneralChanged = false;
connect(ui.chkWatchConfig, SIGNAL(stateChanged(int)), this, SLOT(OnOptChanged())); // not sbie ini connect(ui.chkWatchConfig, SIGNAL(stateChanged(int)), this, SLOT(OnOptChanged())); // not sbie ini
@ -1012,7 +1011,6 @@ void CSettingsWindow::LoadSettings()
ui.chkWin32k->setChecked(theAPI->GetGlobalSettings()->GetBool("EnableWin32kHooks", true)); ui.chkWin32k->setChecked(theAPI->GetGlobalSettings()->GetBool("EnableWin32kHooks", true));
ui.chkSbieLogon->setChecked(theAPI->GetGlobalSettings()->GetBool("SandboxieLogon", false)); ui.chkSbieLogon->setChecked(theAPI->GetGlobalSettings()->GetBool("SandboxieLogon", false));
ui.chkSbieAll->setChecked(theAPI->GetGlobalSettings()->GetBool("SandboxieAllGroup", false)); ui.chkSbieAll->setChecked(theAPI->GetGlobalSettings()->GetBool("SandboxieAllGroup", false));
ui.chkImproveGame->setChecked(theAPI->GetGlobalSettings()->GetBool("Improve3DGameRate", false));
ui.chkAdminOnly->setChecked(theAPI->GetGlobalSettings()->GetBool("EditAdminOnly", false)); ui.chkAdminOnly->setChecked(theAPI->GetGlobalSettings()->GetBool("EditAdminOnly", false));
ui.chkAdminOnly->setEnabled(IsAdminUser()); ui.chkAdminOnly->setEnabled(IsAdminUser());
@ -1065,7 +1063,6 @@ void CSettingsWindow::LoadSettings()
ui.chkWin32k->setEnabled(false); ui.chkWin32k->setEnabled(false);
ui.chkSbieLogon->setEnabled(false); ui.chkSbieLogon->setEnabled(false);
ui.chkSbieAll->setEnabled(false); ui.chkSbieAll->setEnabled(false);
ui.chkImproveGame->setEnabled(false);
ui.regRoot->setEnabled(false); ui.regRoot->setEnabled(false);
ui.ipcRoot->setEnabled(false); ui.ipcRoot->setEnabled(false);
ui.chkRamDisk->setEnabled(false); ui.chkRamDisk->setEnabled(false);
@ -1716,7 +1713,6 @@ void CSettingsWindow::SaveSettings()
WriteAdvancedCheck(ui.chkWin32k, "EnableWin32kHooks", "", "n"); WriteAdvancedCheck(ui.chkWin32k, "EnableWin32kHooks", "", "n");
WriteAdvancedCheck(ui.chkSbieLogon, "SandboxieLogon", "y", ""); WriteAdvancedCheck(ui.chkSbieLogon, "SandboxieLogon", "y", "");
WriteAdvancedCheck(ui.chkSbieAll, "SandboxieAllGroup", "y", ""); WriteAdvancedCheck(ui.chkSbieAll, "SandboxieAllGroup", "y", "");
WriteAdvancedCheck(ui.chkImproveGame, "Improve3DGameRate", "y", "");
if (m_FeaturesChanged) { if (m_FeaturesChanged) {
m_FeaturesChanged = false; m_FeaturesChanged = false;

View File

@ -135,8 +135,6 @@ bool CSetupWizard::ShowWizard(int iOldLevel)
{ {
if (wizard.field("editAdminOnly").toBool()) if (wizard.field("editAdminOnly").toBool())
theAPI->GetGlobalSettings()->SetText("EditAdminOnly", "y"); theAPI->GetGlobalSettings()->SetText("EditAdminOnly", "y");
if (wizard.field("improveGame").toBool())
theAPI->GetGlobalSettings()->SetText("Improve3DGameRate", "y");
} }
theConf->SetValue("Options/WizardLevel", SETUP_LVL_CURRENT); theConf->SetValue("Options/WizardLevel", SETUP_LVL_CURRENT);
@ -532,11 +530,6 @@ CShellPage::CShellPage(QWidget *parent)
layout->addWidget(m_pEditOnlyAdmin); layout->addWidget(m_pEditOnlyAdmin);
registerField("editAdminOnly", m_pEditOnlyAdmin); registerField("editAdminOnly", m_pEditOnlyAdmin);
m_pImproveGame = new QCheckBox(tr("Enhance the 3D gaming experience by releasing some system calls."));
m_pImproveGame->setChecked(false);
layout->addWidget(m_pImproveGame);
registerField("improveGame", m_pImproveGame);
setLayout(layout); setLayout(layout);
} }

View File

@ -123,7 +123,6 @@ private:
QCheckBox *m_pContecxtMenu; QCheckBox *m_pContecxtMenu;
QCheckBox *m_pBrowserIcon; QCheckBox *m_pBrowserIcon;
QCheckBox* m_pEditOnlyAdmin; QCheckBox* m_pEditOnlyAdmin;
QCheckBox* m_pImproveGame;
}; };
////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////