Например, имеется ini-файл System. При раскрытии этого файла и нажатия на [driver32] должен вывести путь:C:\WINDOWS\System\[driver32].
Ну, или что-то подобное. Может какое-нибудь свойство есть?
Код
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
N,first,Last:word;
TS:TStringList;
begin
with OpenDialog1 do
if Execute then
begin
OutLine1.Clear;
TS:=TStringList.Create;
try
TS.LoadFromFile(FileName);
TS.Insert(0,ExtractFileName(FileName));
for n:=TS.Count-1 downto 1 do
begin
s:=TS[N];
First:=1;
while (First<Length(s)) and((S[First]=' ')or
(s[first]=#9)) do inc(first);
Last:=Length(s);
while (Last>=First) and((S[First]=' ')or
(s[Last]=#9)) do Dec(Last);
if last >=First then
begin
s:=Copy(s,First,Last-First+1);
if (s[1]='[') and (s[length(s)]=']')
then s:=#9+s
else s:=#9#9+s;
TS[N]:=s
end
else
TS.Delete(N);
end;
OutLine1.Lines:=TS
Finally
TS.Free
end
end;
label1.Caption:=openDialog1.FileName;
end;
var s:string;
N,first,Last:word;
TS:TStringList;
begin
with OpenDialog1 do
if Execute then
begin
OutLine1.Clear;
TS:=TStringList.Create;
try
TS.LoadFromFile(FileName);
TS.Insert(0,ExtractFileName(FileName));
for n:=TS.Count-1 downto 1 do
begin
s:=TS[N];
First:=1;
while (First<Length(s)) and((S[First]=' ')or
(s[first]=#9)) do inc(first);
Last:=Length(s);
while (Last>=First) and((S[First]=' ')or
(s[Last]=#9)) do Dec(Last);
if last >=First then
begin
s:=Copy(s,First,Last-First+1);
if (s[1]='[') and (s[length(s)]=']')
then s:=#9+s
else s:=#9#9+s;
TS[N]:=s
end
else
TS.Delete(N);
end;
OutLine1.Lines:=TS
Finally
TS.Free
end
end;
label1.Caption:=openDialog1.FileName;
end;