Jump to content

Ams De Regedit Listeleme


relmas

Recommended Posts

arkadaşlar ams de regeditte bir anahtar ve alt anahtarlarını listelemek istiyorum. örneğin

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

anahtarındaki value leri listelesin aynı zamanda alt anahtarları ve bu alt anahtarlara ait value leride listelesin.
edit
bunu yapmak mümkünmüdür. uğraştım ama çözemedim
Link to comment
Share on other sites

yokmu bi yardım ?

[warning][color="#000000"][b]DİKKAT: Flood Yapmak YASAKTIR, Ard Arda İleti Göndermek Yerine [img]http://i46.tinypic.com/289kcyd.jpg[/img] Butonunu Kullanarak İlk İletinizi Düzenleyiniz.[/b][/color][/warning]

Link to comment
Share on other sites

Projeye bir listbox ve bir button koyun ve buttona şu kodları yazın:

tKeys = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion") -- "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion

[codebox]for i in pairs(tKeys) do
ListBox.AddItem("ListBox1", tKeys[i], "")
tKeys2 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i])
if tKeys2 ~= nil then
for x in pairs(tKeys2) do
ListBox.AddItem("ListBox1", "- " .. tKeys2[x], "")
tKeys3 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
if tKeys3 ~= nil then
for y in pairs(tKeys3) do
ListBox.AddItem("ListBox1", "-- " .. tKeys3[y], "")
end
end
end
end
end[/codebox]

Döngüleri çoğaltırsanız tüm regedit listesini bile dökebilirsiniz.

Link to comment
Share on other sites

vay anasını yaw koca tnctr de bi yardım göremedik. neyse ben hallettiğim kadarıyla paylaşıyım

[codebox] anahtar = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion"); sonuc={}; for ara, deger in anahtar do sonuc[ara] = Registry.GetValue(HKEY_LOCAL_MACHINE, "\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\", deger, false); Input.SetText("Input1", Input.GetText("Input1").."\r\n "..sonuc[ara]) end [/codebox]




şimdi burda Registry.GetValueNames(HKEY_LOCAL_MACHINE, "\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion

anahtarı içindeki değerleri okuyup input1 içine yazdırdım ancak benim isteğim bu değerlerin isimlerinide okumak. ayrıca bu anahtarın alt anahtarlarınıda listelemek ordaki değerleri ve değer isimlerinide okumak istiyorum. yardımlarınızı bekliyorum. saygılar



sağolasın KintaRo kardeş. henüz denemedim ama yardım için sağolasın.

Link to comment
Share on other sites

[quote name='KintaRo' date='28 Kasım 2010 - 21:01 ' timestamp='1290978665' post='918558']
Projeye bir listbox ve bir button koyun ve buttona şu kodları yazın:

tKeys = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion") -- "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion

[codebox]for i in pairs(tKeys) do
ListBox.AddItem("ListBox1", tKeys[i], "")
tKeys2 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i])
    if tKeys2 ~= nil then
        for x in pairs(tKeys2) do
        ListBox.AddItem("ListBox1", "- " .. tKeys2[x], "")
        tKeys3 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
            if tKeys3 ~= nil then
                for y in pairs(tKeys3) do
                ListBox.AddItem("ListBox1", "-- " .. tKeys3[y], "")
                end
            end
        end
    end   
end[/codebox]

Döngüleri çoğaltırsanız tüm regedit listesini bile dökebilirsiniz.
[/quote]

sağolasın sonuç verdi. ancak burda ne kadar alt anahtar olduğunu bilmemiz lazım ki ona göre döngüleri çoğaltalım buda pek kullanışlı olmaz heralde. yinede çok sağol üzerinde çalışıyım biraz.







epey uğraştıracağa benziyo çünkü burda sadece anahtar isimlerini listeliyoruz ancak işin içine  anahtarların ve alt anahtarların değerleri ve değer isimleride girince iş iyice karışıyo kafam durdu valla. kintaro kardeş bi el atıversen 

Link to comment
Share on other sites

[quote name='KintaRo' date='28 Kasım 2010 - 21:41 ' timestamp='1290981082' post='918581']
başka türlü yapamazsın ams ile.
[/quote]

