Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在本地获取Chrome和Firefox版本,C#_C#_.net_Google Chrome_Firefox_Registry - Fatal编程技术网

在本地获取Chrome和Firefox版本,C#

在本地获取Chrome和Firefox版本,C#,c#,.net,google-chrome,firefox,registry,C#,.net,Google Chrome,Firefox,Registry,我只是使用普通的C#而不是ASP.NET。我想知道我是否能得到Chrome和Firefox的版本。我知道IE可以通过注册表获得版本。据我所知,Chrome和Firefox不会将这些信息存储在注册表中 提前感谢。如果您知道应用程序的完整路径,则可以使用该类获取版本号 下面是一个简单的控制台应用程序,它从注册表读取Chrome和Firefox的安装路径,并输出它们的版本号: using System; using System.Diagnostics; using Microsoft.Win32;

我只是使用普通的C#而不是ASP.NET。我想知道我是否能得到Chrome和Firefox的版本。我知道IE可以通过注册表获得版本。据我所知,Chrome和Firefox不会将这些信息存储在注册表中


提前感谢。

如果您知道应用程序的完整路径,则可以使用该类获取版本号

下面是一个简单的控制台应用程序,它从注册表读取Chrome和Firefox的安装路径,并输出它们的版本号:

using System;
using System.Diagnostics;
using Microsoft.Win32;

class Program
{
    static void Main(string[] args)
    {
        object path;
        path = Registry.GetValue(@"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe", "", null);
        if (path != null)
            Console.WriteLine("Chrome: " + FileVersionInfo.GetVersionInfo(path.ToString()).FileVersion);

        path = Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\firefox.exe", "", null);
        if (path != null)
            Console.WriteLine("Firefox: " + FileVersionInfo.GetVersionInfo(path.ToString()).FileVersion);
    }
}
样本输出:

Chrome: 24.0.1312.52
Firefox: 16.0.2

您在哪个操作系统版本上测试了此功能?Windows 7,64位。我在控制台应用程序中使用了默认的平台目标x86(否则,我可能不得不为Firefox指定Wow6432Node注册表节点,因为Firefox是32位的)。我的chrome.exe(Windows 7 64位)在HKEY_LOCAL_机器上,而不是HKEY_当前用户上,为了以防万一,不妨检查两个位置,是吗?@trukin:如果是这样的话,那么是的。显然,Chrome提供了每个用户或每台机器安装的选项。