Share via


Derleyici Uyarısı (Düzey 1) C4733

'FS:0' için satır içi asm ataması: işleyici güvenli işleyici olarak kaydedilmedi

İşleyici geçerli bir özel durum işleyicisi olarak kaydedilmeyebileceği için FS:0'daki değeri yeni bir özel durum işleyicisi eklemek için değiştiren bir işlev Kasa Özel Durumlarıyla çalışmayabilir (bkz. /SAFESEH).

Bu uyarıyı çözmek için FS:0 tanımını kaldırın veya bu uyarıyı kapatıp kullanın . Güvenli özel durum işleyicilerini belirtmek için SAFESEH .

Aşağıdaki örnek C4733 oluşturur:

// C4733.cpp
// compile with: /W1 /c
// 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;
}