Как получить версию программного обеспечения на локальном компьютере с помощью .net?

Мне нужно получить версию Adobe Acrobat Reader, установленную на локальном компьютере, используя .net framework 2.0 или 4.0. Я пробовал с классом «Реестр», но проблема в том, что он присутствует в качестве подключа в редакторе реестра, который можно редактировать (поэтому его может изменить кто угодно, и я не могу гарантировать, что это именно версия или просто папка имя) наряду с этим он округляет версию (например: если версия 10.1.3.23, она будет храниться как 10.0). Итак, кто-нибудь, пожалуйста, дайте мне знать, есть ли способ получить актуальную и полную версию ридера.

Я даже хочу знать, есть ли способ получить доступ к свойствам элементов программного обеспечения в файле программы с помощью .net, чтобы я мог получить все свойства программного обеспечения, установленного на локальном компьютере.

Будем очень признательны за любые конкретные советы о том, как получить версию программного обеспечения с использованием .net.


person user1866677    schedule 30.11.2012    source источник
comment
Что за тег pg? Вы должны обновить этот вопрос с соответствующими тегами для лучшей видимости. Кроме того, вы используете VB.NET или C#?   -  person LittleBobbyTables - Au Revoir    schedule 30.11.2012


Ответы (1)


   System.Diagnostics.FileVersionInfo fileVersionObj = System.Diagnostics.FileVersionInfo.GetVersionInfo(@"C:\\Program Files\\Adobe\\Reader 9.0\\Reader\\AcroRd32.exe");

 MessageBox.Show(fileVersionObj.FileVersion);

Используя это, вы также сможете получить доступ к каждой части версии файла.

    MessageBox.Show(fileVersionObj.FileMajorPart.ToString());
    MessageBox.Show(fileVersionObj.FileMinorPart.ToString());
    MessageBox.Show(fileVersionObj.FileBuildPart.ToString());
    MessageBox.Show(fileVersionObj.FilePrivatePart.ToString());
person Akshay Joy    schedule 03.12.2012