读书人

ini 文件 如何删除小节里的 关键字 ?

发布时间: 2012-02-24 16:30:38 作者: rapoo

求助: ini 文件 怎么删除小节里的 关键字 ? 谢谢!
请教:

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
myinifile:Tinifile;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
filename:string;
begin
filename:=ExtractFilePath(paramstr(0))+ '帐号.ini ';
myinifile:=Tinifile.Create(filename);
myinifile.WriteString(trim(edit1.Text), '密码 ',trim(edit2.Text));
myinifile.WriteString(trim(edit1.Text), '登录方式 ', 'windows ');
myinifile.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
filename:string;
begin

//////////////////////////////////////////////////////// 删除 ini 文件里的 帐号
filename:=ExtractFilePath(paramstr(0))+ '帐号.ini ';
myinifile:=Tinifile.Create(filename);
if myinifile.SectionExists(trim(edit1.Text)) then
begin
myinifile.EraseSection(trim(edit1.Text));
end;
//////////////////////////////////////////////////////// 删除 ini 文件里的 帐号
end;

procedure TForm1.Button3Click(Sender: TObject); //删除小节里的关键字
begin
myinifile.DeleteKey( 'lsh ', 'windows ');
end;


end.

单击 Button1 得到
[lsh]
密码=2000
登录方式=windows

可是我运行
procedure TForm1.Button3Click(Sender: TObject);
begin
myinifile.DeleteKey( 'lsh ', 'windows ');
end;

出现了地址错误只类的东西

各位大哥,这是什么原因啊?

谢谢!

------解决方案--------------------


不错才怪了,myinifile没有实例呀
Button1Click事件里虽创建了一个实例,但不是又Free了吗?

读书人网 >.NET

热点推荐