讀取registry資料項所有內容 |
尚未結案
|
hyushiang
一般會員 ![]() ![]() 發表:9 回覆:6 積分:3 註冊:2004-07-12 發送簡訊給我 |
假若我想要
TRegistry *Reg = new TRegistry; Reg->RootKey=HKEY_LOCAL_MACHINE; Reg->OpenKey("\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",false);我想要把所有字串值抓下來。存入TStringList裡。 例如 "C:\Program Files\Common Files\Symantec Shared\ccApp.exe" "C:\Program Files\Common Files\Microsoft Shared\IME\IMTC65\CHANGJIE\CINTLCFG.EXE /CJIMETIPSync" 如果用ReadString好像只能單一單一存。 我只需要存字串值,不需ValueName,那麼要怎麼做呢?謝謝! 莊子‧華南真經:「為善無近名,為惡無近刑。」
------
莊子‧華南真經:「為善無近名,為惡無近刑。」 |
Zard
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:24 回覆:396 積分:539 註冊:2003-11-26 發送簡訊給我 |
引言: 假若我想要TRegistry *Reg = new TRegistry; Reg->RootKey=HKEY_LOCAL_MACHINE; Reg->OpenKey("\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",false);我想要把所有字串值抓下來。存入TStringList裡。 例如 "C:\Program Files\Common Files\Symantec Shared\ccApp.exe" "C:\Program Files\Common Files\Microsoft Shared\IME\IMTC65\CHANGJIE\CINTLCFG.EXE /CJIMETIPSync" 如果用ReadString好像只能單一單一存。 我只需要存字串值,不需ValueName,那麼要怎麼做呢?謝謝! 莊子‧華南真經:「為善無近名,為惡無近刑。」 void __fastcall TForm1::Button1Click(TObject *Sender) { TRegistry *Reg = new TRegistry; TStringList* slValueName = new TStringList; TStringList* slAllStrings = new TStringList; AnsiString szTemp; __try { Reg->RootKey = HKEY_LOCAL_MACHINE; Reg->OpenKey("\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", FALSE); Reg->GetValueNames(slValueName); for(int i = 0; i < slValueName->Count; i ) { if (Reg->GetDataType(slValueName->Strings[i]) == rdString) { szTemp = Reg->ReadString(slValueName->Strings[i]); // 把結果存在TStringList中 slAllStrings->Add(szTemp); // 把結果秀在Memo1上 Memo1->Lines->Add(szTemp); } } } __finally { slValueName->Free(); slAllStrings->Free(); Reg->Free(); } } |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |