diff options
Diffstat (limited to 'src/ext/NetFx/be/netfxsearch.cpp')
-rw-r--r-- | src/ext/NetFx/be/netfxsearch.cpp | 32 |
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 | } |