Windows 7 SP1 прерывает доступ (не так, как ADO)

Итак, наш корпоративный ИТ-отдел решил, что пришло время принудительно установить SP1 на все компьютеры.

Это означает, что мне нужно, чтобы мое приложение Access 2003 ADE работало с глупой проблемой несовместимости с ADO.

Я заставил часть ADO работать, следуя KB2517589, но теперь в нескольких моих текстовых полях написано #Name?.

Они связаны с кодом, поэтому, например, поле данных в текстовом поле =CalcShippingAddr().

В качестве теста я заменил код следующим:

    Public Function CalcShippingAddr() As String
        msgbox "Func Called"
        CalcShippingAddr = "Test"
    End Function

Это отлично работает на моей машине разработки, но как только я создаю ADE и отправляю ее на ПК без SP1, я получаю #Name? на текстовом поле. msgbox никогда не всплывает.

Любые идеи, что может происходить?


person Scottie    schedule 27.07.2011    source источник
comment
Пробовали ли вы SP3 повторно comment11729873_9270275" title="вычисленный элемент управления текстовым полем не показывает значение в доступе 2007, но показывает в 2003"> stackoverflow.com/questions/9270168/ ?   -  person Fionnuala    schedule 16.02.2012


Ответы (1)


Это ошибка, связанная с вычислением поля, я сам этого не видел, но слышал, что при нажатии на соответствующее текстовое поле будет отображаться значение, хотя это не решение. Я всегда рекомендую использовать несвязанные формы, так как вы можете шаг за шагом контролировать, что делают ваши поля/объекты. Поскольку у вас уже есть пользовательская функция для расчета адреса доставки, вам должно быть достаточно просто добавить код в событие формы «Открыть» или «Загрузить», например.

Private Sub Form_Load()

    textbox = CalcShippingAddr

End Sub
person Matt Donnan    schedule 14.02.2012
comment
Это сработало бы, если бы форма была одиночной, но для непрерывной формы заполнялось бы только первое поле. - person Scottie; 15.02.2012
comment
@Scottie К какой базе данных вы подключаетесь с помощью ADO, это MS Access или выделенный сервер базы данных? - person Matt Donnan; 15.02.2012
comment
Я не использую собственную базу данных Access. Я связываюсь с базой данных SQL Server. На данный момент я просто не устанавливаю Windows 7 SP1 на свою систему разработки. Кажется, это работает нормально. - person Scottie; 16.02.2012
comment
@Scottie Единственное, о чем я тогда мог подумать, это посмотреть, сможете ли вы связать свои таблицы SQL, а затем использовать старый метод DAO, а не ADO. - person Matt Donnan; 16.02.2012