wiresock / WireSockUI

GUI to use Wiresock VPN Client in application mode
https://www.wiresock.net/
302 stars 14 forks source link

[Bug]:"Show notifications on state change" Settings option : Activating tunnel causes unhandled exception #48

Closed JimBlankenship closed 10 months ago

JimBlankenship commented 10 months ago

When the "Show notifications on state change" settings option is selected, activating or deactivating a tunnel causes the following error dialog to pop up. No other settings options were selected.

The logged in user is not the administrator and not in the administrator group. Unchecking that settings option causes that exception to not occur during activating or deactivating a tunnel. However WireSockUI was UAC'd to run as Administrator when it was launched.

System is Windows 10 22H2 19045.3930 WireSock VPN client: v1.2.37.1 WireSockUI: v0.2.1-AnyCPU

WireSock VPN client was upgraded from v1.2.30.1 WireSockUI was upgraded from v0.1.7-AnyCPU After installing these versions, the system was rebooted.

This problem does not happen when the UAC dialog is dismissed at launch (WinSockUI is running as a regular user).

Unhandled exception dialog:

See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.

** Exception Text ** System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) at Windows.UI.Notifications.ToastNotifier.Show(ToastNotification notification) at WireSockUI.Forms.FrmMain.UpdateState(ConnectionState state, Boolean notify) at WireSockUI.Forms.FrmMain.OnProfileClick(Object sender, EventArgs e) at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

** Loaded Assemblies ** mscorlib Assembly Version: 4.0.0.0 Win32 Version: 4.8.9181.0 built by: NET481REL1LAST_C CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll

WireSockUI Assembly Version: 0.2.1.0 Win32 Version: 0.2.1 CodeBase: file:///C:/bin/WireSockUI/WireSockUI.exe

System.Windows.Forms Assembly Version: 4.0.0.0 Win32 Version: 4.8.9181.0 built by: NET481REL1LAST_C CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System Assembly Version: 4.0.0.0 Win32 Version: 4.8.9214.0 built by: NET481REL1LAST_B CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Drawing Assembly Version: 4.0.0.0 Win32 Version: 4.8.9037.0 built by: NET481REL1 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System.Configuration Assembly Version: 4.0.0.0 Win32 Version: 4.8.9037.0 built by: NET481REL1 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Core Assembly Version: 4.0.0.0 Win32 Version: 4.8.9214.0 built by: NET481REL1LAST_B CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Xml Assembly Version: 4.0.0.0 Win32 Version: 4.8.9037.0 built by: NET481REL1 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

Microsoft.Win32.TaskScheduler Assembly Version: 2.10.1.0 Win32 Version: 2.10.1.0 CodeBase: file:///C:/bin/WireSockUI/Microsoft.Win32.TaskScheduler.DLL

Windows.UI Assembly Version: 255.255.255.255 Win32 Version: 10.0.10011.16384 CodeBase: file:///C:/WINDOWS/system32/WinMetadata/Windows.UI.winmd

Windows.Foundation Assembly Version: 255.255.255.255 Win32 Version: 10.0.10011.16384 CodeBase: file:///C:/WINDOWS/system32/WinMetadata/Windows.Foundation.winmd

System.Runtime Assembly Version: 4.0.0.0 Win32 Version: 4.8.9037.0 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Runtime.dll

System.Runtime.InteropServices.WindowsRuntime Assembly Version: 4.0.0.0 Win32 Version: 4.8.9037.0 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.InteropServices.WindowsRuntime/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Runtime.InteropServices.WindowsRuntime.dll

Windows.Data Assembly Version: 255.255.255.255 Win32 Version: 10.0.10011.16384 CodeBase: file:///C:/WINDOWS/system32/WinMetadata/Windows.Data.winmd

System.Xml.Linq Assembly Version: 4.0.0.0 Win32 Version: 4.8.9037.0 built by: NET481REL1 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll

** JIT Debugging ** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled.

For example:

When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.

JimBlankenship commented 10 months ago

This problem does not occur when WinSockUI is launched as a regular user. This happens when the UAC dialog is dismissed. Solution is to not run WinSockUI as Administrator. Alternatively, the setting, "Disable Auto-Admin Elevation" can be selected to prevent the UAC attempt.