全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1734
推到 Plurk!
推到 Facebook!

在程式中修改ini文件的設定

尚未結案
skc
一般會員


發表:13
回覆:9
積分:4
註冊:2005-05-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-20 09:54:49 IP:202.175.xxx.xxx 未訂閱
我想可以修改外部文件*.ini左邊的name的值呀... 如圖中2個ini文件的updata the list    procedure TForm2.Button4Click(Sender: TObject); var   linkname,exename:string;   linkini,exeini:TINIFILE; begin listBox1.Clear;      linkname:=ExtractFilePath(paramstr(0))+'Link.ini';   exename:=ExtractFilePath(paramstr(0))+'Exe.ini';      linkini:=TInifile.Create(linkname);   exeini:=TInifile.Create(exename);    linkini.DeleteKey('Link','MainTitle1'); exeini.DeleteKey('Exe','MainTitle1');    listbox1.Items[ListBox1.Itemindex]:=Edit1.Text; //這里不行呀!! linkini.WriteString ('Link',tmpstr,Edit2.text); exeini.WriteString ('Exe',tmpstr,Edit3.text);    linkini.UpdateFile ; exeini.UpdateFile ;      linkini.Free ;   exeini.Free ;    listTitle; end;    procedure TForm2.listTitle; var   linkname,exename:string;   i:integer;   breedno:tstringlist;   linkini,exeini:TINIFILE; begin   listBox1.Clear;      linkname:=ExtractFilePath(paramstr(0))+'Link.ini';   exename:=ExtractFilePath(paramstr(0))+'Exe.ini';      linkini:=TInifile.Create(linkname);   exeini:=TInifile.Create(exename);      breedno:=tstringlist.create;      linkini.ReadSection('Link',breedno);   exeini.ReadSection('Exe',breedno);        for i:=0 to breedno.Count-1 do       listbox1.items.add(breedno.Strings[i]);       breedno.Free ;       linkini.Free ;       exeini.Free ; end;    
chris_shieh
高階會員


發表:46
回覆:308
積分:240
註冊:2004-04-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-20 10:34:47 IP:61.63.xxx.xxx 未訂閱
listbox1.Items[ListBox1.Itemindex] := Edit1.Text; //這里不行呀!! tmpstr:=Edit1.Text; //少了這個吧 linkini.WriteString('Link', tmpstr, Edit2.text); exeini.WriteString('Exe', tmpstr, Edit3.text); @瞭解越多.懂得越少@
skc
一般會員


發表:13
回覆:9
積分:4
註冊:2005-05-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-05-20 12:31:38 IP:202.175.xxx.xxx 未訂閱
這樣子它會新增一個新的.....為什麼呢?
chris_shieh
高階會員


發表:46
回覆:308
積分:240
註冊:2004-04-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-05-20 13:09:31 IP:61.58.xxx.xxx 未訂閱
procedure TForm1.Button1Click(Sender: TObject);
begin
 listTitle; //先將所有Name 讀入Listbox1
end;    procedure TForm1.Button4Click(Sender: TObject);
var
  linkname, exename, tmpValue, tmpName: string;
  linkini, exeini: TINIFILE;
begin
  linkname := ExtractFilePath(paramstr(0))   'Link.ini';
  exename := ExtractFilePath(paramstr(0))   'Exe.ini';      linkini := TInifile.Create(linkname);
  exeini := TInifile.Create(exename);      //點選ListBox1所要改變的Name, 將更改後的Name 輸入Edit1
  tmpName:=ListBox1.Items[ListBox1.ItemIndex];
  tmpValue:=linkini.ReadString('Link',tmpName, ''); //先將值存下來
  linkini.DeleteKey('Link', tmpName); //刪除Old name
  linkini.WriteString('Link', Edit1.Text, tmpValue); //用Edit1.Text的New name寫入值      tmpValue:=exeini.ReadString('Exe',tmpName, '');//先將值存下來
  exeini.DeleteKey('Exe', tmpName);//刪除Old name
  exeini.WriteString('Exe',  Edit1.Text, tmpValue); //用Edit1.Text的New name寫入值      linkini.UpdateFile;
  exeini.UpdateFile;      linkini.Free;
  exeini.Free;      listTitle;
end;    procedure TForm1.listTitle;
var
  linkname, exename: string;
  i: integer;
  breedno: tstringlist;
  linkini, exeini: TINIFILE;
begin
  listBox1.Clear;      linkname := ExtractFilePath(paramstr(0))   'Link.ini';
  exename := ExtractFilePath(paramstr(0))   'Exe.ini';      linkini := TInifile.Create(linkname);
  exeini := TInifile.Create(exename);      breedno := tstringlist.create;      linkini.ReadSection('Link', breedno);
  exeini.ReadSection('Exe', breedno);      for i := 0 to breedno.Count - 1 do
    listbox1.items.add(breedno.Strings[i]);
  breedno.Free;
  linkini.Free;
  exeini.Free;
end;    
@瞭解越多.懂得越少@ 發表人 - chris_shieh 於 2005/05/20 13:18:19 發表人 - chris_shieh 於 2005/05/20 13:24:02
skc
一般會員


發表:13
回覆:9
積分:4
註冊:2005-05-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-05-20 23:06:30 IP:202.175.xxx.xxx 未訂閱
我本來是分了2個INI文件的 我想問下 可不可以1個INI文件就可以呢? 還有我想問一下如果在程式里修改了一些值 可不可以設定按一個鍵才儲存呢?
chris_shieh
高階會員


發表:46
回覆:308
積分:240
註冊:2004-04-26

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-05-23 10:05:53 IP:61.58.xxx.xxx 未訂閱
那就把其中一個拿掉就好拉 如果不要馬上儲存 就把linkini.UpdateFile; 放到要做的地方 @瞭解越多.懂得越少@
skc
一般會員


發表:13
回覆:9
積分:4
註冊:2005-05-17

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-05-23 19:27:06 IP:202.175.xxx.xxx 未訂閱
我發現我每做一個動作寫進ini文件里 他就會自動save
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-05-24 02:06:22 IP:222.45.xxx.xxx 未訂閱
你的問題不屬於網際網路的範圍, 請移區 -- 把手握緊,裡面什麼也沒有 把手鬆開,你擁有的是一切
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Ktop_Robot
站務副站長


發表:0
回覆:3511
積分:0
註冊:2007-04-17

發送簡訊給我
#9 引用回覆 回覆 發表時間:2007-04-26 13:50:46 IP:000.000.xxx.xxx 未訂閱
提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。

------
我是機器人,我不接受簡訊.
系統時間:2024-05-14 7:25:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!