kardeş tamam anahtarlar için döngüleri hallettik diyeli m anahtarların değerlerini ve adlarını nasıl listeleyecez. yani işin içine Registry.GetValue ve Registry.GetValueNames girince kafam durdu . onları nasıl listeleyecez

Link to comment
Share on other sites

bundan iyiside şamda kaysı.

[codebox]tKeys = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion") -- "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion
StatusDlg.ShowProgressMeter(false)
StatusDlg.Show()
StatusDlg.SetTitle("Registry kayıtları alınıyor...")
StatusDlg.SetMessage("Liste yükleniyor, lütfen bekleyiniz...")
for i in pairs(tKeys) do
tKeys2 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i])
ListBox.AddItem("ListBox1", tKeys[i], "")
tNames2 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i])
if tNames2 ~= nil then
for z in pairs(tNames2) do
sValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i], tNames2[z], true)
ListBox.AddItem("ListBox1", "|* " .. tNames2[z] .. " >>> " .. sValue, "")
end
end

if tKeys2 ~= nil then
for x in pairs(tKeys2) do
ListBox.AddItem("ListBox1", "|- " .. tKeys2[x], "")
tKeys3 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
tNames3 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
if tNames3 ~= nil then
for w in pairs(tNames3) do
sValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i].. "\\" .. tKeys2[x], tNames3[w], true)
ListBox.AddItem("ListBox1", "|** " .. tNames3[w] .. " >>> " .. sValue, "")
end
end
if tKeys3 ~= nil then
for y in pairs(tKeys3) do
ListBox.AddItem("ListBox1", "|-- " .. tKeys3[y], "")
tNames4 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
if tNames4 ~= nil then
for k in pairs(tNames4) do
sValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i].. "\\" .. tKeys2[x] .. "\\" ..tKeys3[y], tNames4[k], true)
ListBox.AddItem("ListBox1", "|*** " .. tNames4[k] .. " >>> " .. sValue, "")
end
end
end
end
end
end
end

StatusDlg.Hide()
[/codebox]

Link to comment
Share on other sites

[quote name='KintaRo' date='28 Kasım 2010 - 22:33 ' timestamp='1290984194' post='918610']
bundan iyiside şamda kaysı.

[codebox]tKeys = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion") -- "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion
StatusDlg.ShowProgressMeter(false)
StatusDlg.Show()
StatusDlg.SetTitle("Registry kayıtları alınıyor...")
StatusDlg.SetMessage("Liste yükleniyor, lütfen bekleyiniz...")
for i in pairs(tKeys) do
tKeys2 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i])
ListBox.AddItem("ListBox1", tKeys[i], "")
tNames2 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i])
    if tNames2 ~= nil then
        for z in pairs(tNames2) do
        sValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i], tNames2[z], true)
        ListBox.AddItem("ListBox1", "|* " .. tNames2[z] .. " >>> " .. sValue, "")
        end
    end
   
    if tKeys2 ~= nil then
        for x in pairs(tKeys2) do
        ListBox.AddItem("ListBox1", "|- " .. tKeys2[x], "")
        tKeys3 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
        tNames3 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
            if tNames3 ~= nil then
                for w in pairs(tNames3) do
                sValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i].. "\\" .. tKeys2[x], tNames3[w], true)
                ListBox.AddItem("ListBox1", "|** " .. tNames3[w] .. " >>> " .. sValue, "")
                end
            end
            if tKeys3 ~= nil then
                for y in pairs(tKeys3) do
                ListBox.AddItem("ListBox1", "|-- " .. tKeys3[y], "")
                tNames4 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i] .. "\\" .. tKeys2[x])
                    if tNames4 ~= nil then
                        for k in pairs(tNames4) do
                        sValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\" .. tKeys[i].. "\\" .. tKeys2[x] .. "\\"  ..tKeys3[y], tNames4[k], true)
                        ListBox.AddItem("ListBox1", "|*** " .. tNames4[k] .. " >>> " .. sValue, "")
                        end
                    end
                end
            end
        end
    end    
end

StatusDlg.Hide()
[/codebox]
[/quote]



kardeş eline klavyene sağlık . gayet ii çalışıyo kodlar çok sağol. artık bunun üzerinden döngüleri çoğaltmak kalıyo geriye tekrar sağolasın kintaro kardeş.


Link to comment
Share on other sites

