Я хочу использовать импорт / экспорт EPPlus for Excel в проекте C ++ / CLI.Когда я пытаюсь получить доступ к одной ячейке с помощью следующего кода, я получаю сообщение об ошибке компиляции:
ExcelPackage^ ep = gcnew ExcelPackage(gcnew System::IO::FileInfo("Test.xlsx"));
ExcelWorksheets^ sheets = ep->Workbook->Worksheets;
ExcelWorksheet^ sheet = sheets[1];
ExcelRange^ range = sheet->Cells[1, 1]; // this line causes C3252
Полное сообщение об ошибке:
error C3252: 'CellStore::Finalize': cannot reduce accessibility of a virtual method in a managed type
note: This diagnostic occurred while importing type 'CellStore ' from assembly 'EPPlus, Version=4.5.2.1, Culture=neutral, PublicKeyToken=ea159fdaa78159a1'.
note: This diagnostic occurred while importing type 'OfficeOpenXml::ExcelWorksheet ' from assembly 'EPPlus, Version=4.5.2.1, Culture=neutral, PublicKeyToken=ea159fdaa78159a1'.
Как ни странно, это работает в C #:
ExcelPackage ep = new ExcelPackage(new System.IO.FileInfo("Test.xlsx"));
ExcelWorksheets sheets = ep.Workbook.Worksheets;
ExcelWorksheet sheet = sheets[1];
ExcelRange range = sheet.Cells[1, 1]; // no error here
Это что-то, что просто не поддерживается C ++ / CLI или есть ошибка в моем коде или даже в библиотеке EPPlus?