@Linda-chan

Тег windows_95 в блоге Linda-chan

Linda-chan

Забавное. Есть функция ExpandEnvironmentStrings(), которая берёт строку и разворачивает в ней переменные окружения. Работает она типично: сначала запускаем, передавая NULL вместо приёмного буфера и 0 в качестве длины этого буфера, получаем нужный размер буфера и запускаем второй раз с подготовленным приёмным буфером. Некоторые функции, работающие по этому принципу, NULL не хотят, но там можно просто пустой буфер передать (хоть указатель на int с нуликом). Windows 95 возмутилась и тому, и тому варианту, GetLastError() указывает на ошибку в параметрах, хотя более поздние версии работают нормально. Выяснилось, что нулевой длины буфер функция не принимает, поэтому пришлось первый вызов делать с буфером длиной два символа, и тогда всё заработало, как надо.

Linda-chan

Некоторые мои программы колбасит в Windows 95 потому что там есть каталог «Application Data», но не совсем. Физически он есть, в реестре путь к нему прописан. Но функция SHGetSpecialFolderLocation() большинство этих каталогов не возвращает. А так как у меня именно она используется, то и случаются нежданичики. Надо фиксить...

Linda-chan

Windows 95 ничего не знает о цифровой подписи екзешников и всего прочего. В Windows 98 оно уже было, хотя даже системные библиотеки без особого энтузиазма подписывались. Что в NT4 – не помню.

Linda-chan

Маленькая драма во время установки.
https://pics.lindachan.net/2021/10/w95/index.xml

Linda-chan

Не могу определится, ставить мне Desktop Update или пусть интерфейс и дальше будет лютым классическим?

Linda-chan

IsDebuggerPresent
Windows NT – Yes
Win95 – No

А в Windows 98 точно добавили. Забавно, что в той справке (которая как раз во времена Windows 95 была выпущена, win32.hlp) import library не указана, а указано в самом тексте:

This function is exported from KERNEL32.DLL.

Linda-chan

Второй день пытаюсь установить Windows 95 (не OSR2) на виртуалку и довести её до работоспособного состояния. Сначала оно говорило мне, что нашло некий драйвер по уплотнению дисков, хотя грузилось с дискеты, сделанной в Windows 98 (форматирование с копированием системных файлов – загрузчика и command.com). Но оказалось, что можно просто запустить сетап с ключом, который запрещает использовать сжатие. Так и написано. Теперь вот установила и выясняю, что скрипты не работают, программы мои не работают, даже функция IsDebuggerPresent() не найдена, и VM Additions не ставятся =_= Пока ставлю IE5: по идее мои программы должны заработать. Остальное, видимо, требует OSR2. Короче, Windows 98 рулит.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.