HOW TO:获取当前Office应用程序的安装版本语言等信息

本文介绍了一种通过注册表获取Office应用程序安装版本和语言信息的方法,包括Access2003、Excel2007、Word2003、Outlook2007和PowerPoint2007等。测试结果显示了不同版本和语言设置,并指出Access2003的ProgID可能存在异常。
摘要由CSDN通过智能技术生成

Author:水如烟  

从注册表中取。其它方法未作尝试。

 ApplicationType.vb

Namespace  LzmTW.MSOffice

    
Public   Enum  ApplicationType
        Access
        Excel
        Word
        Outlook
        PowerPoint
        Publisher
    
End Enum

End Namespace

Constance.vb

Namespace  LzmTW.MSOffice.Info

    
Friend   Class  Constance

        
Public   Const  REGKEY_APPLICATION_TYPE  As   String   =   " {0}.Application/ "

        
Public   Const  REGKEY_OFFICE_VER  As   String   =   " SOFTWARE/Microsoft/Office/{0}/ "
        
Public   Const  REGKEY_OFFICE_COMMON_VER  As   String   =   " SOFTWARE/Microsoft/Office/{0}/Common/ "

        
Public   Shared   Function  GetApplicationKey( ByVal  app  As  ApplicationType)  As   String
            
Return   String .Format(REGKEY_APPLICATION_TYPE, app.ToString)
        
End Function

        
Public   Shared   Function  GetOfficeCommonKey( ByVal  ver  As  Version)  As   String
            
Return   String .Format(REGKEY_OFFICE_COMMON_VER, GetMasterVer(ver))
        
End Function

        
Public   Shared   Function  GetOfficeKey( ByVal  ver  As  Version)  As   String
            
Return   String .Format(REGKEY_OFFICE_VER, GetMasterVer(ver))
        
End Function

        
Public   Shared   Function  GetMasterVer( ByVal  ver  As  Version)  As   String
            
Return   String .Concat(ver.Major,  " . " , ver.Minor)
        
End Function

        
Public   Shared   Function  GetBinaryValue( ByVal  keyvalue  As   Object As   String
            
If  keyvalue  Is   Nothing   Then   Return   Nothing
            
Dim  mBytes  As   Byte ()  =   CType (keyvalue,  Byte ())
            
Return  System.Text.Encoding.Unicode.GetString(mBytes).Replace( ChrW ( 0 ),  "" )
        
End Function

        
Public   Shared   Function  GetProductName( ByVal  versionMajor  As   Integer ByVal  app  As  ApplicationType)  As   String
            
Dim  mOther  As   String
            
Select   Case  versionMajor
                
Case   8
                    mOther 
=   " 98 "
                
Case   9
                    mOther 
=   " 2000 "
                
Case   10
                    mOther 
=   " XP "
                
Case   11
                    mOther 
=   " 2003 "
                
Case   12
                    mOther 
=   " 2007 "
                
Case   Else
                    mOther 
=   "
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值