From 39343a32473fb0c37c1eafc2b215751d84c4c098 Mon Sep 17 00:00:00 2001 From: VoidGravity Date: Fri, 20 Mar 2026 22:24:48 +0000 Subject: [PATCH 1/2] Handle unsupported IsBorderRequired on Windows 10 causing Native Windows capture failure --- electron/native/wgc-capture/src/wgc_session.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/electron/native/wgc-capture/src/wgc_session.cpp b/electron/native/wgc-capture/src/wgc_session.cpp index 7e59d14..79e48d0 100644 --- a/electron/native/wgc-capture/src/wgc_session.cpp +++ b/electron/native/wgc-capture/src/wgc_session.cpp @@ -124,7 +124,13 @@ bool WgcSession::initializeWithItem(int fps) { session_ = framePool_.CreateCaptureSession(captureItem_); session_.IsCursorCaptureEnabled(false); - session_.IsBorderRequired(false); + + // IsBorderRequired is only available on Windows 11+ (build 22000). propagating an hresult_error results in Native Windows capture failure + try { + session_.IsBorderRequired(false); + } catch (winrt::hresult_error const& e) { + std::cerr << "WARNING: IsBorderRequired not supported on this OS (hr=0x" << std::hex << static_cast(e.code()) << ")" << std::endl; + } return true; } From e6373f70f966a9e1be742b40e3f31e04f5628e25 Mon Sep 17 00:00:00 2001 From: VoidGravity Date: Fri, 20 Mar 2026 22:29:51 +0000 Subject: [PATCH 2/2] capturing silently, removing usless noisy warning --- electron/native/wgc-capture/src/wgc_session.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/electron/native/wgc-capture/src/wgc_session.cpp b/electron/native/wgc-capture/src/wgc_session.cpp index 79e48d0..987c649 100644 --- a/electron/native/wgc-capture/src/wgc_session.cpp +++ b/electron/native/wgc-capture/src/wgc_session.cpp @@ -129,7 +129,6 @@ bool WgcSession::initializeWithItem(int fps) { try { session_.IsBorderRequired(false); } catch (winrt::hresult_error const& e) { - std::cerr << "WARNING: IsBorderRequired not supported on this OS (hr=0x" << std::hex << static_cast(e.code()) << ")" << std::endl; } return true;