Я прочитал много информации об этой проблеме.
И есть много вопросов в SO по этому поводу, но проблема все еще остается, и она заключается в следующем:
Я понимаю, что это connection string
предназначен для более старых версий Office:
string oldCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ path + ";" + "Extended Properties='Excel 8.0;HDR=NO;IMEX=1;'";
, и я знаю, что существует connection string
для более новых версий Office:
string nweCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
+ path + ";Extended Properties=Excel 12.0;";
Однако, когда я использую connection string
для новых версий с ACE , у меня появляется следующая ошибка:
The 'Microsoft.ACE. Поставщик OLEDB.12.0 'не зарегистрирован на локальном компьютере.
В других вопросах я также читал, что сначала нужно установить ACE , и все будет работать нормально.
У меня не установлен драйвер ACE , ни на других компьютерах, которые должны использовать это приложение, есть ли способ читать файлы Excel с помощью JET для Office 2016 или 365 ( все, что выше 2003 ).
Я не могу установить ACE в каждом из моих клиентов, чтобы иметь возможность работать с моим приложением, это вообще непрактично.
Есть ли способ сделать это?