确定安装了哪个版本的SharePoint的最可靠方法是什么。无论是WSS还是MOSS。如果是MOSS,无论是标准还是企业。
我想以编程方式检测已安装的确切SharePoint版本。
PS:我已经发布了this question at SharePoint.SE,但找不到令人信服的答案。
答案 0 :(得分:2)
您可以在注册表项HKLM \ SOFTWARE \ Microsoft \ Shared Tools \ Web Server Extensions \ 14.0 \ WSS \ InstalledProducts中查找这些内容。
BEED1F75-C398-4447-AEF1-E66E1F0DF91E: SharePoint Foundation 2010
1328E89E-7EC8-4F7E-809E-7E945796E511: Search Server Express 2010
B2C0B444-3914-4ACB-A0B8-7CF50A8F7AA0: SharePoint Server 2010 Standard Trial
3FDFBCC8-B3E4-4482-91FA-122C6432805C: SharePoint Server 2010 Standard
88BED06D-8C6B-4E62-AB01-546D6005FE97: SharePoint Server 2010 Enterprise Trial
D5595F62-449B-4061-B0B2-0CBAD410BB51: SharePoint Server 2010 Enterprise
BC4C1C97-9013-4033-A0DD-9DC9E6D6C887: Search Server 2010 Trial
08460AA2-A176-442C-BDCA-26928704D80B: Search Server 2010
84902853-59F6-4B20-BC7C-DE4F419FEFAD: Project Server 2010 Trial
ED21638F-97FF-4A65-AD9B-6889B93065E2: Project Server 2010
926E4E17-087B-47D1-8BD7-91A394BC6196: Office Web Companions 2010
请参阅MSDN上的文章How To: Detect the Installed SKU of SharePoint 2010。它有一个每个SKU的GUID列表:
您还可以使用PowerShell命令get-spfarm |选择产品以输出已安装SKU的GUID。
答案 1 :(得分:1)
您可以尝试使用SPFarm.Local.BuildVersion
或SPWebService.ContentService.Farm.BuildVersion
(来自此previous question)并根据此构建查找表:How to find the level of SharePoint you are running?
另一种选择是直接从ConfigDB
表上的Versions
数据库中读取;你可以找到more information here。
答案 2 :(得分:0)
正如那里所建议的那样,最可靠的方法是检查功能的可用性。 SharePoint API中没有可以告诉您它是WSS,MOSS标准还是MOSS Enterprise的功能。