avalat
  - Longevity: 10 years
- Posts: 499
- REPUTATION:127[+] [-]
|
Извлечение иконок из папки и из файлов *.exe *.dll *.icl IconsExt Добавлен ресурс 11 в EXEDATA (ResHacker.exe)
Last edited by avalat on 2025-03-25 21:09; edited 2 times in total
|
 Отправлено: 27-May-2022 13:19
(after 2 months 26 days)
avalat
  - Longevity: 10 years
- Posts: 499
- REPUTATION:127[+] [-]
|
Недавно как то разбирался со ссылками на Youtube, наткнулся на утилитку youtube-dl.exe Заменил на yt-dlp.exe. Набросал гуишку. Скорость загрузки удручила...у меня не больше 70, хотя были и вспышки Вот код с комментариямиMDIR %Temp%\yt //создаём папку в (%Temp%\yt) PUTF -wait %Temp%\yt\yt-dlp.exe,,%MyName%#12|EXEDATA // в эту папку распаковываем утилиту yt-dlp.exe ENVI txt=%TEMP%\logY.txt // создаём переменную для лога (txt) ENVI &V= _SUB win,W330H150,Download_YT,x, ENVI @win.POS=::::4 ITEM st,L140T80W170H30,Вставить из буфера обмена,v ITEM st2,L140T80W170H30,Загрузить,st ENVI @st2.visible=0 LABE -left ,L10T4W300H12,Ссылка с Youtube,,0x6D6C6A PBAR pb,L10T52W300H20,, EDIT| pp,L10T290W550H20,,,0x20 EDIT ed,L10T20W300H20,,,0x100,0xFF0000, LABE -left sss,L12T84W40H25,,,0x0000FF,16 LABE -left sss2,L10T145W60H16,,,0x0000FF LABE -left fil,L10T120W300H23,,,,8 LABE -left vr,L78T145W50H16,Осталось,, LABE -left vr2,L132T143W50H16,,,0xFF0000,14 LABE -left sk,L200T145W55H16,Скорость,, LABE -left sk2,L256T145W60H16,,,0xFF0000, // ENVI @ed.MSG=0x0233::&&wp,,stf // ENVI @edi.MSG=0x0233::&&wp,,sti _END _SUB v ENVI @ed.SENDMSG=0x0302 ENVI n=%ed% LSTR bukv=10,%ed% FIND $%bukv%=https://yo, TEAM ENVI @st.visible=0|ENVI @st2.visible=1!TEAM ENVI @ed=|MESS=-icon Вставьте правильную ссылку //| EXIT _END _SUB st // нажатие "Загрузить" envi n2=%ed% // считываем ещё раз ссылку find $%n%<>%n2%,team ENVI @st.visible=1|ENVI @st2.visible=0|ENVI @ed=|MESS=-icon Вставьте правильную ссылку|exit // проверяем - не изменилась ли она ENVI @win.pos=:::200 // меняем (увеличиваем) размер окна // нужное внизу - выбрать (раскомментировать) // эта строка для вставки в exe - она пока закомментирована // EXEC* -hide --cmd::400:progr &V=%Temp%\yt\yt-dlp.exe -i --ignore-errors %ed% // запускаем загрузку - каждые 400 мс будут передаваться данные <&V> в подпрограмму progr // эта строка для файла youtube-dl.exe - находится рядом EXEC* -hide --cmd::400:progr &V=%CurDir%\yt-dlp.exe -i --ignore-errors %ed% TEAM ENVI @win.pos=:::150|ENVI @st2.enable=1|ENVI @st2.visible=0|ENVI @st.visible=1|ENVI @ed=|ENVI @sss=|ENVI @fil=|ENVI %fil%= //после загрузки изменяем размер окна, меняем кнопки на видимые, очищаем переменные IFEX %CurDir%\%fil%, EXEC explorer.exe %CurDir%\ // если файл существует - открываем окно с загруженным файлом _END _SUB progr ENVI @st2.enable=0 // делаем неактивной кнопку "Загрузить" ENVI &s= // создаём переменную WRIT %txt%,$,%&V% // записываем данные из <&V> в лог <txt> READ *fix %txt%,*r,tx // считываем построчно весь лог в переменную <tx>, нам нужна строка где встречается слово <Destination:> - после неё идет название файла LPOS** a=Destination:,,%tx% // вычисляем позицию слова - это число <a> CALC aa=%a%+1 // добавляем единицу MSTR res=<%aa%->%tx% // сохраняем в переменную <res> текст до конца строки от <%aa-%> - это название файла READ -,1,ress,%res% // считываем из переменной <res> название файла ENVI @fil=%ress% // вставляем его в окно в @fil READ *fix %txt%,0,&s // считываем последние строки из лога в переменную <&s> ENVI @pp=%&s% // вставляем строки в невидимое окно редактирования @pp, выглядят они так - <[download] 55.7% of 18.58MiB at 76.35KiB/s ETA 01:50> TEAM MSTR &p=<2>%pp%|CALC #&p=%&p% // извлекаем 2 "слово" из строки - 55.7% - это процент загрузки, делаем его целым ENVI @sss=%&p%%% // вставляем его в окно в строку @sss ENVI @pb=%&p% // и вставляем его в прогрессбар MSTR &ra=<4>%pp% // извлекаем 4 "слово" - 18.58MiB - это размер файла SED &raz=0,MiB, Mb,%&ra% // заменяем MiB на более привычное Мb ENVI @sss2=%&raz% // вставляем в окно MSTR &ps=<6>%pp% // извлекаем 6 "слово" - 76.35KiB/s - это скорость SED &psk=0,MiB/s, Mb/s,%&ps% // заменяем KiB/s на KB/s ENVI @sk2=%&psk% //вставляем в окно MSTR &vr=<8>%pp% // извлекаем 8 "слово" - это оставшееся время ENVI @vr2=%&vr% //вставляем IFEX $%sss%=100%,team KILL yt-dlp.exe|ENVI @sss.visible=0//когда будет 100% - закрываем процесс youtube-dl.exe, _END _SUB x // при выходе закрыть процесс и удалить лог KILL yt-dlp.exe FILE %txt% FILE %TEMP%\YT\ //удаление папки с yt-dlp.exe KILL \ _END В архиве неупакованный exe, утилита yt-dlp.exe и код (Знаю, что таких подобных прог много, чисто как пример PECMD)
Last edited by avalat on 2022-08-18 20:35; edited 12 times in total
|
SergeyZV
  - Longevity: 10 years
