Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.08.2014, 15:24   #11
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
Каталог проги это каталог где находится ЕХЕ-шник программы или каталог с файлами проекта? Потому что результат будет именно такой какой ты получаешь, если ини-файла нет там где ты его ищешь.

Добавлю ещё следущее. Ини-файл весьма простая штука и работа с ним столь же проста. Не надо искать какие-то подводные камни там где их нет. Если TIniFile.ReadString возвращает дефолтное значение, то либо нет файла с таким полным именем, либо в нём нет секции с таким именем, либо в секции нет параметра с таким именем.
я могу выслать исходный код проэкта. По идеи должно считать но не считает
Alexandr17 вне форума Ответить с цитированием
Старый 03.08.2014, 15:40   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
я могу выслать исходный код проэкта
Выложи его сюда с инишником в архиве.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.08.2014, 15:45   #13
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

http://1drv.ms/1o0Oz8m
файл при сжатии весом в 3.5 мб так что зали в облако
Alexandr17 вне форума Ответить с цитированием
Старый 03.08.2014, 16:27   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

В коде:
Цитата:
LoadMission('\Missions\BETA\BETA.MA ENE.INI');
В Архиве:
Цитата:
\Ancient Empires New Evil\Missions\BETA\MBETA.MAENE.INI
Только меня одного имя файла смутило?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.08.2014, 16:35   #15
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

Ах да когда пытался исправить проблему я ошибку допустил но даже при таком раскладе
Код:
unit UnAENE;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.StdCtrls, Vcl.Buttons, INIFILES,
  Vcl.ExtCtrls, Vcl.Imaging.pngimage;

type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    NewPLGamesBtn: TBitBtn;
    ScrollBox1: TScrollBox;
    NewBetaGame: TBitBtn;
    Cancel1: TBitBtn;
    procedure NewPLGamesBtnClick(Sender: TObject);
    procedure Cancel1Click(Sender: TObject);
    procedure NewBetaGameClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    {Games Var and Const}
    PathExeName, DirExeName:String;
    Ini:TIniFile;
    MaxMapsSize:TPoint;
    MatrixMaps:Array of Array of Integer;
    Maps:TImage;

    Function LoadMission(FileNameMissions:String):Boolean;
    Function GetScriptToXY(SCRIPT:String):TPoint;
  end;

var
  Form1:TForm1;
implementation

{$R *.dfm}

function TForm1.GetScriptToXY(SCRIPT: String): TPoint;
begin
  Result.X:=StrToINT(Copy(SCRIPT, 1, pos('_', Script)-1));
  Result.Y:=StrToINT(Copy(SCRIPT, pos('_', Script)+1, Length(Script)));
end;

function TForm1.LoadMission(FileNameMissions: String): Boolean;
begin
  Ini:=TIniFile.Create(DirExeName+FileNameMissions);
  MaxMapsSize:=GetScriptToXY(ini.ReadString('Maps', 'MXMY', '0_0'));
  Ini.Free;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  DirExeName:=ExtractFileDir(ParamStr(0));
end;

procedure TForm1.Cancel1Click(Sender: TObject);
begin
  NewPLGamesBtn.Visible:=True;
  NewBetaGame.Visible:=False;
  Cancel1.Visible:=False;
end;

procedure TForm1.NewBetaGameClick(Sender: TObject);
begin
  LoadMission('\Missions\BETA\BETA.MAENE.INI');
end;

procedure TForm1.NewPLGamesBtnClick(Sender: TObject);
begin
  NewBetaGame.Visible:=True;
  Cancel1.Visible:=True;
  NewPLGamesBtn.Visible:=False;
end;

end.
и при таком файле ini
Код:
;0-2 = Простые тайлы
;3-5 = Тайлы которые отнимают - 20 хп (обычно это вулканы)
;6-50 = Тайлы которые прибавляют + 20 хп (обычно это дома или здания)
;-1 = захват домов
;-2 = захват зданий
;-6 - -50 = Ремонт домов или зданий
[Maps]
MXMY=5_5
при условии что папка Missions лежит в папке с программой то ini возвращает дефолтные значения
Alexandr17 вне форума Ответить с цитированием
Старый 03.08.2014, 16:40   #16
alextrof94
Форумчанин
 
Регистрация: 16.03.2013
Сообщений: 599
По умолчанию

MBETA.MAENE.INI
BETA.MAENE.INI
есть разница?
alextrof94$gmail.com
alextrof94 вне форума Ответить с цитированием
Старый 03.08.2014, 16:45   #17
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

вот блин. Надоже. не заметил баг. Спасибо все работает теперь.
Хочу узнать а есть исходники по работе с xml/ может вместо ини использовать xml он вродебы быстрее и меньше памяти будет занимать.
Alexandr17 вне форума Ответить с цитированием
Старый 03.08.2014, 17:18   #18
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вродебы быстрее и меньше памяти будет занимать.
Это кто такое сказал тебе?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.08.2014, 17:34   #19
StriderX
Форумчанин
 
Регистрация: 21.04.2014
Сообщений: 115
По умолчанию

Цитата:
Сообщение от Alexandr17 Посмотреть сообщение
вот блин. Надоже. не заметил баг. Спасибо все работает теперь.
Хочу узнать а есть исходники по работе с xml/ может вместо ини использовать xml он вродебы быстрее и меньше памяти будет занимать.
TIniFile - это плохо, устарело. Лучше использовать TMemIniFile.
На тему xml - жрать меньше и работать быстрее будет только какой-нибудь SAX. Если лениво с ним разбираться, то могу только поделиться своим парсером (с MSXML работа будет аналогичной). Надо только иметь в виду, что у меня никаких валидаторов нет и все источники доверенные.
Вложения
Тип файла: zip XMLSimpleSample.zip (9.7 Кб, 4 просмотров)
StriderX вне форума Ответить с цитированием
Старый 04.08.2014, 02:42   #20
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,926
По умолчанию

Цитата:
Сообщение от StriderX Посмотреть сообщение
TIniFile - это плохо, устарело. Лучше использовать TMemIniFile.
Откуда такие странные дровишки?
Ну то что ини-файлы устарели мелкомягкие нам твердят уже давно. Но чем в данном случае изменит ситуацию мемини-файл?
northener вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема при чтении данных из файла Eshansky Visual C++ 1 07.07.2013 21:08
загрузка данных из ini при условии anchoussichek Общие вопросы Delphi 0 24.05.2011 15:00
Проблема при чтении из бинарного файла twiss Помощь студентам 0 02.10.2010 00:04
Проблема при работе с ini dolphin705 Общие вопросы Delphi 4 12.08.2009 20:59
Проблема при чтении из файла Satorin Общие вопросы Delphi 2 17.12.2008 11:32