Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Изменения в MDAC Windows 7 SP1 / 25 сообщений из 26, страница 1 из 2
09.02.2011, 13:19
    #37106534
Изменения в MDAC Windows 7 SP1
Здравствуйте.

Не так давно поставил себе SP1 к Windows 7 и заметил, что Microsoft внесла изменения в файл msado25.tlb.
Для своих проектов под Access 2003 я использую ссылку на Microsoft ActiveX Data Objects 2.5 Library.

Так вот, я скомпилировал проект в MDE. На другом компьютере появилась ошибка:
Код: plaintext
Class does not support Automation or does not support expected interface.

Код, в котором произошла ошибка:
Код: plaintext
    Dim Cn As ADODB.Connection: Set Cn = New ADODB.Connection

Сравнение файлов msado25.tlb на моем и другом компьютере без SP1 выявило довольно существенные различия.
Интерфейсы поменяли свои uuid. Названия остались старые, а GUID'ы новые. Старые интерфейсы тоже остались, но их переименовали в xxxx_Deprecated. Заметил также изменения в атрибутах параметров методов.

Компилятор VBA использует текущие GUID'ы интерфейса. На системе без SP1 этих GUID'ов попросту нет.

Вот фрагменты из старой и новой версий:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
[                                                        [
  odl,                                                     odl,
  uuid(00000550-0000-0010-8000-00AA006D2EA4),              uuid(00001550-0000-0010-8000-00AA006D2EA4),
  helpcontext(0x0012c901),                                 helpcontext(0x0012c901),
  dual,                                                    dual,
  oleautomation oleautomation
]                                                        ]
interface _Connection : Connection15 {                   interface _Connection : Connection15 {
    [id(0x00000015), helpcontext(0x0012c8b8)] [id(0x00000015), helpcontext(0x0012c8b8)]
    HRESULT Cancel();                                        HRESULT Cancel();
};                                                       };

[                                                        [
  uuid(00000514-0000-0010-8000-00AA006D2EA4),              uuid(00000514-0000-0010-8000-00AA006D2EA4),
  helpcontext(0x0012c901),                                 helpcontext(0x0012c901),
  licensed licensed
]                                                        ]
coclass Connection {                                     coclass Connection {
    [default] interface _Connection;                         [default] interface _Connection;
    [default, source] dispinterface ConnectionEvents;        [default, source] dispinterface ConnectionEvents;
};                                                       };

Пока вышел из положения так. Буду делать сборку на старой системе.

С уважением, Павел Фурсов.
...
Рейтинг: 0 / 0
10.02.2011, 12:11
    #37108669
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Павел спасибо за информацию !
Такие вопросы есть
1) SP1 это релиз кандидат который? RTM вроде не было ещё.
2) http://technet.microsoft.com/en-us/evalcenter/ff384134.aspx
]Тут пишут что SP 1 содержит только выпущенные ранее апдейты. Т.е. я хочу сказать что если автоматическое обновление включено, то этот эффект должен был появится раньше, после какого то текущего обновления.
3) У меня: SP1 не ставил, но регулярно автообновляюсь, на ADO 2.1 никаких проблем не заметил. Что кстати заставляет Вас использоать 2.5 ?
...
Рейтинг: 0 / 0
10.02.2011, 13:19
    #37108942
Изменения в MDAC Windows 7 SP1
vladK,

Windows 7 SP1 содержит обновление платформы, а не только патчи.

ADO 2.5 используется по-умолчанию в Access 2003/2007/2010 x86.
ADO 2.8 замечен в Access 2010 x64.

Информация о ссылках бралась из файлов MSACC.OLB.

Microsoft выпустила SP1 еще в январе
http://blogs.technet.com/b/vm/archive/2011/01/14/service-pack-1-windows-7-windows-server-2008-r2.aspx
Вот он ко мне тогда и попал.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
17.02.2011, 10:41
    #37121684
Изменения в MDAC Windows 7 SP1
Вчера, 16.02.2011, на MSDN появились образы Windows 7 SP1.

