私は、Visual C++ 2008 で以前働いていた人によって書かれたプロジェクト (STM32 の HID インターフェイス) に取り組んでいます。そのため、問題を引き起こしている行を模倣するために、VC++ 2008 でサンプルの winform アプリケーションを作成しました。この 1 行のクリック イベントでは、x64 用にビルドされた場合にのみビルド エラーが発生しますが、win32 ビルドではビルド エラーは発生せず、正常に動作します。
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
String^ devPath = this->textBox1->Text;
MessageBox::Show(devPath);
pin_ptr<const TCHAR> pPath = PtrToStringChars(devPath); *error line
}
};
x64 ビルドでのみ表示されるビルド エラーは次のとおりです。
Error 1 error C2440: 'initializing' : cannot convert from 'cli::interior_ptr<Type>' to 'cli::pin_ptr<Type>'
ありがとう。