C# 中怎么获得本地office 的版本
展开全部
从注册表中查看。
#region 查询注册表,判断本机是否安装Office2003,2007和WPS
public int ExistsRegedit()
{
int ifused = 0;
RegistryKey rk = Registry.LocalMachine;
//查询Office2003
RegistryKey f03 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\11.0\Excel\InstallRoot\");
//查询Office2007
RegistryKey f07 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\12.0\Excel\InstallRoot\");
////查询wps
//RegistryKey wps = rk.OpenSubKey(@"SOFTWARE\Kingsoft\Office\6.0\common\");
//检查本机是否安装Office2003
if (f03 != null)
{
//string file03 = f03.GetValue("Path").ToString();
//if (File.Exists(file03 + "Excel.exe")) ifused += 1;
ifused = 1;
}
//检查本机是否安装Office2007
if (f07 != null)
{
//string file07 = akey.GetValue("Path").ToString();
//if (File.Exists(file07 + "Excel.exe")) ifused += 2;
ifused = 2;
}
//检查本机是否安装wps
//if (wps != null)
//{
// //string filewps = akeytwo.GetValue("InstallRoot").ToString();
// //if (File.Exists(filewps + @"\office6\et.exe")) ifused += 4;
// ifused = 3;
//}
return ifused;
}
#endregion
#region 查询注册表,判断本机是否安装Office2003,2007和WPS
public int ExistsRegedit()
{
int ifused = 0;
RegistryKey rk = Registry.LocalMachine;
//查询Office2003
RegistryKey f03 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\11.0\Excel\InstallRoot\");
//查询Office2007
RegistryKey f07 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\12.0\Excel\InstallRoot\");
////查询wps
//RegistryKey wps = rk.OpenSubKey(@"SOFTWARE\Kingsoft\Office\6.0\common\");
//检查本机是否安装Office2003
if (f03 != null)
{
//string file03 = f03.GetValue("Path").ToString();
//if (File.Exists(file03 + "Excel.exe")) ifused += 1;
ifused = 1;
}
//检查本机是否安装Office2007
if (f07 != null)
{
//string file07 = akey.GetValue("Path").ToString();
//if (File.Exists(file07 + "Excel.exe")) ifused += 2;
ifused = 2;
}
//检查本机是否安装wps
//if (wps != null)
//{
// //string filewps = akeytwo.GetValue("InstallRoot").ToString();
// //if (File.Exists(filewps + @"\office6\et.exe")) ifused += 4;
// ifused = 3;
//}
return ifused;
}
#endregion
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询