Compartir a través de


Advertencia del compilador (nivel 3) C4792

función 'function' declarada usando sysimport a la que se hace referencia desde código nativo; biblioteca de importación necesaria para vincular

Se llamó a una función nativa importada en el programa con DllImport desde una función no administrada. Por lo tanto, debe vincular a la biblioteca de importación del archivo DLL.

Esta advertencia no se puede resolver en el código ni cambiando la forma de realizar la compilación. Para deshabilitar esta advertencia, use la pragma warning .

El ejemplo siguiente genera la advertencia 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");
}