Privacy · Gidsen
Een AI-assistent verbergen voor scherm delen op Windows (Win32 en DirectX)
The Odrivyn team · Bijgewerkt · 9 min leestijd

Kort antwoord
Windows verbergt toepassingsvensters voor schermopname via de SetWindowDisplayAffinity API met de vlag WDA_EXCLUDEFROMCAPTURE. De Windows Desktop Window Manager omzeilt het venster tijdens schermopnames en geeft in plaats daarvan de onderliggende bureaubladachtergrond weer. Zoom, Microsoft Teams, Google Meet en schermrecorders leggen alleen de inhoud onder het assistentvenster vast.
Waarom standaard notitietoepassingen mislukken tijdens het delen van het scherm
Scherm delen blijft een dagelijkse vereiste voor presentaties op afstand, technische interviews en softwaredemonstraties. Presentatoren delen volledige desktopschermen om te wisselen tussen code-editors, webbrowsers en presentatiedia's zonder de vergaderstroom te onderbreken.
Standaardtoepassingen voor het maken van notities (zoals Notion, Obsidian en systeemteksteditors) tekenen hun interfaces op het gedeelde compositieoppervlak van het bureaublad. Wanneer u een notitievenster opent om gesprekspunten of interviewaanwijzingen te controleren, ziet elke deelnemer aan de vergadering de inhoud.
Het delen van een geïsoleerd programmavenster introduceert praktische wrijving. Systeemmeldingen, achtergrondwaarschuwingen en pop-updialogen van andere software overlappen vaak de gedeelde applicatiegrens, waardoor onbedoelde blootstelling van vertrouwelijke gegevens ontstaat.
De samenstellingspijplijn van Windows Desktop Window Manager
Windows coördineert de grafische weergave via de Desktop Window Manager (dwm.exe). In Windows 10 versie 2004 (Build 19041) heeft Microsoft de Win32 SetWindowDisplayAffinity-functie uitgebreid door de constante WDA_EXCLUDEFROMCAPTURE toe te voegen.
De functie accepteert een native vensteringang (HWND) en een affiniteitsparameter: WDA_NONE (0x00), WDA_MONITOR (0x01) of WDA_EXCLUDEFROMCAPTURE (0x11).
Wanneer software WDA_EXCLUDEFROMCAPTURE registreert, behandelt de compositing-engine dat specifieke vensteroppervlak als transparant wanneer een extern proces API's voor schermopname aanroept. Het besturingssysteem kopieert de onderliggende bureaubladachtergrond naar de opnamebuffer, terwijl het assistentvenster op uw fysieke hardwaremonitor wordt geschilderd.
Conferentieplatforms (waaronder Zoom, Microsoft Teams, Google Meet en Slack) leggen schermframes vast via standaard Windows Graphics Capture- of BitBlt-routines. Het besturingssysteem past het weergaveaffiniteitsfilter toe voordat framebuffers worden teruggestuurd naar de vergadersoftware.
DirectX-swapchain-samenstelling en de desktopvensterboom
Windows Desktop Window Manager coördineert weergave-updates via Direct3D-swapchains. Wanneer een applicatie zijn interface schildert, verzendt deze pixeloppervlakken naar DWM, dat individuele vensteroppervlakken combineert tot één enkel weergaveframe.
Oudere tools voor schermopname waren afhankelijk van de Win32 GDI-functie BitBlt, die rasterpixelblokken kopieerde uit de context van het schermapparaat. Moderne conferentiesoftware maakt gebruik van de Windows Graphics Capture API of de Desktop Duplication API, die rechtstreeks vanaf Direct3D-videogeheugenoppervlakken leest.
Omdat WDA_EXCLUDEFROMCAPTURE binnen de kern-DWM-compositingboom werkt, is de uitsluiting van toepassing op zowel oudere GDI-schermschrapen als moderne Direct3D-videopijplijnen. De compositiepijplijn van het besturingssysteem verwisselt het uitgesloten vensteroppervlak met het achtergrondoppervlak voordat de framebuffer wordt ingediend bij de vastlegconsument.
Waarom webbrowser en Electron-vensterverpakkingen lekken tijdens de presentatie
Veel desktophulpprogramma's verpakken webengines in Electron- of Chromium-wrappers. Deze raamwerken introduceren abstractielagen tussen de applicatie en het onderliggende besturingssysteem.
Wanneer een Electron-applicatie de zichtbaarheid van vensters probeert in te schakelen, creëert de multi-procesarchitectuur vaak race-condities. Het browservenster tekent op een afzonderlijke DirectX-swapketen voordat de Win32-affiniteitsaanroep wordt gekoppeld aan de vensteringang op het hoogste niveau. In configuraties met meerdere monitoren kan het verplaatsen van een venster over schermen met verschillende DPI-schaalfactoren de vensterstijlen resetten, waardoor vertrouwelijke notities op de gedeelde videofeed worden weergegeven.
Odrivyn voorkomt deze visuele lekken door te compileren als een native Rust desktop-binair bestand. Het programma past WDA_EXCLUDEFROMCAPTURE toe tijdens het maken van het eerste venster voordat een enkel frame wordt weergegeven, waardoor onbedoelde belichting in alle monitorconfiguraties wordt voorkomen.
Compatibiliteit met schermopnamen tussen de belangrijkste conferentietoepassingen
Geverifieerd op Windows 10 Enterprise en Windows 11 Pro voor Intel-, AMD- en NVIDIA-hardwarestuurprogramma's voor beeldschermen.
| Conferentiesoftware | Geselecteerde opnamemodus | Assistent-vensterstatus | Wat deelnemers aan de vergadering bekijken |
|---|---|---|---|
| Zoom Desktop-client | Volledig scherm delen (bureaublad 1) | Uitgesloten van opnamebuffer | Bureaubladachtergrond en applicatievensters achter de assistent |
| Microsoft Teams | Volledig scherm delen | Uitgesloten van opnamebuffer | Onderliggende inhoud zonder venstercontouren of visuele artefacten |
| Google Meet (Chrome/Edge) | Tabblad Volledig scherm | Uitgesloten van opnamebuffer | Schone bureaubladachtergrond met een stabiele framesnelheid en geen flikkering |
| Slappe Huddles | Volledige monitoruitzending | Uitgesloten van opnamebuffer | Alleen applicaties die onder de Odrivyn-interface draaien |
| OBS Studio / Camtasia | Geef de opnamebron weer | Uitgesloten van opnamebuffer | Schone opgenomen videofeed zonder assistent-overlays |
| Windows-knipprogramma | Rechthoekige opname (Win+Shift+S) | Uitgesloten van opnamebuffer | Opgeslagen schermafbeelding toont achtergrondbehang zonder overlaypixels |
Uitsluitingsgedrag van vastlegging door besturingssysteem geverifieerd met hardwareversnelling ingeschakeld.
Stapsgewijze verificatie: bevestig dat uw venster verborgen blijft voordat u wordt gebeld
Volg deze audit in vier stappen op uw werkstation voordat u aan een belangrijke klantpresentatie of interview op afstand begint.
Stap 1: Open Odrivyn en plaats het venster op uw bureaubladachtergrond of een geopende webbrowserpagina.
Stap 2: Druk op de Windows-sneltoetscombinatie: Windows-toets + Shift + S. Deze sneltoets roept de Windows Snipping Tool-overlay op.
Stap 3: Sleep een selectierechthoek over het schermgebied waar het Odrivyn-venster zich bevindt.
Stap 4: Plak de vastgelegde schermafbeelding in een afbeeldingsviewer of document. Als weergaveaffiniteit werkt zoals bedoeld, toont de afbeelding uw bureaubladachtergrond of browserinhoud, zonder enig spoor van het assistentvenster.
Stap 5: Start een solo-repetitievergadering in Zoom of Microsoft Teams, deel uw volledige bureaubladscherm en inspecteer het voorbeeldvenster van de vergadering om de visuele isolatie te bevestigen.
Architectonische prestaties: native Rust Win32 versus Electron-geheugenvoetafdruk
Zware desktopapplicaties gebouwd op Electron of Chromium bundelen volledige webbrowserruntimes, verbruiken 500 tot 900 megabytes aan werkgeheugen en creëren GPU-contextconflicten tijdens het delen van 4K-monitoren.
Odrivyn compileert als een native Rust-toepassing met Win32-bindingen voor het maken van vensters. Het uitvoerbare bestand weegt 5,7 megabyte en verbruikt 34 megabyte intern geheugen tijdens actieve vergaderingen.
De lichtgewicht native architectuur voorkomt framedrops tijdens schermpresentaties en past WDA_EXCLUDEFROMCAPTURE toe bij vensterinitialisatie, waardoor de applicatie nooit een onbeschermd visueel frame weergeeft.
Veelgestelde vragen
Zijn voor het uitsluiten van opnames beheerdersrechten vereist?
Nee. Elk standaard Windows-proces op gebruikersniveau kan de weergaveaffiniteit instellen voor vensters die binnen de eigen uitvoeringsthread zijn gemaakt.
Kunnen gespreksdeelnemers een deelnemersbot in de vergadering detecteren?
Er komt geen bot de vergadering binnen. De software werkt als een onafhankelijk lokaal desktopprogramma dat audio van uw lokale geluidskaartstuurprogramma's leest.
Werkt WDA_EXCLUDEFROMCAPTURE op oudere Windows-versies?
Windows 10 versie 2004 (Build 19041) of nieuwer is vereist. Bij oudere builds geeft het besturingssysteem een effen zwarte doos weer in plaats van een transparante opnamelaag.
Beschermt weergaveaffiniteit tegen externe videocamera's?
Nee. Weergaveaffiniteit instrueert de vastlegsoftware van het besturingssysteem om het venster over te slaan. Het kan niet voorkomen dat een fysieke camera die op uw hardwaremonitor is gericht, het uitgestraalde licht opvangt.
Kan ik de opname-uitsluiting uitschakelen als ik notities wil weergeven?
Ja. U kunt de opnamebeveiliging in- of uitschakelen in Instellingen wanneer u ervoor kiest de assistent aan collega's te demonstreren.
Bronnen
Neem Odrivyn mee naar je volgende gesprek
Gratis voor Windows. Binnen vijf minuten ingesteld.