Bagikan melalui


Compiler Warning (level 3) C4792

fungsi 'fungsi' dinyatakan menggunakan sysimport dan direferensikan dari kode asli; impor pustaka yang diperlukan untuk menautkan

Fungsi asli yang diimpor ke dalam program dengan DllImport dipanggil dari fungsi yang tidak dikelola. Oleh karena itu, Anda harus menautkan ke pustaka impor untuk DLL.

Peringatan ini tidak dapat diselesaikan dalam kode atau dengan mengubah cara Anda mengkompilasi. Gunakan pragma peringatan untuk menonaktifkan peringatan ini.

Sampel berikut menghasilkan C4792:

// C4792.cpp
// compile with: /clr /W3
// C4792 expected
using namespace System::Runtime::InteropServices;
[DllImport("msvcrt")]
extern "C" int __cdecl puts(const char *);
int main() {}

// Uncomment the following line to resolve.
// #pragma warning(disable : 4792)
#pragma unmanaged
void func(void){
   puts("test");
}