Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
DLLImport を使用して、アンマネージ DLL から C# にいくつかの関数をロードCharSet = CharSet.Ansiし、文字列に使用しています。
CharSet = CharSet.Ansi
プロジェクトを .NET 3.5 でコンパイルすると、文字列は正常に見えます。しかし、.NET 4.0 でコンパイルすると、文字列の文字セットが間違っているように見えます。
何が起こっている?
CharSet.Ansiただし、表示されている問題が何であるかは正確にはわかりません。C# と Visual Basic の既定値は既にであり、C++ の既定値は でありCharSet.None、これは と同等であることを覚えておいてCharSet.Ansiください。したがって、あなたの宣言は不要です。
CharSet.Ansi
CharSet.None
CharSet を明示的に定義せずに試してみて、その動作を確認してください。
を試すこともできますCharSet.Auto。これは、正しい文字セットを自動的に選択しようとします
CharSet.Auto