Bug 4852

Summary: 1С8.1 не может получить доступ к COM-объекту MS IE
Product: WINE@Etersoft Reporter: Илья Шпигорь <shpigor>
Component: Internet Explorer / GeckoAssignee: Татьяна Фокина <tatyana>
Status: DEFERRED --- QA Contact: Svetlana Zhukova <svzhu>
Severity: normal    
Priority: P3 CC: amorozov, kondratyuk, lav, svzhu, vitperov
Version: 1.0.12   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: 12436 Связано с:
Дата напоминания:
Bug Depends on: 6857    
Bug Blocks: 437, 8900    
Attachments: вывод в консоль при открытии документа
вывод в консоль при переходе на вкладку с html

Description Илья Шпигорь 2010-01-21 13:56:23 MSK
Способ воспроизведения:

1. бутылка rt/12436
2. база rt_12436
3. Операции -> Документы -> Договоры
4. Открыть на редактирование
5. Перейти на вкладку текст договора
  Проблема 1 - окно пустое, текста нет
6. Нажать кнопку "Печать"
  Проблема 2 - сообщение об ошибке "Не удалось напечатать документ ошибка при вызове объекта JavaScript"


Тестировал на wine 1.0.12-eter1.3/1
Comment 1 Илья Шпигорь 2010-01-21 14:03:01 MSK
При установке IE текст документа отображается. При попытке печати вываливается дамп.

При запуске через wineole выдается ошибка сценария Internet Explorer с предложением продолжить выполнение.
Comment 2 Илья Шпигорь 2010-01-21 14:07:16 MSK
Проблема связана со встроенным в wine ole32.
Comment 3 Денис Баранов 2010-04-02 00:36:28 MSD
WINE@Etersoft 1.0.12 eter4.1/eter3
ошибки описанные в Комментарии #0 присутствуют.
Comment 4 Станислав Коробейников 2010-04-16 13:56:29 MSD
Created attachment 1649 [details]
вывод в консоль при открытии документа
Comment 5 Станислав Коробейников 2010-04-16 13:57:37 MSD
Created attachment 1650 [details]
вывод в консоль при переходе на вкладку с html
Comment 6 Станислав Коробейников 2010-04-16 14:04:41 MSD
Во время открытия документа в fixme видно, что ищутся (HTMLDocument_QueryInterface) два интерфейса 
3050f5f9-98b5-11cf-bb82-00aa00bdce0b
3050f69d-98b5-11cf-bb82-00aa00bdce0b
и не находятся. 
Это 
IMarkupContainer Interface
IDisplayServices Interface 
Они полностью совпадают с http://bugs.etersoft.ru/show_bug.cgi?id=2105#c4
Они объявлены, но не реализованы и HTMLDocument_QueryInterface их не ищет.
Можно сделать хотя бы скелет. 
Comment 7 Константин Кондратюк 2010-04-16 15:01:24 MSD
(In reply to comment #6)
> Во время открытия документа в fixme видно, что
> ищутся (HTMLDocument_QueryInterface) два интерфейса 
> 3050f5f9-98b5-11cf-bb82-00aa00bdce0b
> 3050f69d-98b5-11cf-bb82-00aa00bdce0b
> и не находятся. 
> Это 
> IMarkupContainer Interface
> IDisplayServices Interface 
> Они полностью совпадают с
> http://bugs.etersoft.ru/show_bug.cgi?id=2105#c4
> Они объявлены, но не реализованы и
> HTMLDocument_QueryInterface их не ищет.
> Можно сделать хотя бы скелет. 

Описание интерфейсов добавлены моим патчем как раз для #2105. Возможно, стоит поискать в git патчи с реализацией, мало ли что потерялось. Мне казалось, что я делал заглушки как минимум для IDisplayServices.
Comment 8 Станислав Коробейников 2010-04-16 16:45:00 MSD
Поправлюсь, не находятся интерфейсы:
IDisplayServices Interface
IMarkupContainer Interface
Этот ужу есть:
IMarkupServices Interface

(In reply to comment #7)
> Мне казалось, что я делал
> заглушки как минимум для IDisplayServices.

нашел:
commit 301f9190d23734f75aed3fb881bbb350ed6f67d7
Author: Konstantin Kondratyuk <kondratyuk@etersoft.ru>
Date:   Tue Oct 21 09:24:56 2008 +0400

    mshtml: Add ISelectionServices interface (part of fix eterbug #2105)

Но этот коммит почему-то отменен:

commit 439ca247098a76819ee54a4cc86d4b1c94cd6506
Author: Vitaly Perov <vitperov@etersoft.ru>
Date:   Wed Dec 3 18:21:36 2008 +0300

    Revert "mshtml: Add ISelectionServices interface (part of fix eterbug #2105)"
    
    This reverts commit 301f9190d23734f75aed3fb881bbb350ed6f67d7.




Comment 9 Константин Кондратюк 2010-04-16 21:31:50 MSD
Интересно, что патч откатился. Думаю, что это реализовано где-то в winehq было, поэтому Виталик откатил.

А вот IDisplayServices я действительно не делал - перепутал с ISelectionServices. Для IDisplayServices делал только idl.
Comment 10 Денис Баранов 2010-10-05 21:51:31 MSD
WINE@Etersoft 1.0.12.
Проблема остается.
Откладываем до 2.0
Comment 11 Денис Баранов 2011-09-08 15:28:37 MSK
Проверить на eterhack.
Comment 12 Svetlana Zhukova 2011-10-17 16:16:24 MSK
eterhack bottle bugs/4852
WINE@Etersoft 1.0 SQL 1.3.27/1.7.1-eter1.15/3
(В ответ на comment #0)
> Способ воспроизведения:
> 
> 1. бутылка rt/12436
> 2. база rt_12436
> 3. Операции -> Документы -> Договоры
> 4. Открыть на редактирование
И тут выпадает в дамп.