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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.02.2008, 00:10   #1
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
Восклицание Не понятно с кодом

Подскажите пожалуйста еще раз по ini-файлу
Есть две формы Form1 и Form2. В форме2
ввожу код и добавляю в ini-файл,а в
форме1 проверяю,когда ввожу код он
прописывается в iniфайл,а когда начинаю
проверять выдает ошибку в Unit1
не присваевыет переменной pap пароль
Подскажите в чем ошибка?
Вот код:

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,IniFiles;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  Ini:TiniFile;
  pass:String;
  pap:String;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
begin
Form2.Show;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
pap:=ini.ReadString('Blok','Password','Ошибка');
if Form1.Text=pap then ShowMessage('Правильно');
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
ini.Free;
end;

end.
Код:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,Inifiles, StdCtrls;

type
  TForm2 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;
  ini:Tinifile;
  pass:String;
  pap:String;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm2.FormCreate(Sender: TObject);
begin
Ini:= TIniFile.Create(ChangeFileExt(ParamStr(0),'.INI'));
end;

procedure TForm2.Button1Click(Sender: TObject);
begin
pass:=Form2.Edit1.Text;
ini.WriteString('Blok','Password',pass);
end;

end.
За частые поиски был забанен во всех известных
поисковых системах!

Последний раз редактировалось Stilet; 08.02.2008 в 08:03.
Михаил Юрьевич вне форума Ответить с цитированием
Старый 08.02.2008, 00:17   #2
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Совпадает переменная ini в обоих юнитах. Убери ее из первого будет работать.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 08.02.2008, 08:07   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Совпадает переменная ini в обоих юнитах
Вообще то она не совпадает, поскольку не обьявлена как public.
Просто автор в первом юните в нее не создает класс.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не понятно, как создавать таблицы в CSS. Ulan HTML и CSS 4 17.07.2008 16:18
Теперь понятно почему мало пользуются поиском... Карась О форуме и сайтах клуба 9 03.03.2008 23:32
Что с кодом ? Look Общие вопросы C/C++ 11 06.11.2007 14:48
Мелочь, а не понятно!!! (DELPHI) zzzzz Помощь студентам 6 03.07.2007 03:33