2011-05-11 16 views
6

Yürüten uygulamanın veya dll sürümünün nasıl edinileceğini biliyorum. Ancak, yürütmeyen bir uygulamanın özelliklerini bulmam gerekiyor.Yürütülmeyen Çalıştırılabilir Dosyadan Sürüm Al

Ana uygulamam için bir dosya ilişkilendirmesi ayarlamak için küçük bir programım var. Uygulamanın başlatılmasında argüman kabul etmediği için, eski sürümlerin kullanıcıları bunu kullanmanın bir anlamı yoktur. Böylece dosya birleştiricisi başladığında, ilk önce ana uygulamayı bulabileceğini kontrol eder. Eğer yapabilirse, özellikleri yürütmeden kontrol etmek istiyorum. Sürüm, bağımsız değişkenleri kabul edebilecek bir sayıdan daha eskiyse, derlemeyi ayarlamak yerine ilerlemesini bildirmek istiyorum.

System.IO.FileInfo'ya baktım, ancak herhangi bir Sürüm bilgisi içermiyor gibi görünüyor.

Teşekkür

+0

Dosyaların Windows'ta sürüm bilgisi yoktur. – Hogan

+2

@hogan Görünüşe göre .exe ve .dll dosyaları bu bilgiyi bir yere saklar, çünkü sağ tıklayıp Özellikler'i ve ardından Ayrıntılar'ı seçerek görüntüleyebilirsiniz. Orada. – dandan78

+2

PE dosyalarının Windows'da sürüm bilgisi olabilir. PE dosyasına gömülü bir kaynağın içinde. – CodesInChaos

cevap

11

Sen FileVersionInfo.GetVersionInfo() kullanabilirsiniz:

FileVersionInfo vi = FileVersionInfo.GetVersionInfo("myfile.dll"); 

dize showVersion = vi.FileVersion;

// showVersion gerçek sürüm numaralı

Bu döndüren dosya/belge meta olup yönetilmeyen dll hatta kelime belgeler de için kullanılabilir.

Ayrıca Kurul kullanabilirsiniz: Bu içerecektir

Version v = Assembly.ReflectionOnlyLoadFrom("myfile.dll").GetName().Version; 

. NET sürüm bilgisi.

+0

Tam olarak neye ihtiyacım vardı ve çok basit! – ScruffyDuck

İlgili konular