PDA

Tam Sürümünü Görmek İçin : regedit teki sabit olmayan bazı anahtar hakkında


DotNetKid
28/11/2006, 10:48
regedit teki, sisteme ait bazı anahtarlar, her bilgisayarda farklılık gösteriyor. kendi yazdıgımız bir exe ile ilgili anahtarlardaki verileri dinamik olarak kontrol etmek için anahtarların adlarını bilmem gerekiyor. fakat dediğim gibi farklı farklı oldukları için bilemiyoruz. örneğin;

localMachine\system\controlSet001\Services\Tcpip\P arameters\Interfaces\{2D552F9A-CF25471A-964C-17925E6BA071}

sondaki anahtar benim sistemde kayıtlı.. baska sistemlerde baska isimlerde bulunuyor. bu anahtarın içindeki DefaultGateWay değerine ulaşmam gerekiyor. fakat anahtarlar farklı oldukları için ulaşamıyorum. bunun başka bir yolu var mı


yastasinane
28/11/2006, 11:29
soyle yapabilirsin, sondan bir onceki anahtarin tum elemanlarini buldurabilirsin.
yani yukarda verdigin ornekte Interfaces 'in alt anahtarlarinin tumunu buldurabilirsin. regedit temizleyici programlarin mantigi yani, onlarda sonucta nerde hangi anahtar acilmis bilmiyor ama hepsini buldurup bakiyor. kod nedir dersen, javascriptteki form1.elements.length koduna benzer kod calistirman lazim.

yastasinane
28/11/2006, 12:00
hangi dili kullaniyorsun bilmiyorum ama ben c++ kullaniyorum, c++ ile yukardaki mesajda anlattigimi soyle yaptim;

TRegistry *regis = new TRegistry;
TStringList *liste = new TStringList();

int i;

Memo1->Clear();

regis->RootKey = HKEY_LOCAL_MACHINE;
regis->OpenKey("SYSTEM\\ControlSet001\\Services\\Tcpip\\Parameters \\Interfaces",false);
regis->GetKeyNames(liste);

for(i = 0; i<liste->Count; i++)
{
Memo1->Lines->Add(liste->Strings[i]);
}

liste->Free();
regis->CloseKey();
regis->Free();

yalniz sende sadece bir anahtar mi var onu bilmiyorum ama bende 8 anahtar var.

DotNetKid
30/11/2006, 12:45
kac anahtar oldugunun bir önemi yok.

anahtarları listelemek kolay fakat istediğim değerlerin hangi anahtarın içinde yer aldıgını nasıl bilebilirim..

mesela bende interfaces içinde 3 anahtar var ve istediğim değerler 2D54.. ile başlayan anahtar içinde yer alıyor.. baska sistemlerde baska anahtarlar içinde.. o ilgili anahtarı baska bir yerde bulabilmem gerekli..

yastasinane
30/11/2006, 14:47
peki hangi degeri ariyorsun onu soylersen ayirt edici birsey var mi bakabiliriz.
hangi degeri ariyorsun yada ne ariyorsun ?

DotNetKid
03/12/2006, 17:28
yukarıda dediğim gibi DefaultGateWay ve NameServer değerlerini arıyorum.. acıkcası:

tcp/ip özellikleri penceresinde varsayılan ağ gecidi ve dns sunucu adreslerini giriyoruz ya, onun saklandıgı registery değerleri..

Sabahi
05/12/2006, 19:36
Eger sadece degerler onemli ise program icinden ipconfig > c:\temp\out.txt gibi bir komut ile dump yapip text filedan okumak nasil olur?