Jump to content

Host Programı Sorun Nerede?


SAHINNNNNN
 Share

Recommended Posts

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 by SAHINNNNNN
Link to comment
Share on other sites

[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 :(

Link to comment
Share on other sites

[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ı.

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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 by SAHINNNNNN
Link to comment
Share on other sites

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 by byvistakazim
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...