Bagikan melalui


LNK2028 Kesalahan Alat Linker

"exported_function" (decorated_name) yang dirujuk dalam fungsi "function_containing_function_call" (decorated_name)

Keterangan

Saat mencoba mengimpor fungsi asli ke dalam gambar murni, ingatlah bahwa konvensi panggilan implisit berbeda antara kompilasi asli dan murni.

Opsi kompilator /clr:pure tidak digunakan lagi di Visual Studio 2015 dan tidak didukung di Visual Studio 2017.

Contoh

Sampel kode ini menghasilkan komponen dengan fungsi yang diekspor, asli, yang konvensi panggilannya secara implisit __cdecl.

// LNK2028.cpp
// compile with: /LD
__declspec(dllexport) int func() {
   return 3;
}

Sampel berikut membuat klien murni yang menggunakan fungsi asli. Namun, konvensi panggilan di bawah /clr:pure __clrcall. Sampel berikut menghasilkan LNK2028.

// LNK2028_b.cpp
// compile with: /clr:pure lnk2028.lib
// LNK2028 expected
int func();

int main() {
   return func();
}