Bug 16185

Summary: Ошибка при попытке печати файла: падение в PRINTDLG_CreateDCA
Product: WINE@Etersoft Reporter: Иван Ивлев <iviv>
Component: Печать ; Диалог печатиAssignee: Иван Ивлев <iviv>
Status: CLOSED FIXED QA Contact: Олег Шевченко <olezha>
Severity: normal    
Priority: P4 CC: klhzn, lav, mais
Version: 7.20   
Target Milestone: release 7.20   
Hardware: PC   
OS: Linux   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on: 16193, 16211    
Bug Blocks: 16087, 16101    
Attachments: Лог ошибки печати
iexplorefall.txt
1CFallEter-7.x.txt
32fall.txt

Description Иван Ивлев 2022-12-21 20:08:32 MSK
Created attachment 5416 [details]
Лог ошибки печати

Проблема была замечена в RedOS 7.3.1 (W@E 7.20) 1С, SmetaWizard4 

При попытке распечатать файл в программах было замечено: при выборе любого принтера и нажатии на "ОК" происходит ошибка и приложение крашится. В консоли строки:

0118:fixme:crypt:ProvStore_release Unimplemented flags 1
0118:fixme:crypt:MemStore_release Unimplemented flags 1
0118:fixme:cryptasn:CryptDecodeObjectEx Unsupported decoder for lpszStructType 1.3.6.1.4.1.311.2.1.4
0118:fixme:cryptasn:CryptDecodeObjectEx Unsupported decoder for lpszStructType 1.3.6.1.4.1.311.2.1.4
0118:fixme:win:NtUserScrollWindowEx some flags (8007) are unhandled
wine: Unhandled page fault on read access to 00000004 at address 0543B434 (thread 0118), starting debugger...
017c:fixme:imm:ImeSetActiveContext (000406DC, 1): stub
017c:fixme:imm:ImmReleaseContext (000406C0, 000406DC): stub
0188:fixme:imm:ImeSetActiveContext (0000000000020706, 0): stub
0188:fixme:imm:ImmReleaseContext (00000000000406BA, 0000000000020706): stub
017c:fixme:dbghelp:elf_search_auxv can't find symbol in module
017c:fixme:dbghelp:elf_search_auxv can't find symbol in module
...
017c:fixme:dbghelp:elf_search_auxv can't find symbol in module
017c:err:dbghelp_msc:codeview_process_info Unknown CODEVIEW signature 00000000 in module L"comdlg32"

Также генерируется лог "Лог ошибки печати" (в приложениях)
Comment 1 Иван Ивлев 2022-12-21 21:22:26 MSK
Проверил наличие проблемы в ALT Workstation 10.

--------
W@E 7.20.4-alt0.p10.1
--------

SmetaWizard4: Проблема присутствует, ошибка такая же

1C:Предприятие 7.7: Проблема присутствует, ошибка такая же

KOMPAS3Dv20: Проблемы нет, всё печатается нормально

--------
W@E 7.15.2-alt0.p10.1
--------

SmetaWizard4: Проблема присутствует, ошибка такая же

1C:Предприятие 7.7: Проблема присутствует, ошибка такая же


