Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Atrybut DefaultCharSetAttribute jest ignorowany
Uwagi
DefaultCharSetAttribute program jest ignorowany przez kompilator języka Microsoft C++. Aby określić zestaw znaków dla biblioteki DLL, użyj opcji CharSet dllImport. Aby uzyskać więcej informacji, zobacz Using C++ Interop (Implicit PInvoke) (Używanie międzyoperacyjności języka C++ (niejawna funkcja PInvoke).
Przykład
Poniższy przykład generuje kod C4397.
// C4397.cpp
// compile with: /W1 /c /clr
using namespace System;
using namespace System::Runtime::InteropServices;
[module:DefaultCharSetAttribute(CharSet::Unicode)]; // C4397
[DllImport("kernel32", EntryPoint="CloseHandle", CharSet=CharSet::Unicode)] // OK
extern "C" bool ImportDefault(IntPtr hObject);
public ref class MySettingVC {
public:
void method() {
ImportDefault(IntPtr::Zero);
}
};
[StructLayout(LayoutKind::Explicit)]
public ref struct StructDefault1{};
public ref class ClassDefault1{};