???
Математика на уровне МГУ

Показано с 1 по 25 из 1429

Тема: il-2Config - настройщик графики и прочего в Ил-2

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #6
    Старший Офицер Форума Аватар для FilippOk
    Регистрация
    17.04.2002
    Адрес
    Санкт-Петербург
    Возраст
    47
    Сообщений
    10,448

    Ответ: il-2Config, или конец тайны conf.ini.

    1. Ладно.
    Расскажу, как пашет. Может, кому поможет.
    Итак.
    Цель всей возни: научить одного моего знакомого чувака (ещё не волшебник, но далеко пойдет, редиска, если только не будет пить столько пива) писать ini-анализаторы, не пользуясь компонентом TIniFiles, а то больно просто, и ему жизнь мёдом кажется. А заодно - свободно работать со строками, строковыми динамическими массивами, и файлами в стрим-режиме, используя ограниченное количество массивов (два штука). Заодно и на благо себе и людям поработать: я его на Ил-2 подсадил с год назад, может, со временем отработает.
    Итак.
    Поскольку в Conf.ini нас НЕ интересует раздел [Render_DirectX], которым мы не пользуемся, и в котором всё то же самое, что и в [Render_OpenGL], (но может и не совпадать), то сначала, открыв conf.ini читаем его построчно в дин. массив, и параллельно ищем строку [Render_OpenGL]. Найдя, читаем этот раздел в массив С, и снова продолжаем писать в А.
    Тем самым, получаем два массива: А и С. В массиве С лежит весь [Render_OpenGL], в А - всё остальное.
    Когда юзер тыцкает "Записать", построчно анализируем А: отбрасываем всё, что после равно в строке (пример: TexQuality=3), и заменяем строкой того вида, котоый нам необходим (смотря что выставлено). Аналогично с С.

    Тем самым, реакция программы есть только на те строки, что прописаны в conf.ini. Причем, прописаны без комментариев и пробелов.
    Если же вообще нет параметра - она его и "не видит", можно выставлять его в программе сколько влезет, эта строка не добавится, и изменения параметра при следующем запуске программы - не будет.
    Пока что программа этих недостающих параметров не прописывает. Для того и дан conf.ini в архиве с программой (там всё что надо - прописано и изменяется), однако, обязательно будет прописывать и в ваших conf.ini, просто мы до этого ещё не дошли, и не совсем определились ещё, как сигнализировать об отсутствии строки, и вообще надо ли... =)
    Пока что сделано по принципу "не навреди". Лучше уж пусть вообще не прописываются, чем будет прописываться что ни попадя куда ни попадя.

    2. С 16-битным цветом: в версии 1.032 в строке "ColourBits=..." вместо "ColourBits=32" писалось "ColourBits=32 бит на пиксел" (я ж брал значение прямо из ComboBox, и забыл про это). Ил этого не понимал и сбрасывал строку в значение "ColourBits=16".
    В версии 1.033 пишет как надо в случае, если conf.ini не read only. Проверено.

    3. В Conf.ini герцовка не прописана. А значит, программа на герцы повлиять не может. Другое дело, если в видеодрайвере для режима 1024х768 прописано 60 Гц, тогда это надо драйверу стек намылить, мы трусы не рвали.

    4. Про проблемы на английских и немецких виндах. Вижу один (!) положительный отклик (англ.), и один (!) отрицательный (нем.) - про немецкую винду. Что, эта проблема нужна только двум человекам?
    Тогда фигли я в тельняшку потею...

    ========================================

    2 ross_Schalker: чтобы вернуть всё назад, просто в безопасном режиме верни ей старый шрифт (если не оставил архивно, то возьми из дистрибутива с виндового диска). Тот, который в архиве - английский с поддержкой кириллицы. А у тебя-то нужен немецкий с поддержкой кириллицы...
    Блин, не подумал я об этом.
    Найди в инете немецкий шрифт Microsoft Sans Serif с поддержкой кириллицы, и будет тебе щастье.
    P.S. Перевода не будет.

    =========================================

    2 UfP: Правильно ли я понял, что надо прописывать localhost (IP-адрес собственного компа)? Если да, то сделаем в следующей версии. Спасибо за внимательность, я действительно про версию забыл...

    =========================================

    2 =M=PiloT: посмотрел. В 1.033 ничего не затирается. И не может затираться.
    Крайний раз редактировалось FilippOk; 25.04.2006 в 03:49.
    Русские варвары врывались в кишлаки, аулы, стойбища, оставляя после себя города, библиотеки, университеты и театры.

    Правила - тут.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •