lostyazilim
tr.link

ÇÖZÜLDÜ C# WebBrowser kaynak kod okuma hatası

6 Mesajlar 1.256 Okunma
acebozum
tr.link

ictaysi ictaysi taysiweb.com Kullanıcı
  • Üyelik 05.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Mezun
  • Konum Balıkesir
  • Ad Soyad İ** C**
  • Mesajlar 80
  • Beğeniler 20 / 10
  • Ticaret 1, (%100)
Merhaba, bir müşterim programımı kullanarak web sitemden text verilerini çekemiyor. Detaylandırayım.

Programımda login sistemi var. İşleyişi şöyle: öncelikle programı indiren kullanıcı açtığında login penceresiyle karşılaşır. Web siteme üye olduğu kullanıcı adı, şifre ve program tarafından oluşturulan hwid ile login olur. Eğer hwid kayıtlı değilse kayıt edilir. Eğer hwid kayıtlıysa kullanıcı adına sorgu yapılarak hwid değerinin veritabanındaki değer ile uyumlu olup olmadığına bakılır. Uyumlu değilse programa tek bir bilgisayardan giriş yapabilirsiniz uyarısı alır. Uyumluysa giriş yapılır ve sonraki adımda kullanıcıya özel veriler veritabanından çekilir. (Bütün bu işlemler forma gizlenmiş bir webbrowser sayesinde yapılır. Giriş yapmak için webbrowser üzerinden açılan php sayfasına kullanıcı adı şifre ve hwid değerleri post edilir. Eğer doğruysa veri.php sayfası açılır ve bu sayfanın kaynak kodu okutularak c# programına çekilir ve kaynak kodundaki ilgili veriler substring methodu ile program içerisindeki gerekli değişkenlere atanır.)

Fakat bir müşterimde karşılaştığım sorun şu şekilde; Müşterim programa gerekli login bilgilerini yazarak giriş yapıyor. Hwid değeri veritabanına yazılıyor. Buraya kadar herhangi bir erişim problemi yok. Fakat webbrowserden kaynak çekilme çalışıldığında program hata ile karşılaşıyor. Yani program webbrowserin kaynağını okuyamıyor. Dolayısıyla verileri de çekemiyor ve programa giriş sağlayamıyor. Programın 30 kullanıcısı var ve hiçbirinde bu problem yaşanmıyor.


Çözüm için denediklerim:

1- Güvenlik duvarı, antivirüs programı kapatıldı.
2- Internet explorer denetimleri en alt seviyeye indirildi.
3- Bilgisayarda reklam virüsleri bulunmaktaydı. Antimalwarebytes ile tarama yapıldığında 190 tane virüs ile karşılaşıldı ve hepsi temizlendi.
4- Net framework yeniden yüklendi.
5- Host dosyası temizlendi.
6- Veri çekilmek istenen dosyaya chrome tarayıcı aracılığıyla erişildi ve veriler chrome üzerinden sorunsuz okundu.

Bütün bunlara rağmen webbrowserin veri.php'den kaynağı çekip işleme sorunu giderilemedi.


Bu problemi giderebilmem için çözüm öneriliriniz var mıdır?

ÇÖZÜLDÜ

Programda kaynak kodlardan veri ayıklamak için indexof ve substring methodunu kullanıyordum. Kodlardan istediğim veriyi
tagları içinden almak için indexof
textini arıyordu. Ama webbrowserin kaynak kodlarda gözüken hali
değil
olduğu için hata veriyordu. Bende çözüm için webbrowseri kaldırdım ve webclient'e geçtim.
 

 

wmaraci
reklam

Blacksheep Blacksheep .NET Developer Kullanıcı
  • Üyelik 20.07.2014
  • Yaş/Cinsiyet 28 / E
  • Meslek Webmaster
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 2074
  • Beğeniler 60 / 532
  • Ticaret 10, (%100)
Proxy Kullanabilirsiniz
 

 

Fizello - Inspired by Colors

ictaysi ictaysi taysiweb.com Kullanıcı
  • Üyelik 05.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Mezun
  • Konum Balıkesir
  • Ad Soyad İ** C**
  • Mesajlar 80
  • Beğeniler 20 / 10
  • Ticaret 1, (%100)

Blacksheep adlı üyeden alıntı

Proxy Kullanabilirsiniz


Proxy kullanmayı deneyecektim fakat ilk girişte hwid değeri webbrowser aracılığıyla veritabanına yazılıyor. Bu da demek oluyor ki program ile web sitem arasında bağlantı kuruluyor.
 

 

ictaysi ictaysi taysiweb.com Kullanıcı
  • Üyelik 05.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Mezun
  • Konum Balıkesir
  • Ad Soyad İ** C**
  • Mesajlar 80
  • Beğeniler 20 / 10
  • Ticaret 1, (%100)
Sorun anlaşıldı kaynak koddaki divler DIV şeklinde geldiği için substring methoduna uymuyor. Bu büyük DIV lerin küçük çekilmesini nasıl sağlayabilirim?
 

 

wmaraci
wmaraci

Decimas Decimas WM Aracı Kullanıcı
  • Üyelik 19.04.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek Developer
  • Konum İstanbul Avrupa
  • Ad Soyad E** E**
  • Mesajlar 820
  • Beğeniler 1 / 302
  • Ticaret 1, (%100)
Hata mesajı?
 

 

no time for caution

ictaysi ictaysi taysiweb.com Kullanıcı
  • Üyelik 05.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Mezun
  • Konum Balıkesir
  • Ad Soyad İ** C**
  • Mesajlar 80
  • Beğeniler 20 / 10
  • Ticaret 1, (%100)


Programda kaynak kodlardan veri ayıklamak için indexof ve substring methodunu kullanıyordum. Kodlardan istediğim veriyi
tagları içinden almak için indexof
textini arıyordu. Ama webbrowserin kaynak kodlarda gözüken hali
değil
olduğu için hata veriyordu. Bende çözüm için webbrowseri kaldırdım ve webclient'e geçtim.