malesef olmadı  kodlar sadece en sondaki anahtarın değerini okuyor. diğer anahtarları okuyor ancak değerlerini okumuyor.

ben başlangıç anahtarından itibaren bütün anahtarları ve alt anahtarları değerleriyle birlikte listelesin istiyorum ama malesef işin içinden çıkamıyorum

kodların son hali 

[code]
--------------------------------------------------------------
tKeys = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum")

for a in pairs(tKeys) do
tKeys2 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum".. "\\" .. tKeys[a])
ListBox.AddItem("ListBox1", tKeys[a], "")
tNames2 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a])
if tNames2 ~= nil then
for aa in pairs(tNames2) do
aValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a], tNames2[aa], true)
ListBox.AddItem("ListBox1", "* " .. tNames2[aa] .. " >>> " .. aValue, "")
end
end
--------------------------------------------------------------
if tKeys2 ~= nil then
for b in pairs(tKeys2) do
ListBox.AddItem("ListBox1", "- " .. tKeys2[b], "")
tKeys3 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b])
tNames3 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b])
if tNames3 ~= nil then
for bb in pairs(tNames3) do
bValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a].. "\\" .. tKeys2[b], tNames3[bb], true)
ListBox.AddItem("ListBox1", "** " .. tNames3[bb] .. " >>> " .. bValue, "")
end
end
--------------------------------------------------------------
if tKeys3 ~= nil then
for c in pairs(tKeys3) do
ListBox.AddItem("ListBox1", "-- " .. tKeys3[c], "")
tKeys4 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c])
tNames4 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c])
if tNames4 ~= nil then
for cc in pairs(tNames4) do
cValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a].. "\\" .. tKeys2[b].. "\\" .. tKeys3[c], tNames4[cc], true)
ListBox.AddItem("ListBox1", "*** " .. tNames4[cc] .. " >>> " .. cValue, "")
end
end

--------------------------------------------------------------
if tKeys4 ~= nil then
for d in pairs(tKeys4) do
ListBox.AddItem("ListBox1", "--- " .. tKeys4[d], "")
tKeys5 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum".. "\\" .. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d])
tNames5 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d])
if tNames5 ~= nil then
for dd in pairs(tNames5) do
dValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a].. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d], tNames5[dd], true)
ListBox.AddItem("ListBox1", "**** " .. tNames5[dd] .. " >>> " .. dValue, "")
end
end

--------------------------------------------------------------

if tKeys5 ~= nil then
for e in pairs(tKeys5) do
ListBox.AddItem("ListBox1", "---- " .. tKeys5[e], "")
tKeys6 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d].. "\\"..tKeys5[e])
tNames6 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d].. "\\"..tKeys5[e])
if tNames6 ~= nil then
for ee in pairs(tNames6) do
eValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a].. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d].. "\\"..tKeys5[e], tNames6[ee], true)
ListBox.AddItem("ListBox1", "***** " .. tNames6[ee] .. " >>> " .. eValue, "")
end
end

--------------------------------------------------------------
if tKeys6 ~= nil then
for f in pairs(tKeys6) do
ListBox.AddItem("ListBox1", "---- " .. tKeys6[f], "")
tKey7 = Registry.GetKeyNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum".. "\\" .. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d].. "\\"..tKeys5[e].."\\".. tKeys6[f])
tNames7 = Registry.GetValueNames(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a] .. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d].. "\\"..tKeys5[e].."\\".. tKeys6[f])
if tNames7 ~= nil then
for ff in pairs(tNames7) do
fValue = Registry.GetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\ControlSet001\\Enum" .. "\\".. tKeys[a].. "\\" .. tKeys2[b].. "\\" .. tKeys3[c].. "\\".. tKeys4[d].. "\\"..tKeys5[e].."\\".. tKeys6[f], tNames7[ff], true)
ListBox.AddItem("ListBox1", "***** " .. tNames7[ff] .. " >>> " .. fValue, "")
end
end

--------------------------------------------------------------

end
end
end
end
end
end
end
end
end
end
end




[/code]










Link to comment
Share on other sites

[quote name='KintaRo' date='29 Kasım 2010 - 07:48 ' timestamp='1291017483' post='918691']
benim verdigim kodda tüm keyleri value leri ve value karşılıklarını okuyordu ve yazdırıyordu zaten.
[/quote]




