WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Поиск, обмен ссылками, вопросы по устаревшему программному обеспечению.
Ответить
EgorKuzevanov
Advanced Member
Сообщения: 588
Зарегистрирован: 20.06.2021,13:35
Откуда: Инской (Кемеровская область)

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение EgorKuzevanov » 03.12.2022,12:13

Никто не встречал в каталоге центра обновления Microsoft https://www.catalog.update.microsoft.com одно или несколько Post-SP1-обновлений для выпущенного в 2002 году Windows XP SP1, добавляющих в kernel32.dll WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process из Windows XP SP2? По аналогии с Post-SP2-обновлением KB959426 для Windows XP SP2, добавляющим в kernel32.dll WinAPI-функцию GetLogicalProcessorInformation из Windows XP SP3.
Нужно для установки и запуска на Windows XP SP1 нового софта, выпущенного в 2010-е и 2020-е годы, которое скомпилировано с помощью Microsoft Visual C++ 2010, 2012, 2013 и 2015 и использует WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process, появившиеся в Windows XP SP2. Например, двух браузеров, способных открывать YouTube и ВКонтакте - Mypal 29.3.0 от Feodor2 (на основе браузера Pale Moon) и Serpent 52 от roytam1 (на основе браузера Basilisk).
Сразу скажу, что добавление в Windows XP SP1 WinAPI-функций DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process из Windows XP SP2 посредством Post-SP1-обновлений нужно мне чисто для спортивного интереса (реально ли в 2020-е годы выжить на Windows XP с выпущенным в далеком 2002 году первым сервис-паком?).

Аватара пользователя
size_t
Advanced Member
Сообщения: 672
Зарегистрирован: 20.02.2019,14:28
Откуда: Санкт-Петербург
Контактная информация:

Вклад в сообщество

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение size_t » 03.12.2022,13:40

Как я ранее и говорил, вы движетесь верным путем.
Может быть и не удастся найти искомое обновление, но вами положено начало изучения WinAPI и его эволюции. Зная WinAPI и Си (с плюсами), вы можете стать неплохим системным программистом (если еще не).
WinAPI это актуальная вещь и актуальной будет столько, сколько еще проживет линейка ОС Windows (ей уже около 40 лет, значит в соответствии с эффектом Линди может прожить еще столько же).

Я бы предложил самому написать такой патч. Это не так сложно как кажется (во всяком случае посильно технически).

Нужно запилить обертку над расширяемой длл-кой, в которой сделать проксирование для всех функций из стандартной длл, плюс написать те функции, которые требуются для работы вашего софта.
За основу можно взять исходники проектов ваших любимых расширенных ядер (если они есть конечно).
Сигнатуры функций известны. Можно ими и ограничиться на первом этапе (сделать ф-ии - пустышки).
Далее можно взять исходники ReactOS и скопировать оттуда реализации этих функций.

Желаю удачи!

Аватара пользователя
ATauenis
Advanced Member
Сообщения: 5527
Зарегистрирован: 30.04.2015,21:30
Откуда: Москва
Контактная информация:

Вклад в сообщество

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение ATauenis » 03.12.2022,14:10

Legacyupdate.net.
Если накатка всех обновлений кроме SP2/3 ничего не даст, значит, такого обновления нет.

EgorKuzevanov
Advanced Member
Сообщения: 588
Зарегистрирован: 20.06.2021,13:35
Откуда: Инской (Кемеровская область)

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение EgorKuzevanov » 03.12.2022,14:44

size_t
ATauenis
Единственное Post-SP1-обновление для Windows XP SP1, которое обновляет kernel32.dll - это обновление KB917422, выпущенное в июле 2006 года. Но, увы, в kernel32.dll, входящем в состав обновления KB917422, нет WinAPI-функций DecodePointer, EncodePointer и EncodeSystemPointer, необходимых для запуска браузеров Mypal 29.3.0 и Serpent 52.
Вывод: в вопросе современного HTTPS-интернета под Windows XP придется забыть о Windows XP SP1 и перейти на Windows XP SP2/SP3.

popov
Advanced Member
Сообщения: 865
Зарегистрирован: 15.01.2018,22:24
Откуда: Фрязино

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение popov » 03.12.2022,23:00

EgorKuzevanov писал(а): 03.12.2022,14:44 Вывод: в вопросе современного HTTPS-интернета под Windows XP придется забыть о Windows XP SP1 и перейти на Windows XP SP2/SP3.
Как вспомнишь эту дыру без firewall так и вздрогнешь.

Аватара пользователя
Voland_PF
Newbie
Сообщения: 68
Зарегистрирован: 01.11.2016,13:49

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение Voland_PF » 05.12.2022,14:06

