請問在win7上讀取reg的com port資料 |
缺席
|
vk8051
一般會員 發表:22 回覆:33 積分:21 註冊:2007-08-10 發送簡訊給我 |
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{ // [HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM] // "\\Device\\PTSerial0"="COM3" // "\\Device\\Serial0"="COM1" TStringList *tmp= new TStringList; TRegistry *reg= new TRegistry; StringGrid1->Cells[0][0]="COM Port"; StringGrid1->Cells[1][0]="Physical Location"; StringGrid1->Cells[2][0]="In Use"; reg->RootKey = HKEY_LOCAL_MACHINE; if( reg->OpenKey("\\HARDWARE\\DEVICEMAP\\SERIALCOMM",false) ) { reg->GetValueNames(tmp); Label1->Caption=String(tmp->Count) " COM Ports"; for(int i=0; i { AnsiString ascom=reg->ReadString(tmp->Strings[i]); int icom=ascom.SubString(4,1).ToIntDef(0); if(icom>0 && icom<=255) { StringGrid1->Cells[0][icom]=ascom; StringGrid1->Cells[1][icom]=tmp->Strings[i]; } } } else { ShowMessage("Open NG!!"); } reg->CloseKey(); delete reg; delete tmp; } //--------------------------------------------------------------------------- 這是在站內找到的範例,但是我在我的電腦上試都沒辦法reg->OpenKey("\\HARDWARE\\DEVICEMAP\\SERIALCOMM",false) 成功,所以請問是win7的關係嗎,還是我那邊有寫錯.. 謝謝
------
vincent |
macroz
一般會員 發表:0 回覆:1 積分:0 註冊:2003-02-20 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |