invalidVariant MDA
invalidVariant
MDA(관리 디버깅 도우미)는 네이티브 코드나 비관리 코드에서 관리 코드로 호출하는 동안 잘못된 VARIANT
구조가 발생할 때 활성화됩니다.
증상
VARIANT
를 개체로 마샬링하는 작업과 관련해서 네이티브 코드와 관리 코드 간에 전환하는 동안 발생하는 예기치 않은 동작입니다.
원인
네이티브 코드는 형식이 잘못된 VARIANT
구조를 관리 코드로 전달합니다. 런타임에서는 이 VARIANT
를 개체로 마샬링하려고 시도하고 VARIANT
가 유효하지 않으면 MDA를 활성화합니다. 잘못된 VARIANT
S의 예로는 VARIANT
와 VARTYPE
VT_EMPTY | VT_BYREF를 함께 사용하거나 VARIANT
를 VARTYPE
VT_VARIANT와 함께 사용하는 경우가 있습니다.
해결 방법
VARIANT
를 전달하는 네이티브 코드나 비관리 코드는 VARIANT
가 제대로 서식 지정되고 초기화되었는지 확인해야 합니다.
런타임에 대한 영향
MDA는 런타임 동작에 영향을 미치지 않습니다.
출력
런타임에서 비관리 모듈을 통해 관리 코드에 전달된 잘못된 VARIANT
를 감지했음을 나타내는 MDA 메시지입니다.
구성
<mdaConfig>
<assistants>
<invalidVariant />
</assistants>
</mdaConfig>
참고 항목
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기