üstad c#'da pek tecrübeli değilsen zor gibi... ama birkaç başlangıç noktası önerebilirim. Öncelikle eğer bir desktop uygulaması içerisinde gömülü browser kullanmayı düşünürsen işin daha kolay olabilir. Cefsharp diye bir paket var. bu sana chrome engine'ı desktop uygulama içerisinde kullanmana olanak veriyor. bildiğin browser yani. bu araç sayesinde web sayfası yüklendikten sonra mouse event'lerini yakalayabilir, javascript veya html kodlarını "inject" edebilir ve işini görebilirsin. Ben bir borsa uygulaması için yapmıştım. gayet kullanışlı birşey. cefsharp ile sayfadaki tüm scriptleri ve html css kodlarını, ne varsa alabilir, okuyabilir, değiştirebilirsin. bu konuda kulaylık olması açıcından da HTML Agilitypack denen paketi kullanmanı önerebilirim. bu paketle div'leri, textbozları id, name, class gibi özellikleriyle ayrıştırabilir, içiçe geçmiş "tag"lara eriebilir, içeriklerini okuyabilir veya değiştirebilirsin.

eğer diyorsan ki ben bildiğin chrome'u kullanacağım ve arka planda çalışan tamamen bağımsız bir desktop uygulaması veya servis yapılan işlemleri kaydedecek... o daha zor. chrome extension'ı yazarak birtakım bilgileri yakalabilirsin ama bu bilgileri chrome dışına aktarmakla ilgili güvenlik kısıtlamaları var. Ben çok uzun süredir extension yazmadım ama hatırladığım kadarı ile yeni extension standardı böyle şeylere olnak veriyordu. bu durumda yazmak istediklerini mesela bir text dosyaya yazabilir (eğer chrome izin veriyorsa ki bence vermemesi daha iyi olur o dosyayı da c# ile monitor ederek okuyabilirsin.Daha sonra ne yapacağın sana kalmış birşey.

Birde selenium web driver denen birşey var ki ben hiç sevmemiştim. O da chrome engine ile dış dünya arasında bağlantı kurmak için bir köprü görevi görüyor.

Sorun şu ki chrome engine'de birtakım haberleşme engellemeleri var. Eğer olmasa herhangi bir malware, pis bir extension senin neyin var neyin yok alıp istediğini yapar. O sebeple bir browser'ı izlemek o kadar kolay birşey değil. Kurcalamadan yapmak istediğine uygun metodu bulman biraz zor.

pdften seçili metni okumak için yukarıdaki gibi chrome engine'e kendisini tam anlmıyla monte eden birşeylere ihtiyacın var. Ama mesela eğer seçilip "copy" edilen metni algılamak için hiçbirşeye ihtiyacın yok. ikisi farklı şeyler. copy edilen metni veya resmi veya başka birşeyi algılamak için c#'da clipboard'u sürekli monitor eden bir program yazabilirsin, o kolay olur. Tekrarlayacağım ama... bit textbox'a (ki bu demek ki herhangi bir html elemnet'ine) tıklandığını anlamak ve o tıklanan elementin içerisini okumak için veya pdf olsun olmasın herhangi bir "seçme" işlemini algılamak için daha ileri düzeyde şeylere ihtiyacın olur.