Форум программистов, компьютерный форум, киберфорум
Argus19
Войти
Регистрация
Восстановить пароль

Изображения webp на старых x32 ОС Windows XP и Windows 7

Запись от Argus19 размещена 30.10.2025 в 08:49
Показов 5478 Комментарии 11
Метки c++, vb, vb 6.0, webp

Изображения webp на старых x32 ОС Windows XP и Windows 7
Чтобы решить задачу, использовал интернет:
поисковики Google и Yandex, а также подсказки Deep Seek.
Как оказалось, чтобы создать приложение, совместимое с Windows XP, на С++
необходимо в Visusl Studio 2010 в свойствах проекта установить:
"свойства конфигурации" -> "Общие" -> "Использование MFC" ->
"Использовать MFC в статической библиотеке".
Таким образом сделана программа: "FileToBMP".
Программа использует библиотеку libwebp_x86.dll, которая должна находиться
рядом с исполняемым файлом. Программа предлагает выбрать webp файл, перекодирует
его в формат .bmp, предлагает выбрать место и имя для его сохранения. После чего записывает файл.
Исходники второй программы написанной на VB 6.0 в архиве: "Read File XP.zip".
Т.к. C++ и VB 6.0 по-разному передают параметры в функции через стек, потребовалось написать
библиотеку-посредник для работы с нужными функциями libwebp_x86.dll: "webp_vb_xp.dll".
При написании возникли сложности, пришлось использовать компилятор: "Tiny C Compiler" версии
0.9.25. Т.к. tcc декорирует имена экспортируемых функций, пришлось изменить декларации.
Иногда программы, написанные на VB 6.0 при запуске из IDE (отладочный режим) не видят, находящиеся
в той же папке библиотеки. Для решения этой проблемы есть два варианта:
1). В подпрограмме Form_Load() записать код:
Visual Basic
1
2
    ChDrive App.path
    ChDir App.path
2). Или в начале кода формы:
Visual Basic
1
2
Option Explicit
Private Declare Function SetDllDirectory Lib "Kernel32" Alias "SetDllDirectoryA" (ByVal path As String) As Long
и в подпрограмме Form_Load():
Visual Basic
1
SetDllDirectory App.path    'Устанавливаем директорию, в которой находятся библиотеки dll.
Я, "на всякий пожарный" использовал оба варианта.
Работоспособность обеих программ проверены на Windows 10 x64, на windows XP x32 и Windows 7 x32,
установленных на виртуальную машину, а так же на реальной Windows 7 x32.
Миниатюры
Нажмите на изображение для увеличения
Название: Screen.jpg
Просмотров: 100
Размер:	196.8 Кб
ID:	11353  
Вложения
Тип файла: zip FileToBMP.zip (258.8 Кб, 93 просмотров)
Тип файла: zip Read File XP.zip (262.1 Кб, 66 просмотров)
Метки c++, vb, vb 6.0, webp
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 11
Комментарии
  1. Старый комментарий
    Аватар для Maks
    Задумка конечно не плохая, если бы не одна маленькая, но немаловажная деталь: формат WebP от Google, подразумевает доступ в сеть? Если да, то для семерки еще куда ни шло, а вот для XP это весьма губительное мероприятие, ибо защиты к современным угрозам из сети там нет от слова "совсем", даже если удастся натянуть какой-нить антивирь.
    Запись от Maks размещена 31.10.2025 в 10:20 Maks вне форума
  2. Старый комментарий
    Аватар для Argus19
    Windows 7 уже считается небезопасной для интернет угроз.
    До сих пор люди вынуждены использовать Windows XP из-за того, что на ней можно запускать старые программы, включая программы, написанные для DOS. Понимаю, что таких случаев не так уж и много. Так что я просто расширил функционал. Тем более, что доступ к сети не нужен. А изображения в формате webp и другая информация переносится на флешках.
    Запись от Argus19 размещена 31.10.2025 в 12:22 Argus19 вне форума
  3. Старый комментарий
    Аватар для Maks
    Цитата Сообщение от Argus19
    Windows 7 уже считается небезопасной для интернет угроз.
    До сих пор люди вынуждены использовать Windows XP из-за того, что на ней можно запускать старые программы, включая программы, написанные для DOS.
    Для этого давно, причем весьма, придумали виртуализацию: создал виртуальную машину, изолировал ее от сети, поставил олдскульную ОСь и старый софт. Если использовать такую ОСь в т.ч. с открытым доступом в мир, то такая машина свалится вместе с установленным на нее софтом. Есть конечно исключения, это узкоспециализированное оборудование, использующее специальные интерфейсные платы, которые не пробросить на виртуалку, но в данном случае (уверен почти на 100%), данные машины кроме как своего прямого предназначения больше ни для чего другого не используются.
    Запись от Maks размещена 01.11.2025 в 09:59 Maks вне форума
  4. Старый комментарий
    Аватар для Argus19
    Цитата Сообщение от Maks
    Если использовать такую ОСь в т.ч. с открытым доступом в мир, то такая машина свалится вместе с установленным на нее софтом.
    Неужели есть энтузиасты, до сих пишущие вирусы под Windows XP?
    Запись от Argus19 размещена 01.11.2025 в 11:54 Argus19 вне форума
  5. Старый комментарий
    Аватар для Maks
    Цитата Сообщение от Argus19
    Неужели есть энтузиасты, до сих пишущие вирусы под Windows XP?
    https://habr.com/ru/companies/... 2563536756
    Современные вирусы и трояны легко ломают ХР из-за уязвимости протоколов.
    Тому же шифровальщику плевать, какая ОСь перед ним.
    Запись от Maks размещена 01.11.2025 в 13:32 Maks вне форума
  6. Старый комментарий
    Аватар для Argus19
    Интересно.
    Запись от Argus19 размещена 01.11.2025 в 18:10 Argus19 вне форума
  7. Старый комментарий
    Аватар для Argus19
    Цитата Сообщение от sqltd1
    Остается вопрос - зачем изобретать велосипед, если "до флешки" можно использовать универсальное общедоступное решение под названием imagemagick?
    Вопроса никакого нет. Меня заинтересовало, я поставил себе задачу и решил её.
    Я дал людям инструмент, а пользоваться им или нет, каждый для себя решает сам.
    До сих пор на 32-битных Windows XP и Windows 7 это было проблемой. Теперь не надо ничего придумывать.
    Запись от Argus19 размещена 02.11.2025 в 07:11 Argus19 вне форума
  8. Старый комментарий
    Argus19,
    мой вар...
    делал шоп с шеда арт кидать на энтот форум...
    Запись от XLAT размещена 02.11.2025 в 14:54 XLAT на форуме
  9. Старый комментарий
    Аватар для Argus19
    Цитата Сообщение от XLAT
    Argus19,
    мой вар... [/URL]
    делал шоп с шеда арт кидать на энтот форум...
    Интересно. Старые x32 оси поддерживает?
    Запись от Argus19 размещена 02.11.2025 в 20:12 Argus19 вне форума
  10. Старый комментарий
    Цитата Сообщение от Argus19
    Интересно. Старые x32 оси поддерживает?
    нужно взять 32 разрядный компилятор с поддержкой С++20
    всего то...

    но вам нужна ещё и хрюшка,
    поэтому придется поискать TDM компилятор выпуска после 2020 года.

    я хз, но можно вот этим попробовать https://github.com/jmeubank/td... .3.0-tdm-1

    ещё
    Запись от XLAT размещена 02.11.2025 в 20:25 XLAT на форуме
  11. Старый комментарий
    Цитата Сообщение от XLAT
    нужно взять 32 разрядный компилятор с поддержкой С++17
    всего то...

    но вам нужна ещё и хрюшка,
    поэтому придется поискать TDM компилятор выпуска после 2017 года.
    или поправить код до С++11 - кода там мало и он не сложный...

    хотя, это плохой вариант будет ...
    Запись от XLAT размещена 02.11.2025 в 20:26 XLAT на форуме
 