Ответственно заявляю - сделать можно все, что угодно, есть только вопросы смысла этих действий и количества потраченного времени. Вначале смотрим справку (EncodePointer function) и понимаем, что с SP1 дела не будет т.ч. остальные можно даже не глядеть. В FAR'e есть определенные "приседания", чтобы он работал даже в Windows 2000 SP4 (а вот для плагинов нужен уже KDW Wrapper), где тоже этих всех функций нет даже со всеми обновлениями. Качаем исходники FAR'a с github'a, там находим файлы vc_crt_fix.asm и vc_crt_fix_impl.cpp где видно как это все реализовать на практике.

Абсолютно не понимаю интереса к SP1 и SP2 (да и не только это). У меня есть ноутбук PII 300, 96 Mb RAM и на нем грамотно настроенная SP3 (службы, групповые политики, нужные твики реестра, разумно подобранный софт) со всеми обновлениями (пакет Simplix'a) работает абсолютно так же как и Windows 2000 SP4, стоявшая до этого. Мне просто надоело возиться с врапперами, а Inexperience patcher 0.7.2 приводит XP к нормальному внешнему виду, хотя после установки нужно делать около десятка манипуляций с ресурсами т.к. вышел он задолго до окончания поддержки. К тому же он патчит имеющиеся файлы и никоим образом не калечит систему.

EgorKuzevanov
Advanced Member
Сообщения: 588
Зарегистрирован: 20.06.2021,13:35
Откуда: Инской (Кемеровская область)

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение EgorKuzevanov » 05.12.2022,14:51

Voland_Pf писал(а): 05.12.2022,14:06 Абсолютно не понимаю интереса к SP1 и SP2 (да и не только это). У меня есть ноутбук PII 300, 96 Mb RAM и на нем грамотно настроенная SP3 (службы, групповые политики, нужные твики реестра, разумно подобранный софт) со всеми обновлениями (пакет Simplix'a) работает абсолютно так же как и Windows 2000 SP4, стоявшая до этого. Мне просто надоело возиться с врапперами, а Inexperience patcher 0.7.2 приводит XP к нормальному внешнему виду, хотя после установки нужно делать около десятка манипуляций с ресурсами т.к. вышел он задолго до окончания поддержки. К тому же он патчит имеющиеся файлы и никоим образом не калечит систему.
Voland_Pf, я хочу у тебя поинтересоваться:
1) Как твой старый ноутбук конца 90-х с процессором Intel Pentium 2 на 300 МГц (без поддержки SSE и SSE2) и 96 МБ оперативной памяти смог потянуть полноценную Windows XP SP3? Да еще и с набором обновлений от Simplix'а по ноябрь 2019 года. На такой старый ноутбук максимум встанет только либо Windows XP SP1, либо облегченная говносборка на базе Windows XP SP3 (наподобие Windows XP Game Edition 2009).
2) И какой софт ты подобрал для своего ноутбука с Intel Pentium 2 на 300 МГц под управлением Windows XP SP3? Надеюсь, это браузер Serpent 52 от roytam1 (с индексом ia32), способный корректно открывать YouTube и ВКонтакте?

Аватара пользователя
Voland_PF
Newbie
Сообщения: 68
Зарегистрирован: 01.11.2016,13:49

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение Voland_PF » 05.12.2022,15:35

EgorKuzevanov писал(а): 05.12.2022,14:51 я хочу у тебя поинтересоваться:
1) WinXP SP3 замечательно работает на PII 300, в чем ты можешь убедиться посредством QEMU или x86Box, если нет такого железа под рукой (да хоть на YT ролики можно глянуть где ставят даже на разогнанные Pentium MMX). Simplix делая свой набор учел факт того, что некоторые обновления WinXP Embedded требуют SSE2 и установщик проверяет наличие этого набора и не ставит несовместимые обновления (История изменений UpdatePack-XPSP3-Rus для русской Windows XP Professional SP3). Можно еще при желании использовать последнюю версию для оригинальной XP (UpdatePackLive-14.5.1+.exe) где нет обновлений из Embedded версии. "Говносборками" не пользуюсь и тебе не советую. И любая "говносборка" на базе чего-либо не может прдъявлять требования к процессору ниже чем официальная версия (вот W11 можно поставить на неподдерживаемые ПК внеся пару ключей в реестр прямо во время установки и никакие сборки для этого не нужны). К примеру, даже Win7 SP1 нормально работает на поздних PIII (а вот поздние обновления для SP1 требуют таки SSE2)