После установки на виртуальную машину образа Windows 7 Enterprise with SP1, я сравнил интересовавшие меня файлы.
Содержимое одинаковое, дата/время различались на 1 день. Видимо новая сборка более поздняя.

Так что проблема осталась.

С уважением,
Павел Фурсов.
...
Рейтинг: 0 / 0
23.02.2011, 11:26
    #37131857
Изменения в MDAC Windows 7 SP1
Привет всем!

Наконец-то появился SP1 к Windows 7. Microsoft предоставила доступ всем желающим.

Я решил проверить все версии ADO. И ужаснулся.

Изменились guid'ы интерфейсов у всех(!) версий.

Проверил так:
под Windows 7 SP1 сделал mdb файлы под каждую версию ADO.
в References выбрал нужную версию библиотеки ADO.
добавил макрос AutoExec, в котором вызывается функция:
Код: plaintext
Dim Cn As ADODB.Connection: Set Cn = New ADODB.Connection
собрал mde.
запустил на системе с Windows Server 2003.
в результате все файлы при запуске выдают сообщение об ошибке.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
25.02.2011, 17:08
    #37136413
Изменения в MDAC Windows 7 SP1
Здравствуйте.

Дополнительную информацию о данной проблеме можно почитать на форуме MSDN.
Breaking change in MDAC ADODB COM components in Windows 7 Service Pack 1 (repost with MSDN liveID)

с уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
25.02.2011, 19:34
    #37136783
Sator Arepo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Павел ФурсовЗдравствуйте.

Дополнительную информацию о данной проблеме можно почитать на форуме MSDN.
Breaking change in MDAC ADODB COM components in Windows 7 Service Pack 1 (repost with MSDN liveID)

с уважением,
Павел Фурсов
Мучос грасиес.
А вообще, зла не хватает, конечно....
...
Рейтинг: 0 / 0
25.02.2011, 19:37
    #37136787
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Sator ArepoМучос грасиес.
Мучас грасиас.
...
Рейтинг: 0 / 0
25.02.2011, 20:14
    #37136836
Sator Arepo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Владимир СанычSator ArepoМучос грасиес.
Мучас грасиас.
Зануда :-)

Я, кстати, на это, похоже и напоролся, когда отредактировал сделанный на XP проект в семерке. Был ошибка 430 "Class does not support Automation or does not support expected interface".
10171398
Правда, подумал, что дело в версии Аксесса.
А вообще, проверю еще раз.
...
Рейтинг: 0 / 0
25.02.2011, 20:25
    #37136847
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Sator ArepoЗануда :-)
Да!
...
Рейтинг: 0 / 0
25.02.2011, 20:26
    #37136849
Изменения в MDAC Windows 7 SP1
Sator ArepoЯ, кстати, на это, похоже и напоролся, когда отредактировал сделанный на XP проект в семерке. Был ошибка 430 "Class does not support Automation or does not support expected interface".
10171398
Правда, подумал, что дело в версии Аксесса.
А вообще, проверю еще раз.
В вашем случае думаю проблема была с Access 2010. А вылечилась перекомпилированием в Access 2003 после изменения кода. При этом не надо забывать, что DAO в Access 2003 это не тоже самое DAO в Access 2010. Там разные dll-ки используются.

А описанная здесь проблема касается только Windows 7 с установленным SP1.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
21.04.2011, 09:44
    #37225962
Draginsv
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Аналогичная проблема всплыла, когда поменяли мне компьютер. Был win XP SP3 х86, теперь win 7 максимальная х64.
Я также установил office 2003.
ADP файл работает везде без ошибок.
ADP -> ADE , далее рассылаю
в ссылках использую ado2.8

На XP SP2 A2003 - ошибка "Class does not support automation or does not support expected interface"
На XP SP3 A2003 - ошибка "Class does not support automation or does not support expected interface"
На XP SP3 A2007 - ошибка "Class does not support automation or does not support expected interface"
На win7 A2003 - ошибка "Class does not support automation or does not support expected interface"

