using Microsoft.Office.Interop.Excel;//转换为excel时,对比一下c#。需要引用此命名空间
using ET;//转换为wps时,相比看。需要引用此命名空间
using
KSO;//转换为wps时,需要引用此命名空间
//当转换为excel时,需要引入Microsoft.Office.Interop.Excel.dll;当转换为wps时,需要引入Interop.ET.dll,Interop.KSO.dll;
#region 查询注册表,判断本机是否安装office2003,2007和wps
public int
ExistsRegedit()
{
int ifused = 0;
RegistryKey rk =
Registry.LocalMachine;
RegistryKey akey =
rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\11.0\Excel\InstallRoot\");//查询2003
RegistryKey akey07 =
rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\12.0\Excel\InstallRoot\");//查询2007
RegistryKey
akeytwo =
rk.OpenSubKey(@"SOFTWARE\Kingsoft\Office\6.0\common\");//查询wps
//检查本机是否安装Office2003
if
(akey != null)
{
string file03 =
akey.GetValue("Path").ToString();
if (File.Exists(file03 +
"Excel.exe"))
{
ifused += 1;
}
}
//检查本机是否安装Office2007
if (akey07 != null)
{
string file07 =
akey07.GetValue("Path").ToString();
if (File.Exists(file07 +
"Excel.exe"))
{
ifused += 2;
}
}
//检查本机是否安装wps
if
(akeytwo != null)
{
string filewps =
akeytwo.GetValue("InstallRoot").ToString();
if (File.Exists(filewps +
@"\office6\et.exe"))
{
ifused += 4;
}
}
return
ifused;
}
#endregion
原文:http://www.cnblogs.com/ArRan/p/3567579.html