با معرفی ویژگی Recall در ویندوز، سیستم به طور منظم از صفحه نمایش عکس میگیرد که ممکن است حاوی اطلاعات حساس باشد. این مقاله روشی را برای جلوگیری از ثبت تصویر برنامه ویندوز شما در این فرایند ارائه میدهد.
برای این کار، میتوانید از تابع API ویندوز به نام SetWindowDisplayAffinity و پرچم WDA_EXCLUDEFROMCAPTURE استفاده کنید. این تابع به شما امکان میدهد تا تعیین کنید که یک پنجره چگونه با نرمافزارهای ثبت و ضبط صفحه نمایش تعامل داشته باشد. با تنظیم این پرچم، میتوانید پنجره برنامه خود را از ثبت تصویر مستثنی کنید.
برای استفاده از این قابلیت، ابتدا باید بسته NuGet Microsoft.Windows.CsWin32 را به پروژه خود اضافه کنید. سپس، یک فایل NativeMethods.txt حاوی تعریف تابع SetWindowDisplayAffinity را به پروژه خود اضافه کنید. در نهایت، کد C# زیر را در پروژه خود قرار دهید تا پرچم WDA_EXCLUDEFROMCAPTURE را برای پنجره برنامه تنظیم کنید.
برای تست این تنظیمات، میتوانید از ابزاری مانند Snipping Tool یا هر نرمافزار دیگری برای ثبت تصویر صفحه استفاده کنید. اگر پرچم به درستی تنظیم شده باشد، پنجره برنامه شما در تصاویر ثبت شده ظاهر نخواهد شد. این قابلیت به شما امکان میدهد تا اطلاعات حساس را فقط در صورت نیاز از دید نرمافزارهای ثبت تصویر پنهان کنید.
این روش یک راه حل موثر برای محافظت از اطلاعات حساس در برنامههای ویندوز است و به توسعهدهندگان این امکان را میدهد تا کنترل بیشتری بر نحوه تعامل برنامههایشان با ویژگیهای جدید ویندوز داشته باشند.
مشاهده مطلب اصلی