我已经编写了一个使用Windows更新服务器获取更新信息的应用程序,代码工作正常,但我在严重性,截止日期和公告ID中得到NULL,当我在调试模式下检查HRESULT时,它显示成功。 知道为什么会这样吗?
//
// Copy bulletin ID to the structure.
//
hrRes = pIUpdate->get_SecurityBulletinIDs(&pIStrCollBullIds);
if (FAILED(hrRes))
{
*pdwErrorCode = VSHELP_ERROR_WUA_API;
return FALSE;
}
pIStrCollBullIds->get_Count(&lIdCount);
for (iIndex = 0; iIndex < lIdCount ; iIndex++)
{
hrRes = pIStrCollBullIds->get_Item(iIndex, &bstrBuff);
if (FAILED(hrRes))
{
pIStrCollBullIds->Release();
return VSHELP_ERROR_WUA_API;
}
_bstrBuffer.Assign(bstrBuff);
SysFreeString(bstrBuff);
hrRes = StringCchCopy(
pUpdateInfoListTemp->UpdateInfo.szBulletinId,
ARRAY_SIZE(pUpdateInfoListTemp->UpdateInfo.szBulletinId),
(TCHAR*)_bstrBuffer
);
if (FAILED(hrRes))
{
pIStrCollBullIds->Release();
*pdwErrorCode = VSHELP_ERROR_INTERNAL;
return FALSE;
}
}
if (0 == iIndex)
{
pUpdateInfoListTemp->UpdateInfo.szBulletinId[0] = NULL;
}
pIStrCollBullIds->Release();