lsmlcx
 - Стаж: 4 года 4 месяца
- Сообщений: 9
- Репутация:15[+] [-]
|
8143081424Hi,I come from bbs.wuyou.net of China. lsmlcx, Приветствую!  Добро пожаловать на usbtor.ru Это здорово, что Вы помогаете советами в этой непростой для нас теме по PECMD -P.S. Кстати, смотрю, новая версия вроде как появилась: PECMD2012.1.88.05.82Stable-180149测试202010G Yes, Fix some bugs or new function SWIN WRIT *v ENVI-zero FDRV PART list cdrom 0,&a ENVI-addr ;&b=&a GETF -find STRL -8 FONT -
|
AZJIO
  - Стаж: 7 лет
- Сообщений: 1318
- Репутация:127[+] [-]
|
Я наверно в этой теме скачал helpPECMD.chm, но не нашёл этот пост в шапке, там поиск не работает, поэтому перепаковал с поиском и почему-то размер в 2 раза меньше, скачать Там были лишние страницы которых нет в дереве, я засунул все в дерево, это наверно копии, в любом случае их легко убрать, файл проекта тоже внутри. Перезалил, подсветил разделы, имена функций, шестнадцатеричные числа Перезалил, подсветил переменные и L200T360W128H232
|
avalat
  - Стаж: 10 лет
- Сообщений: 497
- Репутация:127[+] [-]
|
AZJIO, Красота... дубли ещё убери, пожалуйста.... DLL и все с _****
|
AZJIO
  - Стаж: 7 лет