2) Такой софт, который позволяет мне использовать ноутбук для всех задач, которые он в состоянии выполнить и браузер мне для них не нужен. Естественно ни один более-менее современный браузер на такой конфигурации не работает, а для просмотра локально сохраненных страниц хватает Links, xdoc2txt и Opera 10. Я написал второй абзац только для того, чтобы сказать что при грамотной настройке системы, даже на таком слабом ноутбуке 1998-го года, разница между XP SP2 и SP3 настолько минимальна, что практически не видна.

EgorKuzevanov
Advanced Member
Сообщения: 588
Зарегистрирован: 20.06.2021,13:35
Откуда: Инской (Кемеровская область)

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение EgorKuzevanov » 05.12.2022,17:13

Voland_Pf писал(а): 05.12.2022,15:35 2) Такой софт, который позволяет мне использовать ноутбук для всех задач, которые он в состоянии выполнить и браузер мне для них не нужен. Естественно ни один более-менее современный браузер на такой конфигурации не работает, а для просмотра локально сохраненных страниц хватает Links, xdoc2txt и Opera 10. Я написал второй абзац только для того, чтобы сказать что при грамотной настройке системы, даже на таком слабом ноутбуке 1998-го года, разница между XP SP2 и SP3 настолько минимальна, что практически не видна.
Кстати, Voland_Pf, как твой ноутбук 1998 года с Windows XP SP3 и без поддержки SSE и SSE2 справляется с воспроизведением скачанных с Рутрекера фильмов, сериалов, мультфильмов и мультсериалов 2010-х и 2020-х годов выпуска в формате H.264, в контейнерах MP4 и MKV и в качествах 1080p и 720p? Будет ли те же самые тормоза, что и в современных браузерах на основе Pale Moon (Mypal 29.3.0, New Moon 27, New Moon 28) и Basilisk (Serpent 52, Serpent 55, Centaury 0.17.0)?
Последний раз редактировалось EgorKuzevanov 05.12.2022,17:18, всего редактировалось 6 раз.

pahan
Advanced Member
Сообщения: 4455
Зарегистрирован: 13.03.2015,14:23
Откуда: Химки, М.О.

Вклад в сообщество

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение pahan » 05.12.2022,17:15

Вначале смотрим справку (EncodePointer function) и понимаем, что с SP1 дела не будет т.ч. остальные можно даже не глядеть.
Только онлайн-справку лучше не смотреть - там сами упоминания всего, что старше 7ки, а то и 8ки. могут потереть. Так что если написано минимум XP SP2 из этого ещё не следует, что в SP1 ничего не было, про него могут банально не упоминать потому что уже нет никакого смысла его использовать. Так что смотреть лучше msdn с дисков актуальных годов.

Аватара пользователя
Voland_PF
Newbie
Сообщения: 68
Зарегистрирован: 01.11.2016,13:49

WinAPI-функции DecodePointer, EncodePointer, EncodeSystemPointer и IsWow64Process для Windows XP SP1

Сообщение Voland_PF » 05.12.2022,18:03

EgorKuzevanov писал(а): 05.12.2022,17:13 Кстати, Voland_Pf, как твой ноутбук 1998 года с Windows XP SP3 и без поддержки SSE и SSE2 справляется...
Есть такой замечательный плеер - TCPMP (можешь сам его взять и проверить что он умеет и сколько ресурсов потребляет, к тому же ему не нужны ни SSE ни SSE2), который работает даже на NT 3.51 и позволяет смотреть на такой конфигурации видео. 720p этот ноутбук конечно не потянет (да и зачем на экране 1024x768), но старые мультики с того же Рутрекера и сериалы 80-х в DVD качестве вполне можно смотреть без тормозов (цвет только в системе должен быть 16 bit т.к. 32 bit уже вызывает тормоза, да и не нужны они на его экране), а при большом желании можно пережать. Ты спрашиваешь так как будто каждый компьютер с XP должен запускать MyPal и Fallout 3. Для нужных мне задач данная конфигурация подходит, консольный софт вообще нетребователен, а на чем смотреть YT и играть в Fallout у меня есть. Это не единственный мой старый компьютер, но я крайне прохладно отношусь ко всему что младше PII т.к. даже XP как ретро платформа не очень интересна. Люди вон в соседних темах обсуждают ПК которые DOOM не тянут, а ты про FullHD видео. Моя мысль была в том, что выигрыш в 2% не стоит того, чтобы потом изобретать как запустить софт требующий SP3.
pahan писал(а): 05.12.2022,17:15 Только онлайн-справку лучше не смотреть.... Так что смотреть лучше msdn с дисков актуальных годов.
Абсолютно верно (но в приведенном случае я и так уверен). Microsoft в последняя время вычищает с сайта все подряд, но пока Win2000 как минимальную платформу указывают.

Ответить