Откройте документ Excel с помощью C++ builder

Я пытаюсь открыть существующий документ Excel, используя C++ Builder. но у меня есть исключение:

Project project1.exe поднял класс исключения EOlSysError с сообщением "неверный тип переменной"

Вот код, который я использую:

try {
    vMSExcel = Variant::GetActiveObject("Excel.Application");
}
catch (...) {
    vMSExcel = Variant::CreateObject("Excel.Application");
}

vMSExcel.OlePropertySet("Visible", true);

Variant vFileName = "C:\\Users\mi\\Desktop\\classeur1.xls";

vXLWorkbooks = vMSExcel.OlePropertyGet("Workbooks");
vXLWorkbook = vXLWorkbooks.OleFunction("Open", vFileName);

Исключение выдается в этой строке:

vXLWorkbook = vXLWorkbooks.OleFunction("Open", vFileName);

Любая помощь будет оценена. Спасибо

1 ответ

Решение

ИСПРАВЛЕНО ПРОБЛЕМА:

Я изменил тип vFileName с Vaiant на String и добавил c_str() к OleFucntion следующим образом

vXLWorkbook = vXLWorkbooks.OleFunction( "Open",vFileName.c_str()); 
Другие вопросы по тегам