SAHINNNNNN Posted September 6, 2011 Share Posted September 6, 2011 (edited) Host dosyasına veri ekleyen ufak bir program yaptım arkadaşlar. Daha önce "Sitenin IP Adresini Bulmak" konu başlığında ip numarasını bulmayı sormuştum bu konuda yardım eden ve olayı halleden KintaRo'ya tekrardan teşekkür ediyorum. Onun verdiği kodları projeye uyarladım. Denemelerimi text dosyası üzerinde yaptım. İstediğim metin belgesine verileri ekletebildim. Hiçbir sorun yoktu. Lakin bu işlemi host dosyasına yapmak istediğimde olmadı. Host dosyasına verileri ekletemedim. Programın mantığı şu şekilde. Programda iki bölüm var. Otomatik giriş kısmında sitenin adını yazıyoruz örneğin "tnctr.com" program sitenin ip adresini buluyor. Daha sonra host dosyasına iki satır halinde; 188.72.250.91 tnctr.com 188.72.250.91 www.tnctr.com olarak ekliyor. El ile giriş kısmında da aynı mantık işliyor yalnız ip adresini de el ile girmiş oluyoruz. Programı hazırladım. İstediğim metin belgesine bu verileri ekletebiliyorum fakat host dosyasına ekletemedim. Sorun nedir acaba inceleyip yardımcı olursanız çok sevinirim. Program açılışta dosyayı kontrol ediyor ve salt okunur ise dosyayı yazılabilir hale getiriyor. Fakat host dosyasına veri eklemiyor. Dediğim gibi aynı yere bir metin belgesi oluşturup onun üzerinde denediğimde program tam istediğim gibi çalışıyor. Acaba kodlarda bir hata mı yapıyorum? Yardımcı olacak arkadaşlara, ustalara şimdiden teşekkür ederim. Proje dosyası: [code]http://www.mediafire.com/?rhl52d52f85rd56[/code] Edited September 6, 2011 by SAHINNNNNN Quote Link to comment Share on other sites More sharing options...
DivaneTR Posted September 6, 2011 Share Posted September 6, 2011 [b]KintaRo'nun Yaptığı Host Editör'ü İncele :[/b] [code]http://www.tnctr.com/topic/158361-tnctr-hosts-editor/[/code] Quote Link to comment Share on other sites More sharing options...
SAHINNNNNN Posted September 6, 2011 Author Share Posted September 6, 2011 [quote name='Baba_' date='06 September 2011 - 19:04 ' timestamp='1315335843' post='1075282'] [b]KintaRo'nun Yaptığı Host Editör'ü İncele :[/b] [code]http://www.tnctr.com/topic/158361-tnctr-hosts-editor/[/code] [/quote] Acaba benim host dosyasında mı sorun var? Çünkü KintaRo'nun yaptığı host editör de benim host dosyasını değiştirmiyor Quote Link to comment Share on other sites More sharing options...
KintaRo Posted September 6, 2011 Share Posted September 6, 2011 windows 7 de deniyorsan bu şekilde davranması muhtemel. project>settings menüsünden require administrator seçeneğini seçip deneyebilirsin: [img]http://i.imgur.com/8dUfp.png[/img] Quote Link to comment Share on other sites More sharing options...
SAHINNNNNN Posted September 7, 2011 Author Share Posted September 7, 2011 [quote name='KintaRo' date='06 September 2011 - 19:53 ' timestamp='1315338799' post='1075320'] windows 7 de deniyorsan bu şekilde davranması muhtemel. project>settings menüsünden require administrator seçeneğini seçip deneyebilirsin: [img]http://i.imgur.com/8dUfp.png[/img] [/quote] Maalesef sonuç yine aynı, host dosyasını değiştirmiyor. Başka bir dosya üzerinde çalışıyor ama host dosyasını değiştirmiyor. Ne garip bir host dosyam varmış ki olmadı gitti. Oysa ki çalışsa işlerimi oldukça kolaylaştıracaktı. Quote Link to comment Share on other sites More sharing options...
MostWanted Posted September 7, 2011 Share Posted September 7, 2011 Sorun sende olabilir ben denedim güzel çalışıyor fekat www.mediafire.com yazdığımda mesela host dosyasına www.www.mediafire.com da yazıyor bununla ilgili bi kontrol koymalısın.Kolay gelsin. Quote Link to comment Share on other sites More sharing options...
prototype Posted September 7, 2011 Share Posted September 7, 2011 Program üzerinde biraz değişiklik yaptım. Değişiklikler sadece "EL İLE GİRİŞ" kısmında oldu bunlar; Önceden el ile ip ve site girince şöyle kaydediyordu; google.com 127.0.0.1 www.google.com 127.0.0.1 ancak bu hatalı olduğu için site üzerinde işlem yapmıyordu. Üstünde oynama ile el ile giriş yapınca otomatik olarak; 127.0.0.1 google.com 127.0.0.1 www.google.com Artık böyle giriyor ve kabul ediyor site üzerinde işlem yapıyor. Birde söylemek istediğim bişi var Otomatik Giriş Yapınca "temp.html" dosyasındaki kodları hosts klasörüne atıyor ve girişi kabul etmiyor bunu düzeltirseniz iyi olur. [quote name='MostWanted' date='07 September 2011 - 18:05 ' timestamp='1315411553' post='1075716'] Sorun sende olabilir ben denedim güzel çalışıyor fekat www.mediafire.com yazdığımda mesela host dosyasına www.www.mediafire.com da yazıyor bununla ilgili bi kontrol koymalısın.Kolay gelsin. [/quote] Sevgili MostWanted url eklerken www. ekini otomatik olarak attığı için girişleri www. kullanmadan yani google.com olarak yazınız. [b]Host v2 İndir[/b] http://www.fileden.com/files/2011/1/25/3066694//hostv2.rar Umarım işine yaramıştır. Quote Link to comment Share on other sites More sharing options...
MostWanted Posted September 7, 2011 Share Posted September 7, 2011 Sevgili MostWanted url eklerken www. ekini otomatik olarak attığı için girişleri www. kullanmadan yani google.com olarak yazınız. Programcı kullanıcıları buna zorlamamalı.Adam alır http:// bilmemne.com yazar sen bu ihtimallere karşı önlemini almalısın yoksa bende www. kullanmamayı biliyorum.Bu sadece kullanıcı memnuniyeti açısından sana bir tavsiyemdi. Quote Link to comment Share on other sites More sharing options...
SAHINNNNNN Posted September 8, 2011 Author Share Posted September 8, 2011 (edited) Bilgisayara format attım ve sorun düzeldi artık host dosyasına veri ekleyebiliyor. prototype uyku sersemi kodları yanlış koymuşum dediğin hatayı ben de farkettim düzelttim. Ip adresini sona ekliyordu. Otomatik giriş kısmında ise bir sorun çıkmadı bende, sorunsuz bir şekilde yazıyor. MostWanted programı daha çok kendi ihtiyacım için ve öğrenme amacıyla yaptığımdan adresi google.com şeklinde giriyorum zaten. Ama öneriniz üzerine adres kısmına www yazıldığı zaman uyarı verecek şekilde ayarladım. Kullanıcıya www eklemeden yazması gerektiğini belirten bir dialog message çıkacak. Fakat otomatik bir düzeltme yapmayacak. Yani kullanıcı adresin başına www eklerse yada http:// vb. şeyler eklerse bunları gerekli hale çevirmeyecek. Biraz daha geliştirerek KintaRo'nun programındaki gibi host dosyasının tüm içeriğini gösteren bir seçenek de eklemeyi düşünüyorum. Onu yaparsam o zaman kullanıcının yazdığı adresi düzeltme seçeneği de eklemeye çalışacağım yapabildiğim kadarıyla. Edited September 8, 2011 by SAHINNNNNN Quote Link to comment Share on other sites More sharing options...
Bitmap Posted September 8, 2011 Share Posted September 8, 2011 (edited) http ve www nun kaldırılması bu şekil yapılabilir.[b] [/b][color="#000000"]Prototype'nin verdiği projede ; [/color][b][color="#8B0000"] Host Dosyasına Ekle Butonu:[/color][/b] [codebox]local sUrl = Input.GetText("Input1") if sUrl ~= "" then sDuzelt = String.Replace(sUrl, "http://", "", false); sDuzelts = String.Replace(sDuzelt, "https://", "", false); sTemiz = String.Replace(sDuzelts, "www.", "", false); HTTP.Download("http://who.is/whois/" .. sTemiz, _TempFolder .. "\\temp.html", MODE_TEXT, 20, 80, nil, nil, nil) local sText = TextFile.ReadToString(_TempFolder .. "\\temp.html") local nAra1 = String.Find(sText, "IP:", 1, true) local nAra2 = String.Find(sText, ">", nAra1, true) local nAra3 = String.Find(sText, "<", nAra2, true) local sKopyala = String.Mid(sText, nAra2+1, (nAra3-nAra2)-1) Dialog.TimedMessage("Bulunan IP", sKopyala .. "\r\nLütfen bekleyin...", 2000, MB_ICONINFORMATION); TextFile.WriteFromString(_SystemFolder .. "\\drivers\\etc\\hosts", "\r\n" ..sKopyala.." "..sTemiz, true); TextFile.WriteFromString(_SystemFolder .. "\\drivers\\etc\\hosts", "\r\n" ..sKopyala.." www." .. sTemiz, true); Dialog.TimedMessage("Başarılı", "Veriler host dosyasına eklendi.", 3000, MB_ICONINFORMATION); Input.SetText("Input1", "") else Dialog.Message("Uyarı", "Lütfen tüm boşlukları doldurun", MB_OK, MB_ICONSTOP, MB_DEFBUTTON1); end[/codebox] Basit Yoldan String.Replace Fonksiyonunun 2-3 defa Kullanarak Düzeltme Yapılabilir. yada [font="Palatino Linotype"][b][color="#0000FF"]for[/color][/b][/font] Döngüsü ile [b][color="#8B0000"]Host Dosyasına Ekle Butonu:[/color][/b] [codebox] local sUrl = Input.GetText("Input1") if sUrl ~= "" then tDuzelt = {"www.","http://","ftp://","https://"} for i in pairs(tDuzelt) do sDuzelt = String.Replace(sUrl,tDuzelt[i], "", false); sUrl = sDuzelt end HTTP.Download("http://who.is/whois/" .. sUrl, _TempFolder .. "\\temp.html", MODE_TEXT, 20, 80, nil, nil, nil) local sText = TextFile.ReadToString(_TempFolder .. "\\temp.html") local nAra1 = String.Find(sText, "IP:", 1, true) local nAra2 = String.Find(sText, ">", nAra1, true) local nAra3 = String.Find(sText, "<", nAra2, true) local sKopyala = String.Mid(sText, nAra2+1, (nAra3-nAra2)-1) Dialog.TimedMessage("Bulunan IP", sKopyala .. "\r\nLütfen bekleyin...", 2000, MB_ICONINFORMATION); TextFile.WriteFromString(_SystemFolder .. "\\drivers\\etc\\hosts", "\r\n" ..sKopyala.." "..sUrl, true); TextFile.WriteFromString(_SystemFolder .. "\\drivers\\etc\\hosts", "\r\n" ..sKopyala.." www." .. sUrl, true); Dialog.TimedMessage("Başarılı", "Veriler host dosyasına eklendi.", 3000, MB_ICONINFORMATION); Input.SetText("Input1", "") else Dialog.Message("Uyarı", "Lütfen tüm boşlukları doldurun", MB_OK, MB_ICONSTOP, MB_DEFBUTTON1); end [/codebox] Şeklinde Yapılabilir... Edited September 8, 2011 by byvistakazim Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.