- Posts: 1259
- REPUTATION:34[+] [-]
|
avalat, youtube-dl.exe отстой. Используй yt-dlp.exe.
|
avalat
  - Longevity: 10 years
- Posts: 499
- REPUTATION:127[+] [-]
|
Gvint64,  Ага, понял. Давай добавим.
|
 Отправлено: 30-May-2022 14:21
(after 1 hour 6 minutes)
SergeyZV
  - Longevity: 10 years
- Posts: 1259
- REPUTATION:34[+] [-]
|
95337yt-dlp.exe -h > hlp.txt А смысл?! Тогда уж и нужна возможность добавления ключей.
|
Gvint64
  - Longevity: 4 years 11 months
- Posts: 621
- REPUTATION:72[+] [-]
|
SergeyZV, А какой смысл вообще в справочных данных?
|
SergeyZV
  - Longevity: 10 years
- Posts: 1259
- REPUTATION:34[+] [-]
|
95339А какой смысл вообще в справочных данных? В данной проге от avalat нет ни какого смысла.
|
Gvint64
  - Longevity: 4 years 11 months
- Posts: 621
- REPUTATION:72[+] [-]
|
SergeyZV,Никто и не говорил что справку туда надо встраивать. А посмотреть какие ключи и с чем их едят кому-нибудь пригодится.
|
 Отправлено: 05-Jul-2022 21:18
(after 1 month 5 days)
Page 3 of 7
Current time is: 21-Apr 23:00
All times are UTC + 3
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|