C#是一种开源的、稳定的、简单的、优雅的,面向对象的编程语言,那么如何通过C#来获取安装的office版本呢,接下,小编通过实例为小伙伴介绍一下。
方法/步骤
-
1
对于office的检测,一般会采用获取注册表的信息来判断当前安装软件的版本。这里小编安装的是2016,通过注册表,我们可以看到版本信息
-
2
使用vs2015创建一个winform程序,在这个程序里,我们来实现获取office的版本。
-
3
编写方法通过注册表来判断office的版本,在注册表中,所有的office都会存在SOFTWARE\Microsoft\Office\这个路径下。所以,我们要判断的注册表路径就是这个。具体方法如下:
public int ExistsOffice()
{
int ifused = 0;
RegistryKey rk = Registry.LocalMachine;
RegistryKey akey10 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\14.0\Excel\InstallRoot\");//查询2010
RegistryKey akey13 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\16.0\Excel\InstallRoot\");//查询2016
//检查本机是否安装Office2010
if (akey10 != null)
{
string office10 = akey10.GetValue("Path").ToString();
if (File.Exists(office10 + "Excel.exe"))
{
ifused += 1;
}
}
//检查本机是否安装Office2013
if (akey13 != null)
{
string office16 = akey13.GetValue("Path").ToString();
if (File.Exists(office16 + "Excel.exe"))
{
ifused += 2;
}
}
return ifused;
}
-
4
在winform的load事件中,调用上述方法,根据返回结果,来判断office安装的版本。
private void Form1_Load(object sender, EventArgs e)
{
int flag = 0;
flag = ExistsOffice();
if (flag == 1)
{
MessageBox.Show(@"本机已安装office2010");
}
else if (flag == 2)
{
MessageBox.Show(@"本机已安装office2016");
}
}
-
5
保存编写好的代码,按键盘上的F5运行代码,可以看到提示,与小编安装的office版本一直,那么使用C#获取office版本就成功了。
END
文章评论