Son kullanma tarihi geçmiş, bayatlamış bir tarayıcı kullanıyorsanız, Mercedes kullanmak yerine tosbağaya binmek gibi... Web sitelerini düzgün görüntüleyemiyorsanız eh, bi' zahmet tarayıcınızı güncelleyiniz. Modern Web standartlarını karşılayan bir tarayıcı alternatifine göz atın.
Merhaba dostlar, C#'ta bir uygulama yapıyorum. Bu uygulama başka bir uygulamadan veri alacak bunun için o programın çalışmasını tespit etmem gerekiyor, yani şöyle; eğer o program çalışıyorsa şunlar şunlar yapılacak. Bunu nasıl koda dökebilirim?
HTTP üzerinden konuşturabilirsiniz uygulamalarınızı. Böylece uygulamaların farklı bilgisayarlar/sunucular üzerinde çalışmasını sağlayabilirsiniz. Umarım bunu da Teamviewer üzerinden yapmamızı istemezsiniz.
HTTP üzerinden konuşturabilirsiniz uygulamalarınızı. Böylece uygulamaların farklı bilgisayarlar/sunucular üzerinde çalışmasını sağlayabilirsiniz. Umarım bunu da Teamviewer üzerinden yapmamızı istemezsiniz.
Aslında sorum önerdiğiniz çözüme göre daha basit çünkü yazdığım programda tespit edilecek program da aynı bilgisayarda. Yani program yerelde çalışacak ve tespit edilecek, program da yerelde çalışacak.
2 uygulama arasinda veri transferini nasil saglayacaksan ( biri digerinden veri alacak demissin ) , birisi digerinin calisip calismadigini da ayni metod ile anlayabilmeli.
Iletisim saglanamiyorsa calismiyordur.
Ya da birisi ile spesifik bir lokasyonda lock file olustur. Eger uygulama calisiyorsa, dosya vardir ve lock'lidir. Ama zaten aralarinda iletisim kuracaklarsa boyle taklalara gerek olmamali.
İlginiz için cidden teşekkür ederim. Üzerinde çalıştığım yazılımda "çalıştırılan programı tekrardan kapatabilmem için programa ait bir bilgi - kimlik yakalamam ve onu kullanabilmem" gerekiyordu.
Ne yalan söyleyeyim 10 saattir sizlerin de paylaştığı komutları deniyorum, test ediyorum.
Process.GetProcessesByName komutu kapatmaya yarıyor ancak çalıştırılan programın kimliğini de bir şekilde bulup o ("") 2 parantez arasına sokabilmek gerekiyor anladığım kadarıyla.
Öncelikle OpenFileDialog ile bir pencere açtırıp müşteriye istenilen kriterlere uygun dosya seçtiriliyor. FileName komutu ile dosyanın konum bilgisi alınıp aşağıdaki kod ile uygulama çalıştırılıyor başarılı bir biçimde.
Onu da @Erkan Çevik 'in verdiği kod ile sonlandırıyoruz kolayca
Foreach döngüsü kuruyoruz ki Chrome gibi aynı isim ile birden çok uygulama başlatan programlar tamamen kapatılabilsin.
Kod:
Process[] programkapat = Process.GetProcessesByName(textBox5.Text);
if (programkapat.Length > 0)
{
foreach (Process p in programkapat)
{
p.Kill();
}
}
Aynı sorundan müzdarip olabilecek insanlar için detaylı yazdım, teşekkür ederim yardımlarınız için.