Вывод из этого: проблема не только в РЕДОС, в AЛЬТ рабочая станция 10 она также присутствует. От версии W@E (7.15 или 7.20) не зависит.
Comment 2 Vitaly Lipatov 2022-12-22 20:02:23 MSK
Нужно проверить:
1. в wine notepad
2. через swine (в 1С 7.7)
Comment 3 Vitaly Lipatov 2022-12-22 20:07:56 MSK
(Ответ Vitaly Lipatov на комментарий #2)
> Нужно проверить:
> 1. в wine notepad
> 2. через swine (в 1С 7.7)

Если воспроизведётся в swine, далее нужно проверить на swine vanilla64, а также запуском через ww, что должно дать более полный отладочный вывод.
Comment 4 Vitaly Lipatov 2022-12-22 23:46:06 MSK
(Ответ Vitaly Lipatov на комментарий #3)
...> также запуском через ww, что должно дать более полный отладочный вывод.
Под запуском через ww имелась в виду сборку из исходников из ветки rebased-etersoft, там сейчас wine-8.0-rc1
Не забудьте обновить репозиторий wine-rebased-utils, в котором скрипт build.sh для сборки.
Comment 5 Vitaly Lipatov 2022-12-23 02:42:10 MSK
(Ответ Vitaly Lipatov на комментарий #2)
> Нужно проверить:
> 1. в wine notepad
И также в чисто 32-битном префиксе.
Comment 6 Иван Ивлев 2023-01-11 21:26:22 MSK
> Нужно проверить:
> 1. в wine notepad=========================================================

Проверяю. В клон 284 (iviv-16185-ALTWS10) установил туда W@E, заказанный на sales.

WINE@Etersoft 7.20.4-alt0.p10.1 установлен.
Пример использования (запускать под пользователем):
 $ wine setup.exe

Установленные пакеты WINE@Etersoft:
 # epm qp wine
 # rpm -qa | grep -E -i --color -- "(wine)"
wine-etersoft-common-7.20.4-alt0.p10.1.noarch
wine-etersoft-winetricks-20220617-alt1.p10.2.noarch
wine-etersoft-full-7.20.4-alt0.p10.1.x86_64
wine-etersoft-programs-7.20.4-alt0.p10.1.x86_64
wine-etersoft-mono-7.4.0-eter1.p10.2.noarch
wine-etersoft-grdwine-0.5.7.1-alt0.p10.1.x86_64
wine32-etersoft-7.20.4-alt0.p10.1.i586
wine-etersoft-network-7.0.8-alt0.p10.1.x86_64
wine32-etersoft-grdwine-0.5.7.1-alt0.p10.1.i586
wine-etersoft-gecko-2.47.3-alt2.p10.3.noarch
wine-etersoft-7.20.4-alt0.p10.1.x86_64

Далее:
$ wine notepad 
Пишу что-то в файл и сохраняю.
Нажимаю "Печать" и выбираю Cups PDF - "ОК"

Никакой ошибки, на рабочем столе появляется пдф файл 

Решил также попробовать распечатать страницу в iexplore

Запустил $ wine iexplore, пытаюсь распечатать, вылезла ошибка, был создан лог, а приложение упало. Лог с именем iexplorefall.txt прикреплю

В консоли:

01fc:fixme:dbghelp:elf_search_auxv can't find symbol in module
01fc:err:dbghelp_msc:codeview_process_info Unknown CODEVIEW signature 00000000 in module L"wineps"
01fc:err:dbghelp_msc:codeview_process_info Unknown CODEVIEW signature 00000000 in module L"gdi32"
wine: Read access denied for device L"\\??\\Z:\\", FS volume label and serial are not available.

===========================================================================
> 2. через swine (в 1С 7.7)
Проверяю. Создал бутылку: 

$ swine eter-7.x -c -p bug16185


[wine-etersoft-7.20.4-alt1@eter-7:people/iviv/bug16185 .wine-bug16185]$ wine --version
wine-7.20.4-alt1 (WINE@Etersoft)

Из папки /var/ftp/pvt/Windows/1C/1Cv77 запускаю установку $ wine 1CSetup27.exe

$ wine 1CSetup27.exe

Всплыло окошко установки wine-mono, нажал "Установить". Открылся мастер установки 1С, установил.

После этого установил mfc42.dll командой 

$ winetricks mfc42

После установки, ввожу команду

$ winecfg

В появившемся окне "Настройка Wine" перешёл во вкладку "Графика" и убрал галочку из чекбокса "Разрешил менеджеру окон управлять окнами Wine". Принять и Ок. 

Запускаю 1С:Предприятие в режиме Конфигуратор командой

$ wine 1cv7s.exe

Появляется окно "Выбор формата хранения данных", которое находится поверх таблички-уведомлялки. Жму Ок.

Открылся Конфигуратор. Вверху перехожу во вкладку "Конфигурация" > "Открыть конфигурацию", это вызывает открытие окна, которое следует просто закрыть и согласиться с сохранением метаданных. После чего в всплывшем окне нажать "Да" и в следующем всплывшем окне нажать "Принять". 
Таким образом мы создали файл 1сv7.md, которого нам не хватало. 

Далее, снова запускаем 1С:Предприятие
$ wine 1cv7s.exe
Теперь в окне выбора режима выбираем 1С:Предприятие и жмем "ОК".

1C запустился, теперь создаю текстовый документ и вписываю пару символов. Нажимаю "Печать" и получаю сообщение об ошибке печати c падением 1С и созданным логом "1CFallEter-7.x.txt". 
При попытке напечатать таблицу не происходит вылета и не создаётся лога, только появляется окошко "Ошибка печати" с кнопкой "ОК".

В консоли:

015c:fixme:dbghelp:elf_search_auxv can't find symbol in module
015c:err:dbghelp_msc:codeview_process_info Unknown CODEVIEW signature 00000000 in module L"comdlg32"

==========================================================================
Ошибка воспроизвелась, поэтому продолжаю тестирование в swine vanilla64

Создал бутылку:
$ swine vanilla64 -c -p bug16185vanilla64

[wine-vanilla-8.0-alt1.rc3@winevanilla64:people/iviv/bug16185vanilla64 .wine-bug16185vanilla64]$ wine --version
wine-8.0-rc3

Затем чего в точности повторяю установку 1С:Предприятие, которую описывал выше.

После установки захожу в 1С и создаю текстовый файл, печатаю пару символов и отправляю на печать (принтер CUPS_PDF. В этот раз ошибки нет, файл печатается, ничего не крашится. Повторяю, но в этот раз печатаю таблицу. В этом случае тоже всё в порядке. 

===========================================================================
Проверяю в swine wine64

$ swine wine64 -c -p bug16185wine64

[wine-8.0.1-alt1.rc3@wine64:people/iviv/bug16185wine64 .wine-bug16185wine64]$ wine --version
wine-8.0-rc3 (Staging)

Устанавливаю 1С. Запускаю на печать текстовый и табличный файлы, оба печатаются. Ошибок и вылетов нет.

===========================================================================
Проверяю с помощью ww: 

$ wine --version
wine-8.0-rc3-525-gb682126a3fd (Staging)

Устанавливаю 1С. Запускаю на печать текстовый и табличный файлы, оба печатаются. Ошибок и вылетов нет.

===========================================================================
Проверяю в ранее созданной ВМ 284 (iviv-16185-ALTWS10) в 32-битном префиксе. Удалил предыдущий wine:

# epmqp wine | epme 
Удалил папку /.wine

По тому же скрипту ставлю W@E.

guest@guest wine32 $ wine --version
wine-7.20.4-alt0.p10.1 (WINE@Etersoft)

guest@guest Загрузки $ WINEPREFIX="/home/guest/wine32" WINEARCH=win32 winecfg

notepad распечатал без ошибок.

Установил 1С и пытаюсь распечатать таблицу - окно "Ошибка печати".
Печатаю тестовый файл и получаю вылет и лог "32fall" приложу.
Comment 7 Иван Ивлев 2023-01-11 21:26:58 MSK
Created attachment 5440 [details]
iexplorefall.txt
Comment 8 Иван Ивлев 2023-01-11 21:27:11 MSK
Created attachment 5441 [details]
1CFallEter-7.x.txt
Comment 9 Иван Ивлев 2023-01-11 21:27:24 MSK
Created attachment 5442 [details]
32fall.txt
Comment 10 Олег Шевченко 2023-01-17 14:54:19 MSK
Вывод: 
В W@E 8.0 проблема с печатью не воспроизводится.
Но выявлено, что воспроизводится в W@E 7.20 в 64 и 32-битных префиксах.
Также не ясно, проблема с печатью
>Запустил $ wine iexplore, пытаюсь распечатать, вылезла ошибка
связана с iexplore или же это общая ошибка печати в W@E 7.20

Необходимо протестировать ошибку печати в iexplore в swine vanilla64 и если выловится, то продолжить тестирование в swine wine64.
Comment 11 Олег Шевченко 2023-03-27 14:59:33 MSK
(Ответ Олег Шевченко на комментарий #10)
> Вывод: 
> В W@E 8.0 проблема с печатью не воспроизводится.
> Но выявлено, что воспроизводится в W@E 7.20 в 64 и 32-битных префиксах.
> Также не ясно, проблема с печатью
> >Запустил $ wine iexplore, пытаюсь распечатать, вылезла ошибка
> связана с iexplore или же это общая ошибка печати в W@E 7.20
> 
> Необходимо протестировать ошибку печати в iexplore в swine vanilla64 и если
> выловится, то продолжить тестирование в swine wine64.

В swine vanilla64 ошибка не воспроизвелась, печать работает.

$ wine --version
wine-8.0

Ставлю статус "Решена"
Comment 12 Олег Шевченко 2023-03-27 14:59:54 MSK
Решена.
Comment 13 Олег Шевченко 2023-03-27 15:00:02 MSK
Закрыта.