public SandboxBuilder ForbidSysCall(bool isNano = false) { LimitFunction = UIRestrictions.ReadClipboard | UIRestrictions.WriteClipboard | UIRestrictions.Handles | UIRestrictions.GlobalAtoms | UIRestrictions.ExitWindows | UIRestrictions.SystemParameters; if (!isNano) { LimitFunction |= UIRestrictions.Desktop | UIRestrictions.DisplaySettings; } return(this); }
public unsafe void SetUIRestrictions(UIRestrictions @class) { var limit = new JobObjectBasicUiRestrictions { UIRestrictionsClass = @class }; var result = Kernel32.SetInformationJobObject( mHandle, JobObjectInfoClass.BasicUIRestrictions, &limit, sizeof(JobObjectBasicUiRestrictions) ); if (!result) { throw new Win32Exception(Marshal.GetLastWin32Error()); } }