我使用下面的installscript代码来确定是否安装了SharePoint。但它不起作用。该函数返回-1。不确定是什么问题。有人可以帮忙吗?我想在下面的步骤
首先到达此注册表位置“”SOFTWARE \ Microsoft \ Shared Tools \ Web Server Extensions \ 15.0“”
读取名称“SharePoint”及其值“已安装”
参考附图。
function IsSharePointInstalled()
STRING szKey, svValue, szName;
NUMBER nvType, nvSize;
begin
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
szKey = "SOFTWARE\\Microsoft\\Shared Tools\\Web Server
Extensions\\15.0";
szName = "SharePoint";
if(RegDBKeyExist (szKey) >=1) then
MessageBox("Key found", INFORMATION);
if(RegDBGetKeyValueEx(szKey, szName, nvType, svValue, nvSize) < 0) then
MessageBox("Failed to get value", INFORMATION);
else
MessageBox("Successfully got value", INFORMATION);
endif;
endif;
RegDBSetDefaultRoot(HKEY_CLASSES_ROOT);
end;
答案 0 :(得分:0)
Installscipt :您的价值位于何处?您是否考虑过注册管理机构的64-
与32 bit
部分?
HKEY_LOCAL_MACHINE\SOFTWARE
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node
Perhaps investigate the 64-bit option here(REGDB_OPTION_WOW64_64KEY
)如果您需要注册表的64位部分。
AppSearch :对于像这样的简单注册表检索,您可以使用AppSearch代替(System Search View)。我现在没有时间为此制作样品。您还可以看到System Search View / Wizard。