kardeş senin verdiğin kod  bütün anahtarları listeliyor orda bi sorun yok ancak iş değerleri okumaya gelince sadece en son anahtarın içinden birinin değerini okuyor


ss veriyim

[img]http://img405.imageshack.us/img405/4778/regnm.jpg[/img]

Link to comment
Share on other sites

acaba bu değerler içinde sadece bir değer okunabilirmi  mesela DeviceDesc değerlerini okusun bütün anahtarlardaki diğer değerleri pas geçsin , yapılabilirmi bilmiyorum. 

Link to comment
Share on other sites

[quote name='KintaRo' date='29 Kasım 2010 - 13:24 ' timestamp='1291037669' post='918786']
yapılır yapılır eve geçince uğraşayım bi, hırs yaptım iyice :)
[/quote]

dört gözle bekliyorum kardeş bende 3 gündür uğraşıyom ama  kod satırları çoğaldıkça işlerde kafamda karşıyo :)

Link to comment
Share on other sites

aslında ben ne yapmak istediğimi tam anlatıyım.
bir pc donanım programı tasarlıyorum.

aşağıda örneğin indirilebileceği linki verdim.
sorunum şu luacom kullanarak donanımlar hakkında bilgi alabiliyorum ancak her seferinde bir donanım veriyor. örneğin sistemimizde iki tane ayrı hard disk olsun bunları sorgularken program yalnızca bir tanesini veriyor. ben o nedenle regeditten okumayı düşünmüştüm ama o şekilde daha zor görünüyor. yardımlarınızı bekliyorum





[code]http://hotfile.com/dl/85784407/1be0ff1/pcbilgi.apz.html[/code]






yardımlarınızı bekliyorum ams uzmanları

Link to comment
Share on other sites

anakart özelliklerini listeleyen lua kodu

[code]


cs = luacom.GetObject("winmgmts:{impersonationLevel=impersonate}"):InstancesOf ("Win32_BaseBoard")

cs_en = luacom.GetEnumerator(cs)
Item = cs_en:Next()

Input.SetText("Input1",
" Üretici : "..Item:Manufacturer() ..
"\r\n İsim : "..Item:Name()..
"\r\n Üretim İsmi : "..Item:Product() ..
"\r\n Seri No : "..Item:SerialNumber() ..
"\r\n Tag : "..Item:Tag() ..
"\r\n Version : "..Item:Version()
)

[/code]




ses kartının özelliklerini listeyen lua kodu

[code]
cs = luacom.GetObject("winmgmts:{impersonationLevel=impersonate}"):InstancesOf ("Win32_SoundDevice")

cs_en = luacom.GetEnumerator(cs)
Item = cs_en:Next()

Input.SetText("Input1",
" Tanımlama : "..Item:Description()..
"\r\n Üretici : "..Item:Manufacturer() ..
"\r\n İsim : "..Item:Name() ..
"\r\n Üretim İsmi : "..Item:ProductName() ..
"\r\n Durum : "..Item:Status()
)

[/code]




sorunum şu luacom kullanarak donanımlar hakkında bilgi alabiliyorum ancak her seferinde bir donanım veriyor. örneğin sistemimizde iki tane ayrı hard disk olsun bunları sorgularken program yalnızca bir tanesini veriyor. ben o nedenle regeditten okumayı düşünmüştüm ama o şekilde daha zor görünüyor. yardımlarınızı bekliyorum

Link to comment
Share on other sites

[quote name='KintaRo' date='30 Kasım 2010 - 17:00 ' timestamp='1291137036' post='919411']
burda yaptığım çalışma ile birleştir, o zaman tam istediğin olur sanırım ha?
[/quote]




kardeş senin çalışmaya benzer bi çalışmayı bikaç yıl önce yapmıştım 


burdan[code]http://www.tnctr.com/topic/108500-pc-info-v22-yayynda/page__p__600600__fromsearch__1#entry600600[/code]

ancak ben daha gelişmiş bir versiyonunu yapmaya çalışıyorum. 

senin kodlarıda inceledim ama benimkiyle aynı. yani kaynaksürücünün ismini serialini veriyo.

benim yapmak istediğim everest, aida gibi bi program yapmak. 

yinede yardımların için sağol

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...