У микрософта нарыл http://www.microsoft.com/technet/security/Bulletin/MS11-002.mspx
Установил (KB2419632) на XP SP3 проблема не решилась.
Я так понял версии msado**.dll зависят от версии windows, а не от офиса.

Так как всех подвести под один знаменатель?
...
Рейтинг: 0 / 0
21.04.2011, 17:58
    #37227291
Изменения в MDAC Windows 7 SP1
DraginsvАналогичная проблема всплыла, когда поменяли мне компьютер. Был win XP SP3 х86, теперь win 7 максимальная х64.
...

Так как всех подвести под один знаменатель?
Не использовать для сборки Windows 7 SP1!!!
Именно в нем были изменены все библиотеки ADO.
Создавать ADE следует на другом компьютере (Windows 7 RTM/Vista/XP).

Решения как такового нет. Проблема несовместимости до сих пор есть.
Я считаю, что Microsoft следует вернуть все как было до Windows 7 SP1.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
15.09.2011, 19:30
    #37442378
Изменения в MDAC Windows 7 SP1
Здравствуйте.

Сегодня установил Windows Developer Preview 64-bit сборка 8102 на виртуальную машину VMWare 8.
Проверил файлы ADO. С ними все в порядке. Проблем с совместимостью быть не должно.

С уважением,
Павел Фурсов

P.S. Прошло уже 7 месяцев с момента появления Windows 7 SP1, а проблемы с ADO в нем так и не устранили...
...
Рейтинг: 0 / 0
21.10.2011, 10:19
    #37491722
Изменения в MDAC Windows 7 SP1
Здравствуйте.
Читайте продолжение дискуссии в новом топике:
Windows 8 Developer Preview build contains the complete fix of the ADO typelib issue

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
15.02.2012, 13:43
    #37662911
Изменения в MDAC Windows 7 SP1
Здравствуйте,

Наконец-то Microsoft выпустила исправление библиотек ADO для Windows 7 SP1 и Windows Server 2008 R2 SP1:

An ADO-based application that is compiled in Windows 7 SP1 or in Windows Server 2008 R2 SP1 does not run in earlier versions of Windows

Я установил себе это обновление (Windows 7 SP1 x64), перекомпилировал код и, о чудо, все заработало в Windows XP.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
22.02.2012, 15:51
    #37674642
Изменения в MDAC Windows 7 SP1
Здравствуйте,

Обнаружилась проблема в Access после установки патча KB2640696.

О ней вы можете почитать на форуме в сообщении Pak-Ming Cheung от 21.02.2012:
Windows 8 Developer Preview build contains the complete fix of the ADO typelib issue

Такое же поведение наблюдается и в Windows 8 Developer Preview.

Надеюсь, что в процесс компиляции VBA-кода в Access будут внесены существенные исправления, чтобы наконец избавить меня от зависания Access'а в момент компиляции проекта.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
24.05.2012, 12:57
    #37809583
Moonwalker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Павел ФурсовНаконец-то Microsoft выпустила исправление библиотек ADO для Windows 7 SP1 и Windows Server 2008 R2 SP1:

An ADO-based application that is compiled in Windows 7 SP1 or in Windows Server 2008 R2 SP1 does not run in earlier versions of Windows
Спасибо!
Установил Windows6.1-KB2640696-v3-x64.msu
Перекомпилировал проект на VB6. Отдал на тестирование.
...
Рейтинг: 0 / 0
27.09.2012, 18:08
    #37974951
Изменения в MDAC Windows 7 SP1
Здравствуйте.

С небольшим опозданием сообщаю об очередном исправлении в ADO.
MS12-045: уязвимость в компонентах доступа к данным Microsoft (MDAC) делает возможным удаленный запуск программного кода 10.07.2012

Иправления затронули все ОС, совместимость есть.

С уважением,
Павел Фурсов
...
Рейтинг: 0 / 0
02.10.2012, 17:14
    #37980664
