секция мфнифест :_

Discussion in 'WASM.BEGINNERS' started by Semiono, Jan 16, 2010.

  1. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    Какова вероятность сломать эксешник (PE) добавив в него 24-ресурс? Делаю ResHacker-ом.
    Или вообще не сломать никак!
    Пару моментов меня удивляют, это то что размер не изменяется, значит наверное это место под секцию было выделенно ещё заранее??
    Но с другой стороны удалив потом ресурс 24 из моего файла хеши уже не совпадают с оригиналом!

    Мне просто надо много файлов пропатчить, боюсь чтоб потом всё заново не переделывать,
    так как глюк сразу ведь не определишь?

    offop:
    И вопрос ещё, есть такая утиль modifype.exe которая чё-то там "modifype file.exe -c" корректирует,
    это что, в заголовке чтоли инфу об crc32 правит? так как файл сам по себе далеко не тот что был :)
    Но это впрочем другая тема, об ms защитах..
     
  2. KeSqueer

    KeSqueer Сергей

    Blog Posts:
    0
    Joined:
    Jul 19, 2007
    Messages:
    1,183
    Location:
    Москва
    Semiono
    Почему бы не использовать file.exe.manifest вместо внедрения манифеста в ресурсы? Только не знаю, работает ли это на Vista+?
     
  3. Partner

    Partner Павел

    Blog Posts:
    0
    Joined:
    Feb 28, 2008
    Messages:
    917
    Location:
    Los Angeles
    Работает.
     
  4. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    Да это хорошее дело exe.manifest, но я собираю инсталятор и дело деликатное,
    хочется чтоб крута было, наличие лишних файликов не очень красиво :)
    Кстати! Я добавил mmc.exe.manifest у себя в XP ато там тоже в некоторых
    местах дефолтное "98" вылезает голое :)
     
  5. d2k9

    d2k9 Алексей

    Blog Posts:
    0
    Joined:
    Sep 14, 2008
    Messages:
    325
    Если корректно добавлять манифест, то никакой опасности - используйте для этого бесплатный CFF Explorer.
     
  6. pr0mix

    pr0mix New Member

    Blog Posts:
    0
    Joined:
    Jul 30, 2008
    Messages:
    107
    при добавлении манифеста возможно только у меня, но на XP SP3 в некоторых приложениях (написанных на VS) не открывались некоторые диологовые окна, в остальном и для остальных осей было нормуль.
     
  7. RamMerLabs

    RamMerLabs Well-Known Member

    Blog Posts:
    0
    Joined:
    Sep 11, 2006
    Messages:
    1,426
    pr0mix
    делайте
    Code (Text):
    1. invoke InitCommonControls
    из comctl32.dll в любом месте кода.
     
  8. pr0mix

    pr0mix New Member

    Blog Posts:
    0
    Joined:
    Jul 30, 2008
    Messages:
    107
    RamMerLabs
    верно, спасибо
     
  9. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    Всётаки заглючило. Я добавил ресурс к некоторым _KeyGen.exe...
    У меня прекрасно работает! Но на других WinXP окно перестало открываться.
    Такое впечатление, что XP разные!? Хотя у всех ведь нынче XP PRO SP3!?
    Как будто несовместимость какая-то!?
    Однако, я у себя тестами собирал наименьший вариант манифеста, который только
    способен работать, его и юзаю, может быть каких-то параметров нельзя было удалять?

    Мой манифест:
    Code (Text):
    1. <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    2. <dependency>
    3. <dependentAssembly>
    4.         <assemblyIdentity
    5.             type="win32"
    6.             name="Microsoft.Windows.Common-Controls"
    7.             version="6.0.0.0"
    8.             processorArchitecture="X86"
    9.             publicKeyToken="6595b64144ccf1df"
    10.             language="*"
    11.         />
    12. </dependentAssembly>
    13. </dependency>
    14. </assembly>
    Может кривой манифест?

    Вопрос риторический: почему у винды эти всякие comctrl32.dll и всякие манифесты и WinSxS такое всё глюченное!? Ну почему нельзя за столько лет избавиться от этого хлама! В Win7 вообще там тонна лежит, особенное если x64, плюс mui добавились! Бред какой-то, наваливают зависимостей как-то безграмотно.

    Окно которое открывается только на моей XP eng
    Code (Text):
    1. 101 DIALOGEX 0, 0, 169, 165
    2. STYLE DS_FIXEDSYS | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
    3. CAPTION "zzzzz"
    4. LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
    5. FONT 8, "MS Shell Dlg", FW_NORMAL, FALSE, 1
    6. {
    7.    CONTROL "zzzz:", -1, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 7, 155, 8
    8.    CONTROL "", 1001, COMBOBOX, CBS_DROPDOWN | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP, 7, 16, 155, 297
    9.    CONTROL "zzzz:", -1, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 34, 155, 8
    10.    CONTROL "", 1002, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 7, 43, 155, 12
    11.    CONTROL "zzzz", 1003, BUTTON, BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 7, 64, 155, 14
    12.    CONTROL "zzzz:", -1, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 85, 155, 8
    13.    CONTROL "", 1004, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 7, 94, 155, 12
    14.    CONTROL "zzzz:", -1, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 114, 155, 8
    15.    CONTROL "", 1005, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 7, 123, 155, 12
    16.    CONTROL "zzzz", 1006, BUTTON, BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 7, 144, 155, 14
    17. }
     
  10. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    Если кто знает скажите, может диалог подправить или манифест, мне очень нужно!?
    Чтоб везде работало!
     
  11. KeSqueer

    KeSqueer Сергей

    Blog Posts:
    0
    Joined:
    Jul 19, 2007
    Messages:
    1,183
    Location:
    Москва
    Semiono
    А где первой строчкой инфо про кодировку?
     
  12. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    угу, понял! спасибо, KeSqueer!
    http://msdn.microsoft.com/en-us/library/aa374191(VS.85,loband).aspx
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

    как выдумаете это и есть проблема? хотя логично, у меня winxp eng.
     
  13. Flint_ta

    Flint_ta New Member

    Blog Posts:
    0
    Joined:
    May 25, 2008
    Messages:
    312
    Code (Text):
    1. <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    2.   <assemblyIdentity
    3.       type="win32"
    4.     name="WtgAIZ9VhS1.exe'"
    5.     version="3.5.4.7"
    6.       processorArchitecture="*"/>
    7.   <dependency>
    8.     <dependentAssembly>
    9.       <assemblyIdentity
    10.         type="win32"
    11.         name="Microsoft.Windows.Common-Controls"
    12.         version="6.0.0.0"
    13.         publicKeyToken="6595b64144ccf1df"
    14.         language="*"
    15.         processorArchitecture="*"/>
    16.     </dependentAssembly>
    17.   </dependency>
    18. </assembly>
    name="WtgAIZ9VhS1.exe'" <<<<<<<<<< имя попробуй добавить
     
  14. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?> - не помогло,
    я чуваку диктовал по телефону, если он ошибку не зделал ))
    Надо будет нейм добавить попробывать... ок!
     
  15. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    XP Style Hacker by Skyjuice Software 2003
    Выбираем испытуемый файл, на другом компе,
    создаётся манифест, например, zzz.exe.manifest.
    Всё, после этого файл zzz.exe не открывается!
    Нет основания не доверять проге, так как автор не зря наверное.
    Вывод таков, что некоторые PE можно срубить обычным zzz.exe.manifest,
    причём как бы валидным... Хотя наверное можно под каждый дистриб пошаманить,
    да ито тут похоже глухой случай.
    Но меня удивило то, что на моей XP это всётаки работает.
    Наверное у меня очень хорошая ось! =)
     
  16. Z3N

    Z3N New Member

    Blog Posts:
    0
    Joined:
    Feb 10, 2009
    Messages:
    812
    Совсем необязательно это делать (зачем вам лишний код?).
    Главное, чтобы иниткоммонконтролс была в импорте.
    И если прога подает изза отсутствия ИКК, то просто добавте импорт с помощью петулз (это мой ленивый способ инжекта длл в приложение :)).
     
  17. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    А что можно зделать с помощью PETools, поподробнее? Или статьи дайте если много на словах?
     
  18. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    мне надо exe вылечить... что длл в него инжектить, а смысл? длл в которй икк самому написать?
     
  19. Z3N

    Z3N New Member

    Blog Posts:
    0
    Joined:
    Feb 10, 2009
    Messages:
    812
    Я про инжект писал потому, что это всегда пригодится.
    Если я правильно понял, то вся твоя проблема изза того, что там нет в импорте икк.
    Тебе надо добавить библиотеку с икк (не помню как точно называется), а потом добавить саму ф-ю икк.
    Если я нечего не путаю, то PETOOLS->dIRECTORIES->Imports->!RightClick!->Add imports.
    Прости петулз под рукой нет.
     
  20. Semiono

    Semiono Member

    Blog Posts:
    0
    Joined:
    Nov 27, 2005
    Messages:
    793
    Называется comctl32.dll
    http://msdn.microsoft.com/en-us/library/bb775695(VS.85,loband).aspx

    Хм, в WinSxS таких либс туча :)
    Спасибо, однако! Может чего и получиться. =)