2010-10-26 12 views
7

.NET/C# kullanma, bir ağ yolunun (ör. \ Mymachine \ myfolder) bulunup bulunmadığını (çevrimiçi veya çevrimdışı) nasıl belirlenir? Böyle bir olayın WMI tarafından bildirilmesinin bir yolu var mı?Bir ağ yolunun kullanılabilir olup olmadığını nasıl belirleyebilirim (çevrimiçi veya çevrimdışı)?

Teşekkürler! Bir konak varsa

http://msdn.microsoft.com/en-us/library/system.net.networkinformation.ping.aspx

O söyleyecektir, ancak belirli bir pay/yolu olup olmadığını söyleyecektir eğer bilmiyorum:

cevap

5

Bir yol olup olmadığını kontrol etmek için Directory.Exists'u kullanabilirsiniz.

bool folderExists = Directory.Exists(@"\\Path\To\Folder"); 
1

Sadece kullanmayı deneyin. Değilse bir hata durumuna neden olur. Bu duruma karşı kod yazmalısın: Neden iki kere?

+0

Bu masraflıdır. İşletim sistemini bana bildirmeyi tercih ederim. – Martin

+3

Bu bir şey ifade etmiyor. Aynı koşulu iki kez test etmek ve aynı kurtarma işlemini iki kez kodlamak daha masraflıdır. Kaynağı bir süre kullanacağını kabul ediyorum. Kullanılabilirliğini önceden test etmek esasen geçersizdir: test edildikten sonra kullanılamayacağı bir zamanlama penceresi sunuyorsunuz. Temel olarak, bilgisayarın geleceği tahmin etmesini istiyorsunuz. – EJP

+0

Bazı durumlarda, bazı durumlarda, Directory.GetFiles() ve OpenFileDialog.ShowDialog() gibi şeylerin birkaç dakika beklemeye neden görünmesine neden olur (bunu gerçekleştirebilmem için tek yol, paylaşıma erişmek, VPN bağlantısını kesmektir) ve sonra paylaşıma tekrar erişin). – Les

İlgili konular