Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
JesterX - 11.12.2009
Угу.
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
^Woozie^ - 12.12.2009
MX_Master, расскажи как тестировал скорость чтения. Я сам протестирую.
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
MX_Master - 12.12.2009
в 1 посте под картинкой ссылка на код ФС с тестингом
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
^Woozie^ - 12.12.2009
Со скоростью только блох гоняют.
Когда буду брут словарь через павно мутить мб пригодиться
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
MX_Master - 13.12.2009
в любом случае, еси для хранения всего в моде используется Dini, то ваш серв, считайте, серъезно тормозит только из-за пресловутой записи/чтения из файлов на диске
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
^Woozie^ - 13.12.2009
у меня используется mysql и я не парюсь. Хотя инклуд полезный, базара нет.
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
MX_Master - 14.12.2009
у мя просто админка на INI файлах, сам мод на SQLit'e, а Dini.. да просто устарел он
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
[JIeXa] - 15.12.2009
более менее
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
MX_Master - 16.12.2009
v0.3- Добавлен ini_removeKey.
- Изменено максимальное значение размера для открытого файла до 64 Кб. Все эти стандартные значения можно изменить по вашему усмотрению до очень больших или совсем крохотных значений.
Re: [INC] mxINI - Самый быстрый INI ридер/райтер -
^Woozie^ - 17.12.2009
Ещё версии будут или можно уже спокойно настроить и залить себе в папку includes?
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
MrDeath537 - 16.09.2010
I can't understand a shit, because I don't speak russian, but very nice
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
ZiGGi - 16.09.2010
в павне почему-то sizeof(PlayerInfo[playerid][pKey]) работает не правильно... давно заметил...
ini_getString(iniFile,"Key",PlayerInfo[playerid][pKey],128 );
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
Johnny_Xayc - 16.09.2010
sizeof - не серверный оператор вроде как
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
ZiGGi - 16.09.2010
Quote:
Originally Posted by Johnny_Xayc
sizeof - не серверный оператор вроде как
|
а кто написал, что серверный?о_О
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
Johnny_Xayc - 16.09.2010
Ну раз ты его так используешь...я понимаю ты бы его юзал так sizeof PI[5][pKey] у тебя бы он нормально работал,а так у тебя playerid параметр указан,а playerid не определённое число,вот и не может он вытащить тебе размер)
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
toneysix - 16.09.2010
Johnny_Xayc Сам понял, что сказал? Всё правильно делает Ziggi, губу не раскатываи x)
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
ZaR - 16.09.2010
А он Johnny_Xayc прав, playerid не константа, а sizeof - функция компилятора, которая заменяется на число при компилировании
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
Stepashka - 16.09.2010
Quote:
Originally Posted by ZaR
А он Johnny_Xayc прав, playerid не константа, а sizeof - функция компилятора, которая заменяется на число при компилировании
|
это функция движка.
Тем кто не верит может проверить на банальном примере
Code:
public OnPlayerText(playerid,text[])
{
printf("-%d-",sizeof(text));
return 1;
}
или вы будете утверждаьб что компилятор заранее знает объем всех введенных в чат текстов и время ввода?
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
DANGER1979 - 16.09.2010
Quote:
Originally Posted by Johnny_Xayc
DANGER user this
new tmp[64];
iniGet(iniFile, "Key", tmp); PlayerInfo[playerid][pKey] = tmp;
if(strcmp(PlayerInfo[playerid][pKey],password,true)==0) THEN
your code
END
|
а смысл? Когда можно сразу указать ini_getString(iniFile,"Key",PlayerInfo[playerid][pKey], 64);
Кстати по-моему
PlayerInfo[playerid][pKey] = tmp; не самых правильный вариант копирования строковых переменных. Я считаю лучше использовать
strmid(PlayerInfo[playerid][pKey], tmp, 0, strlen(tmp), 255);
Но в любом случаи спасибо.
Quote:
Originally Posted by ZiGGi
в павне почему-то sizeof(PlayerInfo[playerid][pKey]) работает не правильно... давно заметил...
ini_getString(iniFile,"Key",PlayerInfo[playerid][pKey],128 );
|
Твой пример более понятен и удобен, т.к. в ини-ридере заложена такая возможность. А на счёт, что нельзя делать sizeof(PlayerInfo[playerid][pKey]) я тоже согласен. Но просто в описании данной ф-ии ini_getString небыло дополнительных пояснений.
Вопрос к автору.
1. Почему
ini_getString(iniFile,"Key",PlayerInfo[playerid][pKey],64);
возвращает неполное значение пароля, а выкидывает из пароля некоторые символы. Нельзя это исправить или что надо закоментировать, т.к. код этого инклюда слишком сложный для понимания за один вечер.
Вот к примеру
из пароля
Key=crtВЂqz69X
пропал символ
'В'
и вернулся пароль
Key = crtЂqz69X
Почему? Как исправить?
2. Также возможно ошибка инклюда
DonateRank и Rank он принимает за одинаковый ключ. И поэтому PlayerInfo[playerid][pRank] всегда пуст.
3. Если я закоментирую вот эти строки в ф-ии stock ini_setString(nFilePointer, szKeyName[], szKeyValue[])
Code:
//_ini_szFileContent[nFilePointer]{ curFilePos++ } = ' '; // после ключа добавим пробел
_ini_nDelimPos[nFilePointer][ _ini_nKeysCount[nFilePointer] ] = curFilePos; // добавим новую позицию INI_DELIMITER
_ini_nKeysCount[nFilePointer]++; // кол-во ключей в файле +1
_ini_szFileContent[nFilePointer]{ curFilePos++ } = INI_DELIMITER; // после пробела выше добавим INI_DELIMITER
//_ini_szFileContent[nFilePointer]{ curFilePos++ } = ' '; // после INI_DELIMITER добавим пробел
работоспособность инклюда не изменится?
И ещё
Я заметил, что названия ключей, если поменять их в моде, то он не меняет их в процессе работы, но если в моде произошла замена ключа, то данный инклюд ищет совпадения, если не находит, то данная переменная будет пуста. Это так задумано? Это не удобно если название ключа поменялось и надо чтобы постепенно все аккаунты перезаходя на сервер перезаписали название этого ключа. Т.к. самому вручную перебивать в 5000 аккаунтах название одного ключа - это очень скучно.
И последнее для тех, кто будет начинать юзать это инклюд, было бы полезным добавить описание для ф-ии ini_getString, что при значениях, типа как PlayerInfo[playerid][pKey], необходимо указывать размерность.
Re: [INC] mxINI - Самый быстрый INI ридер/райтер (v0.4 final) -
ZiGGi - 17.09.2010
Quote:
Originally Posted by DANGER1979
2. Также возможно ошибка инклюда
DonateRank и Rank он принимает за одинаковый ключ. И поэтому PlayerInfo[playerid][pRank] всегда пуст.
|
давно такую особенность заметил... делал Level и AdminLevel и долго мозг ипал(((