• 26-10-2016, 23:32:34
    #1
    Merhaba arkadaşlar c# ile modeme reset atma programı yapmaya çalışıyorum. herşeyi halledecek bilgiye sahibim fakat aşağıdaki gibi bir giriş ekranı var. c# ile giriş panelinde bulunan Kullanıcı adı ve şifre kısmını nasıl yaptırtabilirim, ayrıca yazdıktan sonra nasıl click yapabilirim.

    Not: Kaynak kodları görüntülenmiyor. Panelin tam adını bilemediğimden araştırmaya yapamadım. (Çok klasik bir panel)

  • 27-10-2016, 00:44:53
    #2
    cagirdigin url ye yerlestireceksin sadece..

    postman gibi bir eklentiyle kullanici adi ve sifreni gir, sana url yi gosterir. Get mi post mu gorursun ve parametrelerin isimlerini ogrenirsin o sekilde yapabilirsin.

    Diger bir yol da credential ekleyebilirsin (nette cok ornek bulabilirsin),

    sahsi olarak tavsiye ettigim ve bu iste gercekten kullanilmasi gereken telnet dir. Ancak windows un belli bir surumunden sonra telnet gelmiyor, o yuzden bunun .net icin olan wrapper larini kullanarak modemine rahatca erisebilirsin ve menuler arasinda gezebilirsin.

    arastirman gereken seyler icin gerekli isimleri biliyorsun artik bundan sonrasi icin google ;
    )
    kolay gelsin.
  • 27-10-2016, 19:22:23
    #3
    Ertan hocam şu anda amacım giriş sayfasını geçmek, giriş sayfasını geçtikten sonrasını yapabilirim.

    buradaki giriş sayfasının sorunu şu: bir input ve submit olmadığından Kullanıcı Adı ve Şifreyi otomatik yazdıramıyorum. Programda web browser ile modem adresini yazınca şöyle bir ekran çıkıyor:



    Normal web sitelerindeki kullanıcı adı ve parola sayfalarına direk girebilirim fakat bu giriş panelini ilk defa yaptığım için ne yapacağımı bilemedim.

    webBrowser1.Navigate("http://192.168.1.1");
                        string kadi = "admin";
                        string sifre = "1234";
                        while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
                        {
                            Application.DoEvents(); 
                        }
                        HtmlElement user = webBrowser1.Document.GetElementById("username");
                        user.SetAttribute("value", kadi);
                        HtmlElement pass = webBrowser1.Document.GetElementById("password");
                        pass.SetAttribute("value", sifre);
                        webBrowser1.Document.Forms[0].InvokeMember("submit");
    bu koda ne yapılabilir ?
  • 27-10-2016, 19:38:11
    #4
    hocam soyledim ya o sekilde yapamazsin, kullanici adi ve sifresini parametre olarak eklemen lazim. O yuzden postman eklentisi kullanarak linki ogrenebilirdin ve ona gore parametre gecirirdin linke..

    neyse bak burada bir ornek var

    http://stackoverflow.com/a/22473708

    bunu kendine gore duzenlersen calisir. burada headers a eklemis gordugun gibi.. Diger turlu gecemezsin, bahsettigin sey DOM diye gecer. Ilgili nesnelerin idsini/ismini vs bulup o sekilde kontrol ediyorsun ama burada olay farkli.

    Verdigim linkteki kodu kullanarak giris yapabilirsin ama sonuc olarak bir html output alacaksin. Bunu webbrowser da gostererek islem yapabilirsin ya da yine benzer mantikla parametreler ekleyerek gideceksin.