4

У меня появился интерес создать установщик Paint. Все уже, наверное, знают, что в новом обновлении Windows 10 его удалят и закинут в магазин.

Вопрос: какие файлы связаны с mspaint.exe, чтобы я, создавая установщик, закинул туда файлы и установил на новую винду 10 обычный paint, который пока еще присутствует?

Cheg
  • 10,486
m1zl-s
  • 171

1 Answers1

3

Вместе с программой необходимо устанавливать все библиотеки, которые она использует. Какие именно — можно посмотреть с помощью программы Dependency Walker.

введите сюда описание изображения

Как можно заметить на экранном снимке выше, mspaint на моей Windows 7 SP1 x64 требует следующие библиотеки:

  • ADVAPI32.DLL,
  • KERNEL32.DLL,
  • GDI32.DLL,
  • USER32.DLL,
  • MFC42U.DLL,
  • MSVCRT.DLL,
  • COMDLG32.DLL,
  • OLE32.DLL,
  • OLEAUT32.DLL,
  • SHELL32.DLL,
  • NTDLL.DLL,
  • COMCTL32.DLL,
  • SHLWAPI.DLL,
  • PROPSYS.DLL,
  • RPCRT4.DLL,
  • WINMM.DLL,
  • VERSION.DLL,
  • GDIPLUS.DLL.

Посмотрите, какие из них отсутствуют на Windows 10 и обеспечьте их наличие.

Arhadthedev
  • 11,528
  • Да вроде бы всё так сделал. Создал папку , закинул туда все библиотеки а также mspaint.exe. При запуске этого mspaint получаю ошибку unable to create a new document. Я так понимаю не хватает еще чего-то? – m1zl-s Jul 29 '17 at 17:23
  • @m1zl-s, запустите SysInternals Process Monitor. Добавьте в диалог, открывшийся при запуске программы, фильтр <Process Name> <is> mspaint.exe <then Include> (задайте параметры в верхней строчке, затем нажмите последовательно Add и Ok). После этого запустите Paint, добейтесь ошибки и вернитесь в ProcMon. Найдите в конце списка строку, где ячейка Operation равна CreateFile, а Result не равна SUCCESS — это и есть источник ошибки. В ячейке Detail будет указан путь до файла, на открытии которого paint упал. – Arhadthedev Jul 29 '17 at 17:46
  • Сделал всё так. Там этих CreateFile где Result!=success было очень много, всё добавил. Всё равно та же ошибка. – m1zl-s Jul 30 '17 at 09:15
  • Также я исправил все ошибки, но все равно, paint не запускается , та же ошибка. – m1zl-s Jul 31 '17 at 09:55
  • вы мне поможете? – m1zl-s Aug 05 '17 at 10:30
  • @m1zl-s, вы запускаете mspaint напрямую или через ярлык? На сайте Microsoft пишут, что в ярлыках возможно появление «лишних» свойств. – Arhadthedev Aug 06 '17 at 10:22
  • @m1zl-s, ещё есть предположение, что дело в отсутствующем файле локализации (путь_до_mspaint/en-US/mspaint.exe.mui). – Arhadthedev Aug 06 '17 at 10:24
  • ну я сделал так как надо . Создал папку в Program Files(x86) поместил туда mspaint.exe.СОздал в этой папке папку en-US. закинул туда из system32 mspaint.exe.mui. СОздал ярлык на рабочем столе. И все равно ошибка не удалось создать новый документ. – m1zl-s Aug 07 '17 at 06:05
  • я попробовал сделать так взял Windows 7 из нее достал из папок System32 и SysWOW64 два файла mspaint.exe и mspaint.exe.mui. – m1zl-s Aug 07 '17 at 17:37
  • в своих папках поудалял. И закинул эти все равно та же ошибка. – m1zl-s Aug 07 '17 at 17:38