이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

컴파일러 경고(수준 1) C4733

오류 메시지

인라인 asm이 'FS:0'에 할당되었습니다. 처리기가 안전한 처리기로 등록되지 않았습니다.
Inline asm assigning to 'FS:0' : handler not registered as safe handler

새로운 식 처리기를 추가하기 위해 FS:0의 값을 수정하는 함수가 안전한 예외에는 작동하지 않습니다. 이는 처리기가 올바른 예외 처리기로 등록되지 않았기 때문입니다. 자세한 내용은 /SAFESEH를 참조하십시오.

이 경고를 해결하려면 FS:0 정의를 제거하거나, 이 경고를 해제하고 .SAFESEH를 사용하여 안전한 예외 처리기를 지정하십시오.

다음 샘플에서는 C4733 경고가 발생하는 경우를 보여 줍니다.

// C4733.cpp
// compile with: /W1
// processor: x86
#include "stdlib.h"
#include "stdio.h"
void my_handler()
{
   printf("Hello from my_handler\n");
   exit(1);
}

int main()
{
   _asm {
      push    my_handler
      mov     eax, DWORD PTR fs:0
      push    eax
      mov     DWORD PTR fs:0, esp   // C4733
   }

   *(int*)0 = 0;
}
이 정보가 도움이 되었습니까?
(1500자 남음)
커뮤니티 콘텐츠 추가
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?