Прочитайте лист Excel с помощью ADO на Visual C ++ - PullRequest
0 голосов
/ 27 марта 2011

У нас есть старое приложение, написанное с использованием VC ++, которое использует драйвер ODBC для чтения данных Excel.

В текущем коде есть проблемы со смешанным типом данных и ограничениями драйвера ODBC.

SOЯ планирую использовать драйвер Jet OLE DB и использовать ADO

Код, который я открываю, открывает соединение ADO и читает лист Excel. Никаких проблем здесь нет.

Самая большая проблема - каждый раз, Open ()вызывается, он вызывает лист Excel и отображает для пользователя (если он еще не открыт).Я попытался просмотреть параметры, но не нашел никаких предложений, чтобы скрыть главное окно Excel.

Есть предложения?

Используемая строка подключения:

Provider = 'Microsoft.JET.OLEDB.4.0'; Источник данных = temp.xls; Расширенные свойства = "Excel 8.0; IMEX = 1; HDR = NO"

1 Ответ

0 голосов
/ 02 апреля 2011

На ум приходят три варианта:

  1. Используйте Automation, чтобы открыть электронную таблицу в скрытом окне. То есть Вы можете создать экземпляр приложения Excel, скрыть главное окно и открыть электронную таблицу в этом окне.
  2. Используйте драйвер ISAM вместо драйвера JET. Это может изменить поведение нежелательными способами.
  3. Жить с этим.
...