Summary: | 1с8.1 не отображаются ошибки | ||
---|---|---|---|
Product: | WINE@Etersoft | Reporter: | Shestakov Dmitriy <mid> |
Component: | Internet Explorer / Gecko | Assignee: | Svetlana Zhukova <svzhu> |
Status: | CLOSED FIXED | QA Contact: | Денис Баранов <baraka> |
Severity: | blocker | ||
Priority: | P1 | CC: | dtr, kondratyuk, lav, night, regan, sonner |
Version: | 1.0.12 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | All | ||
Whiteboard: | |||
Заявки RT: | 16521,16669,17393,20413,23211 | Связано с: | |
Дата напоминания: | |||
Bug Depends on: | 7427 | ||
Bug Blocks: | 437, 42 | ||
Attachments: |
Окно с описанием
Как работает в венде Как работает в wine@ |
Description
Shestakov Dmitriy
2010-11-11 15:25:03 MSK
в /var/ftp/pvt/Windows/Tesing/RT/16521 лежат сугубо установочные файлы с 1с81 Попросил в РТ прислать конфигурацию. /var/ftp/pvt/Windows/Tesing/RT/16521/TD - лежит база. /var/ftp/pvt/Windows/Tesing/RT/16521/TD архив под паролем.. Created attachment 1958 [details]
Окно с описанием
wine 7.23/14 бутылка bugs/6423 подключил базу, протестировал(делал как описывал автор) появляется сообщение о неправильно заполненном документе, с указанием ошибок. Бага не воспроизвелась. Прилагаю Скриншот: Окно с описанием Created attachment 1960 [details]
Как работает в венде
Created attachment 1961 [details]
Как работает в wine@
(В ответ на comment #6) > wine 7.23/14 > бутылка bugs/6423 > подключил базу, протестировал(делал как описывал автор) появляется сообщение о > неправильно заполненном документе, с указанием ошибок. Бага не воспроизвелась. > Прилагаю Скриншот: Окно с описанием Если у нас воспроизводится, то как должно быть в венде, то вероятно клиенту следует обновиться. to regan@: окно ошибки воспроизводится? как воспроизводится? wine 7.32/15 1с.81 бутылка bugs/6423 бага полностью воспроизводиться Переключить интерфейс->Кадровый учет организаций -> (верхнее меню) кадровый учет ->кадровый учет-> прием на работу в организацию -> добавляем новый документ с пустыми записями и выдается пустое информационное окно как показано на скриншоте Как работает в винде(это работа в wine... перепутали название скринов) Как работает в wine@(так работает в виндовс собственно так и должно работать) При попытки добавить в Конфигурации Зарплата и кадры для бюджета еще одну организацию выдает какое-то сообщение при нажатии на кнопку записать, но текста не видно. Скриншот в приложении. появилась аналогичная проблема с другой конфигурацией. > бутылка bugs/6423
При входе в базу выводится сообщение о том, что база не обнаружена.
(В ответ на comment #12) > > бутылка bugs/6423 > При входе в базу выводится сообщение о том, что база не обнаружена. видимо что-то случилось по новой загрузил базу, пока вроде работает если вдруг опять что-то случиться: создать новую базу- открыть через конфигуратор - администратирование - загрузить инф-ю базу - база лежит в C:\Program Files (*.dt) - подождать пока загрузиться пароль есть в коментариях После выполнения ieinstall ошибка отображается Также всё работает, если скопировать mshtml.dll из бутылки, в которой был выполнен ieinstall. В логах при появлении окна с ошибкой присутствуют вызовы CustomDoc_QueryInterface с запросом следующих нереализованных интерфейсов: b196b283-bab4-101a-b69c-00aa00341d07 - IProvideClassInfo 3050f4a0-98b5-11cf-bb82-00aa00bdce0b - IMarkupServices 3050f5f9-98b5-11cf-bb82-00aa00bdce0b - IMarkupContainer 3050f69d-98b5-11cf-bb82-00aa00bdce0b - IDisplayServices Добавил стаб для IMarkupContainer. > В логах при появлении окна с ошибкой присутствуют вызовы
> CustomDoc_QueryInterface с запросом следующих нереализованных интерфейсов:
Это относится к eterhack.
Добавил стаб для IMarkupServices. Добавил стаб для IDisplayServices. Добавил стаб для IProvideClassInfo. В логе появился вызов IProvideClassInfo::GetClassInfo. Реализовал IProvideClassInfo::GetClassInfo. Какого-то особого прогресса от этого не заметил. > Также всё работает, если скопировать mshtml.dll из бутылки, в которой был
> выполнен ieinstall.
Копирование mshtml.dll помогает в 1.0.12-eter11.3/19.
Выполнение ieinstall помогает и в 1.0.12, и в eterhack.
Оказывается, в 1.0.12 уже были IMarkupServices и IProvideClassInfo. В логах есть ещё нереализованные интерфейсы: warn:mshtml:HTMLTxtRange_QueryInterface (0xc2596f8)->({3050f29c-98b5-11cf-bb82-00aa00bdce0b} 0x32c95c) warn:mshtml:HTMLDOMNode_QI (0xc221d10)->({3050f1ff-98b5-11cf-bb82-00aa00bdce0b} 0x32c918) Добавил в idl объявление IHTMLControlRange (3050f29c-98b5-11cf-bb82-00aa00bdce0b). > warn:mshtml:HTMLTxtRange_QueryInterface
> (0xc2596f8)->({3050f29c-98b5-11cf-bb82-00aa00bdce0b} 0x32c95c)
> warn:mshtml:HTMLDOMNode_QI (0xc221d10)->({3050f1ff-98b5-11cf-bb82-00aa00bdce0b}
> 0x32c918)
Немного дополнил wine-тесты и пришёл к выводу, что в Windows у этих объектов таких интерфейсов нет.
Занимался данным багом. На текущем eterhack окно, в котором должна быть ошибка, перестало появляться вообще. В консоли при этом есть такие строчки: err:mshtml:HTMLDocument_Create Failed to init Gecko, returning CLASS_E_CLASSNOTAVAILABLE fixme:ole:CoCreateInstance no instance created for interface {332c4425-26cb-11d0-b483-00c04fd90119} of class {25336920-03f9-11cf-8fd0-00aa00686f13}, hres is 0x80040111 > На текущем eterhack окно, в котором должна быть ошибка, перестало появляться
> вообще.
Проблему решил, установив gecko 1.2.0 командой
ww control appwiz.cpl install_gecko
На основе программы-примера отсюда (http://www.codeguru.com/Cpp/I-N/ieprogram/article.php/c4379/) и примеров кода из MSDN (http://msdn.microsoft.com/en-us/library/aa752047(v=VS.85).aspx) сделал тестовую программу, которая загружает HTML-контент способом, похожим на используемый 1С: shdocvw/CWebPage.c в wine-etersoft-devel. Во всяком случае, 1С также использует PersistStreamInit_Load. Программа выводит пустую страницу в наших wine (1.0.12 и eterhack), и работает нормально в Windows и ванильном wine. Также программа работает в нашем wine после установки IE. Чтобы сообщение об ошибке стало отображаться в eterhack, надо приложить следующие патчи: commit cd4a74611ba57f71e4edc476b1e7d0e3ea959b0e Author: Jacek Caban <jacek@codeweavers.com> Date: Fri May 13 18:18:23 2011 +0200 mshtml: Pass E_ABORT as binding results of bindings without IBinding in abort_document_bindings. commit 1a6e3c704f87724705bc45462508aadd4fbe9f8c Author: Jacek Caban <jacek@codeweavers.com> Date: Fri May 13 18:17:59 2011 +0200 mshtml: Move document binding to the new document binding list in on_start_nsrequest. и откатить патч: commit f65fdc74fb8e28afdf34aec6b069b2e8cffa1a6b Author: Konstantin Kondratyuk <kondratyuk@etersoft.ru> Date: Fri Dec 19 15:21:27 2008 +0300 mshtml: Add VT_INT support in IHTMLElementCollection_item Правда, сообщение после этого всё равно отображается не совсем правильно. Вместо значка выводятся маленький чёрный кружочек и перевод строки. С 1.0.12 всё сложно из-за большой разницы в коде mshtml по сравнению с wine-1.3.2x Проверить на eterhack INE@Etersoft 1.0 SQL 1.3.27/1.7.1-eter1.12/3 бутылка wine@eterhack bottle 1c/bug42 c:/Program Files/1cv81/bin база bug6423 > Пароль администратора faceofwar (В ответ на comment #10) > Переключить интерфейс->Кадровый учет организаций -> (верхнее меню) кадровый > учет ->кадровый учет-> прием на работу в организацию -> добавляем новый документ с пустыми записями Все корректно.Пустых записей нет,в окошке четко видно надпись. *** Bug 7909 has been marked as a duplicate of this bug. *** |