- Сообщений: 1318
- Репутация:127[+] [-]
|
Если кому интересно самому поковырять, то вот регулярные выражения, которые я использовалрегулярные выраженияРазделы. Вместо {3,} пробовать {2,} и {1,} и проверять захват индивидуально (( | ){3,})(?-i)(Формат|Функция|Параметры|Пример|Примечания)(?=( | ){3,}) \1<font class="section">\3</font> Тест, тех, которые не подсветились и ручная доводка. (?<!>)(?-i)(Формат|Функция|Параметры|Пример|Примечания)(?!<) Имена функций. (?-i)(?<![_A-Z%])(ADSL|BASE|BROW|CALC|CALL|CHEK|CMPS|CODE|COME|DATE|DEVI|DFMT|DISK|DISP|DTIM|EDIT|EJEC|ENVI|EXEC|EXIT|FBWF|FDIR|FDRV|FEXT|FILE|FIND|FLNK|FNAM|FONT|FORM|FORX|GETF|GROU|HASH|HELP|HIDE|HIVE|HKEY|HOME|HOTK|IFEX|IMAG|INIT|IPAD|ITEM|KILL|LABE|LINK|LIST|LOAD|LOCK|LOGO|LOGS|LOOP|LPOS|LSTR|MAIN|MDIR|MEMO|MENU|MESS|MOUN|MSTR|NAME|NOTE|NTPC|NUMK|PAGE|PART|PATH|PBAR|PCIP|PINT|PUTF|RADI|RAMD|RAND|READ|RECY|REGI|RPOS|RSTR|RUNS|SCRN|SEND|SERV|SHEL|SHOW|SHUT|SITE|SIZE|SLID|SOCK|SPIN|SSTR|STRL|SUBJ|SWIN|TABL|TABS|TEAM|TEMP|TEXT|THRD|TIME|TIPS|UPNP|USER|WAIT|WALL|WRIT)(?![_A-Z%]) <font class="fnc">\1</font> Шестнадцатеричные числа (-?0x[\dA-Fa-f]++) <font class="xnum">\1</font> Звезда ※, китайский иероглиф (без пробелов) (& # 9472) <font class="star">\1</font> Координаты 1-й проход (подсветить целиком) (L-?\d+T-?\d+W-?\d+H-?\d+) <font class="ltwh">\1</font> Координаты 2-й проход (подсветить части) (<font class="ltwh">)(L)(-?\d+)(T)(-?\d+)(W)(-?\d+)(H)(-?\d+)(</font>) \1\2</font><font class="ltwh2">\3</font>\1\4</font><font class="ltwh2">\5</font>\1\6</font><font class="ltwh2">\7</font>\1\8</font><font class="ltwh2">\9</font> Переменные (%\w+%) <font class="var1">\1</font> не использовал пока (без пробелов) (%(& amp;)+\w+%) <font class="var1">\1</font> Переменные (не работает в HTML, так как захватывает & nbsp; и & #9472; и т.д.) из _pecmd.coder ([%&#$@]+\w++%?) убрал Перезалил, сделал заголовок окна справки стандартный, а то мой плаг прыжка в справку связан через заголовок, то есть кто пользуется моей сборкой AkelPad с поправленным заголовком теперь не будут иметь проблем. Перезалил. Сделал переименование страниц в имена их функций.переименование файлов по содержимомуДавно хотел написать скрипт AutoIt3, чтобы переименовать файлы по некоторому тексту в содержимом. В данном случае критерий в теге TITLE. #include <Array.au3> ; для _ArrayDisplay #include <FileOperations.au3> $aFileList = _FO_FileSearch(@ScriptDir, 'page_*.html', True, 0, 0, 1) ; _ArrayDisplay($aFileList) For $i = 1 To $aFileList[0] $sText = FileRead(@ScriptDir & '\' & $aFileList[$i]) $aName = StringRegExp($sText, '<TITLE>(\w+)</TITLE>', 1) If Not @error Then If Not FileMove(@ScriptDir & '\' & $aFileList[$i], @ScriptDir & '\' & $aName[0] & '.htm', 0) Then ; MsgBox(0, 'не удалось', $aFileList[$i] & @CRLF & $aName[0]) EndIf EndIf Next
|
 Отправлено: 01-Дек-2020 17:38
(спустя 2 дня 19 часов)
avalat
  - Стаж: 10 лет
- Сообщений: 497
- Репутация:127[+] [-]
|
Обновил справку по PECMD. Добавлено: - поиск и подсветка от AZJIO !! - немного поправок из последних постов
Последний раз редактировалось: avalat (2021-02-02 20:39), всего редактировалось 1 раз
|
волчара
  - Стаж: 10 лет
- Сообщений: 599
- Репутация:45[+] [-]
- Откуда: Омск
|
avalat,
|
 Отправлено: 03-Дек-2020 06:06
(спустя 1 день 12 часов)
sergeysvirid
  - Стаж: 10 лет
- Сообщений: 2611
- Репутация:127[+] [-]
- Откуда: 65 регион (GMT+11)
|
Всем здрасте!  По мотивам обсуждений этой темы PECMD2012.1.88.05.84_Stable-201204_CH-EN-RU_X86-X64-Подробнее: PECMD_Full_original.7z - Оригинальные файлы проекта. Неупакованные MPRESS. PECMD_for_WinPE.7z - PECMD для WinPE. Удалены некоторые (ненужные) ресурсы. Неупакованные MPRESS. PECMD_lite.7z - Облегчённый вариант PECMD. Удалены ещё некоторые (ненужные) ресурсы по рекомендации conty9 из этого поста . Подходит для создания своей утилиты путём правки ресурса SCRIPT\101 (или SCRIPTINIT\100). Неупакованные MPRESS.-В каждом архиве имеется скрипт _Packed_PECMD.EXE_with_mpress.cmd (если появится нужда упаковать PECMD.EXE с помощью MPRESS)
|
 Отправлено: 06-Дек-2020 16:40
(спустя 1 час 49 минут)
avalat
  - Стаж: 10 лет
- Сообщений: 497
- Репутация:127[+] [-]
|
sergeysvirid, В PECMD_lite без ресурса 10016 (Dialog) надписи OK, NO, YES, Cancel .... будут китайскими (на мессагах). Лучше оставить.
|
sergeysvirid
  - Стаж: 10 лет
- Сообщений: 2611
- Репутация:127[+] [-]
- Откуда: 65 регион (GMT+11)
|
avalat, Приветствую!  Спасибо за полезное замечание. Перезалил архив.
|
|
Перечень назначения ресурсов оригинального файла PECMDEXEDATA\100: Пример пользовательских данных (например, для размещения EXE-утилит) INDATA\2: Драйвер поддержки UPNP (X86) INDATA\4: Список подключаемых модулей INDATA\5: Запись PBR для NT5 FAT INDATA\6: Запись PBR для DOS INDATA\7: Запись PBR для NT6 FAT INDATA\8: Запись PBR для NT5 INDATA\9: Запись PBR для NT6 INDATA\10: Поддержка расширенного отображения секторов (X86) INDATA\20: Скрипт обновления буквы диска INDATA\21: Скрипт GUI управления разделами дисков INDATA\22: Поддержка загрузки и выгрузки UDM. INDATA\23: Поддержка самостоятельного удаления INDATA\24: Поддержка воспроизведения FLASH. INDATA\25: Скрипт OnBoot.wcs INDATA\26: Скрипт GUI управления процессами INDATA\27: Скрипт GUI калькулятор INDATA\28: Модуль автоматической установки Imdisk INDATA\29: CAB-пакет драйвера Imdisk INDATA\30: Скрипт Экранная клавиатура INDATA\31: Скрипт создания скриншота INDATA\32: Скрипт просмотра изображения INDATA\33: CAB-распаковщик библиотек DLL INDATA\34: Интерфейс запуска оболочки INDATA\35: расширение DEVI SCRIPT\101: Встроенный настраиваемый скрипт с автозапуском .autoapp.wcs SCRIPT\102...203: Пример дополнительных скриптов SCRIPTINIT\100: Скрипт инициализации TAGDATA\10005: Маркер Меню\10021: Меню в трее при использовании PECMD в качестве оболочки RCData\301: Встроенная справка Диалог\302: GUI справки (при удалении интерфейс справки не отображается) Диалог\100хх: Интерфейс окон запросов Строковая таблица: Шрифты Иконка\1...4: Иконки Версия\1: Версия Манифест\1: Манифест для поддержки запроса режима администратораЧто можно безболезненно удалить из PeCMD (для уменьшения размера конечного файла)EXEDATA\* - сюда добавляем, при необходимости, нужные утилиты (если не нужно, удаляем) INDATA\* - если не нужны имеющиеся плюшки (установка MBR, разные GUI, Imdisk), удаляем SCRIPT\101 - сюда добавляем основной скрипт SCRIPT\102...ХХХ - сюда можно закинуть дополнительные скрипты SCRIPTINIT\100 - что будет выполнено при инициализации (если не нужно, удаляем) TAGDATA\* - удаляем Меню\* - удаляем. Если PECMD используется в качестве оболочки WinPE, размещаем в 10021 своё меню (вызывается в трее по ЛКМ/ПКМ) RCData\301 - если не нужна встроенная справка, удаляем Диалог\302 - если не нужна встроенная справка, удаляем Диалог\10011-10019: - правим под свой язык, 10023 - нужна только для WinPE Строковая таблица - указываем свои шрифты Иконка - своя иконка, ненужное удаляем Версия - для красоты указываем свою версию утилиты на базе PeCMD Манифест - не трогаем. Если планируется последующая упаковка своей утилиты на базе PeCMD (UPX или другими пакерами), тогда для уменьшения размера конечного файла рекомендуется распаковать всё, что включается в состав готового модуля. Т.е., скрипты и утилиты в EXEDATA должны быть неупакованы ни пакерами, ни командой CMPS. Если же необходимо защитить скрипт (или прочее) от распаковки, тогда его предварительно пакуем (или шифруем) CMPS. Учитывайте, что расшифровать потом можно будет не всё. И зашифрованное будет гарантированно работать только с версией PeCMD, которой производилось шифрование (с более старыми работать не будет, с новыми - без гарантии).
Последний раз редактировалось: Гость (2020-12-08 18:10), всего редактировалось 1 раз
|
AZJIO
  - Стаж: 7 лет
- Сообщений: 1318
- Репутация:127[+] [-]
|
А есть ли смысл упаковки UPX-ом, учитывая что прога будет внутри wim? То есть она по определению будет сжата. На сколько я понял стратегию UPX-а (как и любого пакера): при запуске программы в памяти создаются две копии программы, одна пожатая, другая распакованная. Откуда такой вывод? Например берём прогу на AutoIt3 и смотрим размер процесса в памяти 10 Мб. Ну и логически рассудить, при запуске любой exe загружается в память, так что пожатое UPX-ом будет в памяти как есть. А далее для работы программы она должна быть распакована, так что получаем ещё и распакованную копию в памяти, которая уже выполняется. Так что жать есть смысл чтобы больше программ уместить на флешке, не более. А в памяти выполняем пару-троку программ, что не критично к памяти. Но если прога внутри wim, то пропадает смысл этого действа.
|
Ander_73
  - Стаж: 8 лет 1 месяц
- Сообщений: 3934
- Репутация:127[+] [-]
|
AZJIO,оффтопЯ даже больше скажу. Начиная с WinME программа начинает выполняться сразу, подгружая в память только необходимые куски. В то время как сжатая любым упаковщиком программа должна быть загружена в память целиком, там распакована и только потом начнётся её выполнение.
|
Страница 23 из 28
Текущее время: 14-Мар 16:03
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|