|
Как вынести оффсеты в ini файл??? - Общение разработчиков - Программирование для Perfect World, общение и обсуждене разработок |
04.01.2012, 10:23
|
#1
|
|
|
|
Разведчик
|
Регистрация: 15.08.2011
Сообщений: 25
Популярность: 10
Сказал(а) спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
|
Как вынести оффсеты в ini файл???
Подскажите пожалуйста кому нетрудно, как вынести правильно оффсеты в ini файл.
|
|
|
04.01.2012, 10:33
|
#2
|
|
|
|
Разведчик
|
Регистрация: 15.06.2010
Сообщений: 48
Популярность: 20
Сказал(а) спасибо: 4
Поблагодарили 5 раз(а) в 5 сообщениях
|
Re: Как вынести оффсеты в ini файл???
в исходниках от gurin куча примеров с выносом в ini для Delphi
а тебе для какого языка?
|
|
|
04.01.2012, 16:39
|
#3
|
|
|
|
Сержант
|
Регистрация: 11.12.2010
Сообщений: 110
Популярность: 541
Сказал(а) спасибо: 5
Поблагодарили 66 раз(а) в 39 сообщениях
|
Re: Как вынести оффсеты в ini файл???
держи пример на C++ Builder, думаю, привести к остальным языкам проблемой не будет, ибо принцип в любом случае одинаков:
Код:
#include <inifiles.hpp>
DWORD BA;
DWORD GA;
WORD PlayerOffset;
void LoadConfigData()
{
TIniFile* Config = new TIniFile("C:\\PerfectWorld\\element\\config\\offsets.ini"); // полный (!) путь к файлу
BA = Config->ReadInteger("MAIN","BA",0);
GA = Config->ReadInteger("MAIN","GA",0);
PlayerOffset = Config->ReadInteger("OFFSETS","PlayerOffset",0);
// ...
delete Config; // освобождаем память
}
Соответствующий файл должен выглядеть так:
Код:
[MAIN]
BA=0x100500
GA=0x100500
[OFFSETS]
PlayerOffset=0x15
Как работает ReadInteger("MAIN","BA",123): в файле ищется секция MAIN, ключ BA. Если секция, ключ или значение отсутствует, результатом чтения будет 123 (последний параметр функции), а если есть - соответствующее ключу значение.
Если нужно записывать, а не считывать, то используется аналогичная функция WriteInteger.
P.S. Насчёт шестнадцатеричных значений не уверен, возможно, придётся хранить в INI десятичные оффсеты и адреса.
Последний раз редактировалось BritishColonist; 04.01.2012 в 16:42.
|
|
|
04.01.2012, 20:57
|
#4
|
|
|
|
Разведчик
|
Регистрация: 15.08.2011
Сообщений: 25
Популярность: 10
Сказал(а) спасибо: 8
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Как вынести оффсеты в ini файл???
Спасибо большое, поковыряюсь)) Именно в С++ и надо было.
Добавлено через 14 часов 44 минуты
Проблему решил несколько иначе... В MSVC нет inifiles.hpp. Зато есть простая функция от WINAPI "GetPrivateProfileInt"
В коде выглядит примерно так
DWORD BA = GetPrivateProfileInt ("mine", "BA", NULL, "D:\\drubotconfig.ini");
а в самом ini файле как подсказали выше.
Спасибо всем кто принял участие))
Последний раз редактировалось wajskopf; 05.01.2012 в 11:42.
Причина: Добавлено сообщение
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
оффсеты
|
Maty |
Общение разработчиков |
8 |
14.03.2012 21:00 |
Оффсеты
|
wzhik |
Общение и обсуждение CrossFire |
0 |
19.02.2011 13:43 |
Как быстро вынести мозг девушке?
|
BigAssik |
Треп |
17 |
08.12.2009 11:03 |
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 10:09.
|
|