Moait
홈인기 피드모든 블로그모든 태그
홈인기 피드모든 블로그모든 태그
How can I detect that Windows is running in S-Mode, redux 섬네일

How can I detect that Windows is running in S-Mode, redux

Microsoft Developer faviconMicrosoft Developer·Architecture·
CWindows RuntimeWRLCOM
2025년 11월 17일0

AI 요약

이 글은 AI가 요약했어요. 정확한 내용은 꼭 원문을 확인해 주세요!

핵심 요약

Microsoft Developer의 글은 Windows S-Mode 감지를 위한 C 구현과 COM ABI 차이에 대한 논의, WRL 없이 HSTRING을 다루는 저수준 구현 포인트를 다룹니다.

구현 방법

  • WindowsCreateStringReference로 문자열 참조를 만들고 RoGetActivationFactory로 IWindowsIntegrityPolicyStatics를 얻음
  • statics에서 get_IsEnabled와 get_CanDisable를 차례로 호출해 S-Mode 여부와 해제 가능성을 확인
  • p->lpVtbl 방식의 COM 호출과 Release/AddRef 관리, WRL 없이 수동으로 HSTRING을 다루는 주의점 설명

주요 결과

  • S-Mode 여부와 해제 가능 여부에 따라 suggestCompanion를 TRUE/FALSE로 설정하는 흐름이 구현에 반영
  • WindowsDeleteString의 필요성은 문자열 참조의 특성상 nop일 수 있으며, 주석으로 언급됨

연관 피드

%가 높을수록 이 글과 비슷할 가능성이 높아요!
Could we use CTAD to simplify the use of WRL's Callback function? 섬네일
61%

Could we use CTAD to simplify the use of WRL's Callback function?

Microsoft Developer faviconMicrosoft Developer·2025년 11월 13일
Windows Runtime design principle: Properties can be set in any order 섬네일
61%

Windows Runtime design principle: Properties can be set in any order

Microsoft Developer faviconMicrosoft Developer·2025년 10월 23일
I can use <CODE>WM_<WBR>COPY<WBR>DATA</CODE> to send a block of data to another window, but how does it send data back? 섬네일
56%

I can use <CODE>WM_<WBR>COPY<WBR>DATA</CODE> to send a block of data to another window, but how does it send data back?

Microsoft Developer faviconMicrosoft Developer·2025년 11월 14일