Нужно обеспечить, чтобы при первом запуске программы мышкой 1. Выдавалась заставка, что идёт подготовка wine-окружения. 2. Если запускаем с неподдерживаемого диска (не из dosdevices), выдавалось графическое сообщение об этом.
По второму пункту можно написать утилиту, которая будет выводить MessageBox со строками из передаваемых параметров, и эту утилиту запускать из скрипта. Как сделать заставку? Средствами вайна ведь не получится, потому что окружение ещё не создано?
Создана заставка windows/command/wineprogress.exe читающая из файла windows/temp/wineinit.progress число 0-99 - состояние полосы прогресса. 100 или отсутствие файла - программа закрывается. По окошку с MessageBox создана бага 2023.
wineprogress.exe падает в новой сборке. Исправление для баги 1981 добавляет проверку строки с именем окна. Строка с именем окна wineprogress находится по адресу 0x81. Попытка сравнить строку по этому адресу приводит к ошибке чтения.
Отправил патч, добавляющий проверку на "корректность" адреса (должен быть >1000)
"static icons, bitmaps (SS_ICON, SS_BITMAP) may have child window IDs instead of window name" Поэтому проверку нужно делать так: if (HIWORD(cs->lpszName)) то есть что в lpszName действительно строка.
(In reply to comment #5) > Поэтому проверку нужно делать так: > if (HIWORD(cs->lpszName)) > то есть что в lpszName действительно строка. Сделал.
Работает нормально. Лёгкий Линукс. School-wine 0.9.4
сборка 0.9.4-alt0.M40.1