Windows 7 SP1 нарушава достъпа (не ADO начина)

Така че нашият корпоративен ИТ отдел реши, че е време да наложи SP1 на компютрите на всички.

Което означава, че трябва да накарам приложението си Access 2003 ADE да работи с глупавия проблем с несъвместимостта на ADO.

Накарах ADO частта да работи, като следвах KB2517589, но сега няколко от моите текстови полета казват #Име?.

Те са обвързани с код, така че например полето за данни в текстовото поле е =CalcShippingAddr().

Като тест замених кода със следния:

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

Това работи добре на моята машина за разработка, но веднага щом направя ADE и го изпратя на компютър без SP1, получавам #Name? върху текстовото поле. Кутията за съобщения никога не изскача.

Някакви идеи какво може да се случи?


person Scottie    schedule 27.07.2011    source източник
comment
Опитвали ли сте SP3 re 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