Palarm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Как думаете, народ, если делать так:
Код: vbnet
1.
2.
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")

При этом в референсах ничего не подключать - подхватит Аксес нужную библиотеку? Офисные ссылки на Word и Excel я так покоцал, подставляя код вместо имени свойства/метода объекта - прокатило. Сейчас думаю с ADO так же сделать, а то задолбали они со своими "релизами".
...
Рейтинг: 0 / 0
02.10.2012, 18:25
    #37980793
?????
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
А попробовать?
Новая база А2003, в референсах (по умолчанию?)- АДО 2.5
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Public Function GetADOVersion$()
    Dim con As Object
    Const ConStr$ = "Provider=SQLOLEDB;" & _
                    "Data Source=(local);" & _
                    "Database=NorthwindCS;" & _
                    "User ID=sa;" & _
                    "Password="
    Set con = CreateObject("ADODB.Connection")
    con.ConnectionString = ConStr
    con.CursorLocation = 2
    con.Open
    GetADOVersion = con.Version
    con.Close: Set con = Nothing
End Function


Код: vbnet
1.
2.
?GetADOVersion
2.8
...
Рейтинг: 0 / 0
02.10.2012, 18:53
    #37980820
Palarm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
Просто "пробовать" - лопатить много букаф. Вдруг сделаю - а потом на чем нить споткнусь. Но раз вроде катит - будем ехать.

А почему тогда этот вариант активно не юзают, предпочитая ставить паки?
...
Рейтинг: 0 / 0
02.10.2012, 19:19
    #37980850
?????
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
А почему тогда этот вариант активно не юзают, предпочитая ставить паки?
По-моему, это разные вещи. МДАК старших версий может больше.
Например, 2.1 - не поддерживает именованные инстансы МС СКЛ,
2.5 - объект комманд не поддерживает NamedParameters.
...
Рейтинг: 0 / 0
02.10.2012, 21:56
    #37980971
foxпро
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
?????А попробовать?
...
Код: vbnet
1.
Set con = CreateObject("ADODB.Connection")


...

1. Новая база А2003, в референсах АДО вообще нет
con.Version = 6.1

2. Новая база А2003, в референсах АДО 2.1
con.Version = 6.1

Сдается, что цепляется последняя имеющаяся в системе библиотека ado: у Вас это, вероятно ado 2,8, а у меня - ado 6,1

а какая будет картина у заказчика х/з :)
...
Рейтинг: 0 / 0
03.10.2012, 04:20
    #37981136
Palarm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменения в MDAC Windows 7 SP1
?????А почему тогда этот вариант активно не юзают, предпочитая ставить паки?
По-моему, это разные вещи. МДАК старших версий может больше.
Например, 2.1 - не поддерживает именованные инстансы МС СКЛ,
2.5 - объект комманд не поддерживает NamedParameters.это понятно. Вопрос не в том, чтобы сделать универсальный вариант от ADO 2.1 до ~, а хотябы избавиться от гемора, когда у тебя все работает, на других машинах с ТЕМИ ЖЕ тынцами ADO тоже все ОК, а у клиента иной раз даже не взлетает. Это все ужасно задолбало. Причина как теперь выясняется - проделки мелкомягких. Сначала они предложили msado60_Backcompat_i386.tlb как временное решение, потом выпустили паки. Завтра еще чего нить намутят - а нам качать, обновлять, но самая бяка - упрашивать клиента это сделать, который ясно дело может и послать наконец, ибо его это тоже может задолбать.

Язык чешется представить все это как вселенский заговор или попытки выдавить из одной версии на другую, но скорее всего это просто бестолковость. Не боги горшки обжигают, и мелкомягкие бывает тупят и халтурят. Ну, блин, такая селявуха. Думается, если удастся хотя бы снизить % "не работает" - и то ладно, хотя конечно так кодить не очень удобно.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Изменения в MDAC Windows 7 SP1 / 25 сообщений из 26, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]