Ресурсы - syssetup.dll
-
Mr dUSHA
Re: Ресурсы - syssetup.dll
prokazzza,
Я правильно понимаю, этот сбой Windows Movie Maker - это сообщение:
"Отсутствует файл для видеопереходов и видеоэфектов"
???
У меня оно так, когда подредактировать ресурсы
Я правильно понимаю, этот сбой Windows Movie Maker - это сообщение:
"Отсутствует файл для видеопереходов и видеоэфектов"
???
У меня оно так, когда подредактировать ресурсы
-
Mr dUSHA
Re: Ресурсы - syssetup.dll
prokazzza,
С Windows Movie Maker я таки разобрался.
На самом деле никакой защиты нет, и проблема не с MovieMaker-ом, а с ResourceHacker-ом, который вы наверное используете.
ResourceHacker что-то косячит в секции ресурсов, из-за чего вылазит то сообщение "Отсутствует файл для видеопереходов и видеоэффектов".
Помогает только перестройка секции ресурсов с помощью RESREBLD.EXE ("Resource Rebuilder" v1.0 by Dr.Golova), и замена полученной оптимизированной секции вместо старой, покореженной ResourceHacker-ом, с помощью редактора PE-файлов (PE-Tools или Lord-PE).
Другими словами, вместо ResourceHacker-а нужно использовать какой-то другой редактор ресурсов...
С Windows Movie Maker я таки разобрался.
На самом деле никакой защиты нет, и проблема не с MovieMaker-ом, а с ResourceHacker-ом, который вы наверное используете.
ResourceHacker что-то косячит в секции ресурсов, из-за чего вылазит то сообщение "Отсутствует файл для видеопереходов и видеоэффектов".
Помогает только перестройка секции ресурсов с помощью RESREBLD.EXE ("Resource Rebuilder" v1.0 by Dr.Golova), и замена полученной оптимизированной секции вместо старой, покореженной ResourceHacker-ом, с помощью редактора PE-файлов (PE-Tools или Lord-PE).
Другими словами, вместо ResourceHacker-а нужно использовать какой-то другой редактор ресурсов...
-
zuckij
Re: Ресурсы - syssetup.dll
Цитата Mr dUSHA:
ResourceHacker что-то косячит в секции ресурсов
+ ещё и после Restorator а, тоже самое окошко
Цитата Mr dUSHA:
"Отсутствует файл для видеопереходов и видеоэфектов"
ResourceHacker что-то косячит в секции ресурсов
Ресурсы - syssetup.dll
+ ещё и после Restorator а, тоже самое окошко
Цитата Mr dUSHA:
"Отсутствует файл для видеопереходов и видеоэфектов"
Ресурсы - syssetup.dll
-
prokazzza
Re: Ресурсы - syssetup.dll
Mr dUSHA,
Цитата Mr dUSHA:
Помогает только перестройка секции ресурсов с помощью RESREBLD.EXE ("Resource Rebuilder" v1.0 by Dr.Golova), и замена полученной оптимизированной секции вместо старой, покореженной ResourceHacker-ом, с помощью редактора PE-файлов (PE-Tools или Lord-PE).
я использую Ресторатор.
Цитата Mr dUSHA:
Помогает только перестройка секции ресурсов с помощью RESREBLD.EXE ("Resource Rebuilder" v1.0 by Dr.Golova), и замена полученной оптимизированной секции вместо старой, покореженной ResourceHacker-ом, с помощью редактора PE-файлов (PE-Tools или Lord-PE).
Ресурсы - syssetup.dll
я использую Ресторатор.
-
Mr dUSHA
Re: Ресурсы - syssetup.dll
Цитата prokazzza:
я использую Ресторатор.
И я попробовал. Та же история.
И я так и не понял, чего ж такого криминального делают редакторы ресурсов, что оно потом не работает.... Видать в самой программе баг какой-то...
я использую Ресторатор.
Ресурсы - syssetup.dll
И я попробовал. Та же история.
И я так и не понял, чего ж такого криминального делают редакторы ресурсов, что оно потом не работает.... Видать в самой программе баг какой-то...
-
aset
-
Jekson07
Re: Ресурсы - syssetup.dll
Цитата Boa Soft:
Слушай, а это не решит часом известную проблему "батареи" при патче блокнота?
Цитата Mr dUSHA:
Да я вот сам только щас об этом подумал. Ты прям читаешь мои мысли!
Теоретически должно, но неплохо бы проверить...
Проверил, проблема с "Батареей..." так и осталось, возможно из-за повторного пропатчивания файла syssetup.dll респатчем. В связи с этим хотелось бы знать, что конкретно было подправлено/изменено в патченном файле syssetup.dll: диалоги, строковая таблица, таблица сообщений..., для того, чтобы самостоятельно можно было бы внести все необходимые поправки для аддона респатч?
Слушай, а это не решит часом известную проблему "батареи" при патче блокнота?
Цитата Mr dUSHA:
Да я вот сам только щас об этом подумал. Ты прям читаешь мои мысли!
Теоретически должно, но неплохо бы проверить...
Проверил, проблема с "Батареей..." так и осталось, возможно из-за повторного пропатчивания файла syssetup.dll респатчем. В связи с этим хотелось бы знать, что конкретно было подправлено/изменено в патченном файле syssetup.dll: диалоги, строковая таблица, таблица сообщений..., для того, чтобы самостоятельно можно было бы внести все необходимые поправки для аддона респатч?
-
Boa Soft
Re: Ресурсы - syssetup.dll
Цитата Jekson07:
Проверил, проблема с "Батареей..." так и осталось, возможно из-за повторного пропатчивания файла респатчем. В связи с этим хотелось бы знать, что конкретно было подправлено/изменено в патченном файле syssetup.dll: диалоги, строковая таблица, таблица сообщений...?
Нет. Это не при чем. разговор был о том, что при любом нарушении подписи syssetup непредказуемо может появится мастер оборудования при установке даже подписанных драйверов. Лечим патчем проверки в setupapi.
Я просто интересовался, решает ли этот патч проблему батареи. Значет не решает
Проверил, проблема с "Батареей..." так и осталось, возможно из-за повторного пропатчивания файла респатчем. В связи с этим хотелось бы знать, что конкретно было подправлено/изменено в патченном файле syssetup.dll: диалоги, строковая таблица, таблица сообщений...?
Ресурсы - syssetup.dll
Нет. Это не при чем. разговор был о том, что при любом нарушении подписи syssetup непредказуемо может появится мастер оборудования при установке даже подписанных драйверов. Лечим патчем проверки в setupapi.
Я просто интересовался, решает ли этот патч проблему батареи. Значет не решает
-
Jekson07
Re: Ресурсы - syssetup.dll
Цитата Boa Soft:
Я просто интересовался, решает ли этот патч проблему батареи. Значет не решает
Я правда, в тестовый набор включил не только блокнот, но и все другие файлы, которые вызывают сообщение о батарее. Может ещё и из-за этого!!?... Тестировал с аддоном "до того".
Я просто интересовался, решает ли этот патч проблему батареи. Значет не решает
Я правда, в тестовый набор включил не только блокнот, но и все другие файлы, которые вызывают сообщение о батарее. Может ещё и из-за этого!!?... Тестировал с аддоном "до того".
-
Mr dUSHA
Re: Ресурсы - syssetup.dll
Цитата Jekson07:
В связи с этим хотелось бы знать, что конкретно было подправлено/изменено в патченном файле syssetup.dll:
Ну только ж не syssetup.dll, а setupapi.dll был исправлен.
Исправления не в ресурсах, а исполняемом коде модуля в его внутренней функции GetModuleEntryPoint:
Код:
здесь по адресу .779562C7 команда условного перехода (условием является наличие/отсутствие цифровой подписи у модуля)
jz short loc_77956313
исправлена на команду безусловного перехода:
jmp short loc_77956313
С такой правкой в независимости от наличия/отсутствия подписи, переход осуществляется на ветку кода выполняемую при наличии цифровой подписи.
Подробней о механизме проблемы я писал в этом же топике, в посте #30.
По результатам просмотра реестра получился такой список установщиков классов устройств, подверженных сабжевой проблеме:
storprop.dll
SysSetup.dll
Desk.Cpl
MmSys.Cpl
mdminst.dll
NetCfgx.dll
printui.dll
nmwcdcls.dll
winscard.dll
sti_ci.dll
Batt.dll
btw_ci.dll
sdhcinst.dll
bthci.dll
wpd_ci.dll
Цитата Jekson07:
Я правда, в тестовый набор включил не только блокнот, но и все другие файлы, которые вызывают сообщение о батарее.
А с этого места по подробней плиз! Какие еще файлы вызывают проблему батареи? Хотелось бы докопаться до сути...
В связи с этим хотелось бы знать, что конкретно было подправлено/изменено в патченном файле syssetup.dll:
Ресурсы - syssetup.dll
Ну только ж не syssetup.dll, а setupapi.dll был исправлен.
Исправления не в ресурсах, а исполняемом коде модуля в его внутренней функции GetModuleEntryPoint:
Код:
Код: Выделить всё
.text:779562A4 call _pSetupGetFileTitle@4 ; pSetupGetFileTitle(x)
.text:779562A9 push eax
.text:779562AA push ebx
.text:779562AB push ebx
.text:779562AC push ebx
.text:779562AD push ebx
.text:779562AE push [ebp+var_674]
.text:779562B4 push [ebp+var_63C]
.text:779562BA call __VerifyFile@68 ; _VerifyFile(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x)
.text:779562BF mov [ebp+dwErrCode], eax
.text:779562C5 cmp eax, ebx
.text:779562C7 jz short loc_77956313
.text:779562C9 mov eax, [ebp+var_658]
.text:779562CF cmp eax, ebx
.text:779562D1 jnz short loc_779562D9
.text:779562D3 mov eax, [ebp+lpMem]
.text:779562D9
.text:779562D9 loc_779562D9: ; CODE XREF: GetModuleEntryPoint(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x)+225 j
.text:779562D9 push ebx ; int
.text:779562DA push ebx ; int
.text:779562DB push [ebp+var_63C] ; int
.text:779562E1 push [ebp+dwErrCode] ; dwErrCode
.text:779562E7 push [ebp+arg_34] ; int
.text:779562EA push [ebp+arg_30] ; int
.text:779562ED push eax ; int
.text:779562EE lea eax, [ebp+szStart]
.text:779562F4 push eax ; lpFileName
.text:779562F5 push [ebp+arg_28] ; int
.text:779562F8 push [ebp+var_670] ; int
.text:779562FE call _pSetupHandleFailedVerification@40 ; pSetupHandleFailedVerification(x,x,x,x,x,x,x,x,x,x)
.text:77956303 test eax, eax
.text:77956305 jnz short loc_77956313
.text:77956307 mov eax, [ebp+var_648]
.text:7795630D mov dword ptr [eax], 1
.text:77956313
.text:77956313 loc_77956313: ; CODE XREF: GetModuleEntryPoint(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x)+21B j
.text:77956313 ; GetModuleEntryPoint(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x)+259 j
.text:77956313 cmp [ebp+lpMem], ebx
.text:77956319 jz short loc_77956326
.text:7795631B push [ebp+lpMem] ; lpMem
.text:77956321 call _pSetupFree@4 ; pSetupFree(x)
.................здесь по адресу .779562C7 команда условного перехода (условием является наличие/отсутствие цифровой подписи у модуля)
jz short loc_77956313
исправлена на команду безусловного перехода:
jmp short loc_77956313
С такой правкой в независимости от наличия/отсутствия подписи, переход осуществляется на ветку кода выполняемую при наличии цифровой подписи.
Подробней о механизме проблемы я писал в этом же топике, в посте #30.
По результатам просмотра реестра получился такой список установщиков классов устройств, подверженных сабжевой проблеме:
storprop.dll
SysSetup.dll
Desk.Cpl
MmSys.Cpl
mdminst.dll
NetCfgx.dll
printui.dll
nmwcdcls.dll
winscard.dll
sti_ci.dll
Batt.dll
btw_ci.dll
sdhcinst.dll
bthci.dll
wpd_ci.dll
Цитата Jekson07:
Я правда, в тестовый набор включил не только блокнот, но и все другие файлы, которые вызывают сообщение о батарее.
Ресурсы - syssetup.dll
А с этого места по подробней плиз! Какие еще файлы вызывают проблему батареи? Хотелось бы докопаться до сути...