Новые блоги и статьи
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений Всем привет. А вот мой компьютер, переделанный из ноутбука. Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца: Хочу еще Симбу взять, очень нравится. . .
Инференс ML моделей в Java: TensorFlow, DL4J и DJL
Javaican 05.11.2025
Python захватил мир машинного обучения - это факт. Но когда дело доходит до продакшена, ситуация не так однозначна. Помню проект в крупном банке три года назад: команда data science натренировала. . .
Mapped types (отображённые типы) в TypeScript
Reangularity 03.11.2025
Mapped types работают как конвейер - берут существующую структуру и производят новую по заданным правилам. Меняют модификаторы свойств, трансформируют значения, фильтруют ключи. Один раз описал. . .
Адаптивная случайность в Unity: динамические вероятности для улучшения игрового дизайна
GameUnited 02.11.2025
Мой знакомый геймдизайнер потерял двадцать процентов активной аудитории за неделю. А виновником оказался обычный генератор псевдослучайных чисел. Казалось бы - добавил в карточную игру случайное. . .
Протоколы в Python
py-thonny 31.10.2025
Традиционная утиная типизация работает просто: попробовал вызвать метод, получилось - отлично, не получилось - упал с ошибкой в рантайме. Протоколы добавляют сюда проверку на этапе статического. . .
C++26: Read-copy-update (RCU)
bytestream 30.10.2025
Прошло почти двадцать лет с тех пор, как производители процессоров отказались от гонки мегагерц и перешли на многоядерность. И знаете что? Мы до сих пор спотыкаемся о те же грабли. Каждый раз, когда. . .
Изображения webp на старых x32 ОС Windows XP и Windows 7
Argus19 30.10.2025
Изображения webp на старых x32 ОС Windows XP и Windows 7 Чтобы решить задачу, использовал интернет: поисковики Google и Yandex, а также подсказки Deep Seek. Как оказалось, чтобы создать. . .
Passkey в ASP.NET Core identity
stackOverflow 29.10.2025
Пароли мертвы. Нет, серьезно - я повторяю это уже лет пять, но теперь впервые за это время чувствую, что это не просто красивые слова. В . NET 10 команда Microsoft внедрила поддержку Passkey прямо в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru