aboutsummaryrefslogtreecommitdiff
path: root/src/ext/NetFx/be/netfxsearch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext/NetFx/be/netfxsearch.cpp')
-rw-r--r--src/ext/NetFx/be/netfxsearch.cpp32
1 files changed, 28 insertions, 4 deletions
diff --git a/src/ext/NetFx/be/netfxsearch.cpp b/src/ext/NetFx/be/netfxsearch.cpp
index 671e7546..ffbf6ee0 100644
--- a/src/ext/NetFx/be/netfxsearch.cpp
+++ b/src/ext/NetFx/be/netfxsearch.cpp
@@ -15,7 +15,7 @@ STDMETHODIMP NetfxSearchParseFromXml(
15 BSTR bstrNodeName = NULL; 15 BSTR bstrNodeName = NULL;
16 16
17 // Select Netfx search nodes. 17 // Select Netfx search nodes.
18 hr = XmlSelectNodes(pixnBundleExtension, L"NetFxNetCoreSearch|NetFxNetCoreSdkSearch", &pixnNodes); 18 hr = XmlSelectNodes(pixnBundleExtension, L"NetFxNetCoreSearch|NetFxNetCoreSdkSearch|NetFxNetCoreSdkFeatureBandSearch", &pixnNodes);
19 BextExitOnFailure(hr, "Failed to select Netfx search nodes."); 19 BextExitOnFailure(hr, "Failed to select Netfx search nodes.");
20 20
21 // Get Netfx search node count. 21 // Get Netfx search node count.
@@ -72,9 +72,30 @@ STDMETHODIMP NetfxSearchParseFromXml(
72 hr = XmlGetAttributeUInt32(pixnNode, L"Platform", reinterpret_cast<DWORD*>(&netCoreSdkSearch.platform)); 72 hr = XmlGetAttributeUInt32(pixnNode, L"Platform", reinterpret_cast<DWORD*>(&netCoreSdkSearch.platform));
73 BextExitOnFailure(hr, "Failed to get @Platform."); 73 BextExitOnFailure(hr, "Failed to get @Platform.");
74 74
75 // @Version 75 // @MajorVersion
76 hr = XmlGetAttributeEx(pixnNode, L"Version", &netCoreSdkSearch.sczVersion); 76 hr = XmlGetAttributeEx(pixnNode, L"MajorVersion", &netCoreSdkSearch.sczMajorVersion);
77 BextExitOnFailure(hr, "Failed to get @Version."); 77 BextExitOnFailure(hr, "Failed to get @MajorVersion.");
78 }
79 else if (CSTR_EQUAL == ::CompareStringW(LOCALE_INVARIANT, 0, bstrNodeName, -1, L"NetFxNetCoreSdkFeatureBandSearch", -1))
80 {
81 pSearch->Type = NETFX_SEARCH_TYPE_NET_CORE_SDK_FEATURE_BAND_SEARCH;
82
83 auto& netCoreSdkSearch = pSearch->NetCoreSdkFeatureBandSearch;
84 // @Platform
85 hr = XmlGetAttributeUInt32(pixnNode, L"Platform", reinterpret_cast<DWORD*>(&netCoreSdkSearch.platform));
86 BextExitOnFailure(hr, "Failed to get @Platform.");
87
88 // @MajorVersion
89 hr = XmlGetAttributeEx(pixnNode, L"MajorVersion", &netCoreSdkSearch.sczMajorVersion);
90 BextExitOnFailure(hr, "Failed to get @MajorVersion.");
91
92 // @MinorVersion
93 hr = XmlGetAttributeEx(pixnNode, L"MinorVersion", &netCoreSdkSearch.sczMinorVersion);
94 BextExitOnFailure(hr, "Failed to get @MinorVersion.");
95
96 // @PatchVersion
97 hr = XmlGetAttributeEx(pixnNode, L"PatchVersion", &netCoreSdkSearch.sczPatchVersion);
98 BextExitOnFailure(hr, "Failed to get @PatchVersion.");
78 } 99 }
79 else 100 else
80 { 101 {
@@ -132,6 +153,9 @@ STDMETHODIMP NetfxSearchExecute(
132 case NETFX_SEARCH_TYPE_NET_CORE_SDK_SEARCH: 153 case NETFX_SEARCH_TYPE_NET_CORE_SDK_SEARCH:
133 hr = NetfxPerformDetectNetCoreSdk(wzVariable, pSearch, pEngine, wzBaseDirectory); 154 hr = NetfxPerformDetectNetCoreSdk(wzVariable, pSearch, pEngine, wzBaseDirectory);
134 break; 155 break;
156 case NETFX_SEARCH_TYPE_NET_CORE_SDK_FEATURE_BAND_SEARCH:
157 hr = NetfxPerformDetectNetCoreSdkFeatureBand(wzVariable, pSearch, pEngine, wzBaseDirectory);
158 break;
135 default: 159 default:
136 hr = E_UNEXPECTED; 160 hr = E_UNEXPECTED;
137 } 161 }