none
Не могу загрузить .dbf файлы в windows 7 (64-бит) RRS feed

  • Вопрос

  • В веб-приложении при печати отчетов из тонкого клиента (IE) в Excel используется Visual Foxpro Driver для чтения данных из загруженных dbf-файлов. С распространением клиентских машин с 64-битными версиями ОС все чаще возникает проблема с работой этого драйвера.

    Тестовый пример:

    http://mx4.keysystems.ru/svod/excel.zip

    Воспроизведение ошибки:

    В примере при открытии файла excel.xls, при помощи VBA ячейки заполняются данными из файла sklon.dbf. Код VBA:

    Private Sub Workbook_Open()
    Dim qt As Object
        odbc = "ODBC;Driver=Microsoft Visual FoxPro Driver;UID=admin;SourceType=DBF;DefaultDir=" + ThisWorkbook.Path + "\;DBQ=" + ThisWorkbook.Path + "\;SourceDB=" + ThisWorkbook.Path + "\;"
        Set qt = ActiveSheet.QueryTables.Add(odbc, Cells(1, 1), "select * from sklon.dbf")
        qt.BackgroundQuery = False
        qt.FieldNames = True
        qt.Refresh
    End Sub

    При открытии excel.xls из браузера Internet Explorer, возникает общая ошибка ODBC, код 1004. IE запущен от имени администратора. Судя по диспетчеру задач, владелец запускаемого браузером процесса EXCEL.EXE - администратор. Настройки безопасности IE выставлены корректно, перепроверено не раз. Учитывая, что MDAC в windows 7 является частью ОС, исправить/обновить его нет возможности.

    Пример корректно работает на всех 32-битных версиях Windows и MS Office, в частности, у меня на windows 7 + office 2007 все ок.

    Ошибка в IE проявляется на 64-битной версии Windows 7 Home extended/Professional со всеми установленными обновлениями, и MS Office 2007.

    При проверке на 64-битной версии MS office 2010 + Windows 2008 Standard, ошибка выходит всегда, при запуске из браузера или без него.

    22 февраля 2011 г. 12:22

Ответы