Bug 2658

Summary: MS Office XP требует повторной активации
Product: WINE@Etersoft Reporter: Константин Кондратюк <kondratyuk>
Component: Запуск ; Отладка ; ИсключенияAssignee: Александр Морозов <amorozov>
Status: CLOSED FIXED QA Contact:
Severity: minor    
Priority: P4 CC: amorozov, baraka, lav, leonid, lexmag, night, sonner
Version: 1.0.9   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 788, 4284    

Description Константин Кондратюк 2008-10-17 13:44:20 MSD
При запуске любого приложения MSO сообщает о том, что конфигурация оборудования была серьёзно изменена, и требуется повторная активация. Запускается мастер активации, увидеть который можно только после установки IE. Работа после закрытия мастера возможно только в демо-режиме.

Воспроизведение проблемы: запустить любое приложение в бутылке msoxp.
Сборка: alt25 от 16 октября.
Comment 1 Александр Морозов 2008-10-23 17:37:01 MSD
Если выставить 98-ю версию Windows, то при запуске WINWORD.EXE появляется сообщение о том, что приложение не было установлено для текущего пользователя с кнопкой OK, при нажатии на которую Word закрывается.

В логах при этом видно следующее:

trace:reg:NtOpenKey (0x30,L"Software\\Microsoft\\Office\\10.0\\Common",f003f,0x32f880)
trace:reg:NtOpenKey <- 0x5c

trace:reg:NtOpenKey (0x5c,L"Licensing",f003f,0x32f3a0)
trace:reg:NtOpenKey <- (nil)

После создания ключа HKCU\Software\Microsoft\Office\10.0\Common\Licensing:

trace:reg:NtOpenKey (0x64,L"Licensing",f003f,0x32f3a0)
trace:reg:NtOpenKey <- 0x184
trace:reg:RegQueryValueExA (0x184,"8E46FEFAD9736294B305E968CEDFFCB9",(nil),0x32f3f0,(nil),0x32f3dc=0)
trace:reg:NtQueryValueKey (0x184,L"8E46FEFAD9736294B305E968CEDFFCB9",2,0x32f29c,256)

В случае Windows XP:

trace:reg:NtCreateKey ((nil),L"\\Registry\\User\\S-1-5-4",<null>,0,f003f,0x32f6d8)
trace:reg:NtCreateKey <- 0x30

trace:reg:NtOpenKey (0x30,L"Software\\Microsoft\\Office\\10.0\\Common",2001f,0x32f880)
trace:reg:NtOpenKey <- 0x60

trace:reg:NtCreateKey ((nil),L"Machine",<null>,0,f003f,0x32f6e8)
trace:reg:NtCreateKey <- 0x38

trace:reg:NtOpenKey (0x38,L"Software\\Microsoft\\Office\\10.0\\Common\\Licensing",2001f,0x32ddc0)
trace:reg:NtOpenKey <- (nil)

trace:reg:NtOpenKey (0x60,L"Licensing",2001f,0x32e664)
trace:reg:NtOpenKey <- 0xfc
trace:reg:RegQueryValueExW (0xfc,L"8E46FEFAD9736294B305E968CEDFFCB9",(nil),0x32e724,(nil),0x32e728=0)
trace:reg:NtQueryValueKey (0xfc,L"8E46FEFAD9736294B305E968CEDFFCB9",2,0x32e560,12)
trace:reg:NtOpenKey (0x38,L"Software\\Microsoft\\Office\\10.0\\Registration",2001f,0x32e6b0)
trace:reg:NtOpenKey <- 0xfc
trace:reg:NtOpenKey (0xfc,L"{91110419-6000-11D3-8CFE-0050048383C9}",20019,0x32e728)
trace:reg:NtOpenKey <- 0x104
trace:reg:RegQueryValueExW (0x104,L"DigitalProductID",(nil),0x32e71c,0x32ea44,0x32e720=164)
trace:reg:NtQueryValueKey (0x104,L"DigitalProductID",2,0x32e5ac,176)
Comment 2 Anton Rudnev 2008-10-25 17:08:37 MSD
Патч http://lists.etersoft.ru/pipermail/wine-patches/2008-October/000045.html

Проверить работоспособность приложений можно в бутылке eterbug-2658

Бага связана с процессом установки офиса и ошибочным решением баги 610:
там я запрещал выполнение действия CADpc (выполнение функции CASignDPCHWIDPair
из библиотеки CADLL), что позволяло не прерываться процессу установки. Но именно отмена этого действия приводила к появлению мастеру активации после запуска офисных приложений.

Причина ошибочного выполнения функции CASignDPCHWIDPair на самом деле связана с одним единственным неверным значением в таблице сопоставления юникода ( libs/wine/collation.c )

Патч разрешающий эту багу отменяет запрет действия CADpc и исправляет таблицу сопоставления юникода.
Comment 3 Anton Rudnev 2008-10-25 17:13:08 MSD
какой именно элемент таблицы сопоставления ошибочен я узнал из http://bugs.winehq.org/show_bug.cgi?id=5163
Comment 4 Денис Баранов 2009-10-22 13:19:02 MSD
Ошибка снова с нами.
WINE@Etersoft 1.0.11 eter10/eter6

Воспроизвести можно в бутылке mso/msoxp
Comment 5 Александр Морозов 2009-11-13 19:48:18 MSK
Ошибка с нами достаточно давно. Она появилась в 1.0.10-eter6. В 1.0.10-eter5 её ещё не было.
Comment 6 Александр Морозов 2009-11-16 14:03:48 MSK
Ошибка вызвана коммитом 3c4ff513b609f3e59b8c99:
msi: fix deferred execution custom actions behaviour in ACTION_CustomAction(...). Eterbug 807.
Если его откатить, то после закрытия мастера активации приложения MS Office в демо-режим не переходят.