コード例 #1
0
void SetListCheckedAll(CListViewCtrlEx &listCtrl,bool bCheck)
{
	for(int i=0; i<listCtrl.GetItemCount(); ++i)
	{
		listCtrl.SetCheckState(i, bCheck);
	}
}
コード例 #2
0
void ListDeleteItems(CListViewCtrlEx &listCtrl, CSimpleArray<int> &arr)
{
	for(int i=listCtrl.GetItemCount()-1; i>=0; --i)
	{
		T_VulListItemData *pItem = (T_VulListItemData*)listCtrl.GetItemData(i);	
		if(pItem && arr.Find(pItem->nID)!=-1)
		{
			listCtrl.DeleteItem( i );
		}
	}
}
コード例 #3
0
bool GetListCheckedItems(CListViewCtrlEx &listCtrl, CSimpleArray<int> &arr, BOOL *pIsRadio)
{
	if(pIsRadio) *pIsRadio = FALSE;
	for(int i=0; i<listCtrl.GetItemCount(); ++i)
	{
		if( listCtrl.GetCheckState(i, pIsRadio) )
		{
			T_VulListItemData *pItem = (T_VulListItemData*) listCtrl.GetItemData( i );
			if(pItem)
				arr.Add( pItem->nID );
		}
	}
	return arr.GetSize()>0;
}
コード例 #4
0
bool GetListCheckedItems(CListViewCtrlEx &listCtrl, CSimpleArray<int> &arr)
{
	for(int i=0; i<listCtrl.GetItemCount(); ++i)
	{
		if( listCtrl.GetCheckState(i) )
		{
			T_VulListItemData *pItem = (T_VulListItemData*) listCtrl.GetItemData( i );
			if(pItem)
				arr.Add( pItem->nID );
		}
	}
	if(arr.GetSize()==0)
	{
		::MessageBox(NULL, _T("没有选择内容"), NULL, MB_OK);
	}
	return arr.GetSize()>0;
}
コード例 #5
0
int RepairCOMVul(CListViewCtrlEx &listCtrl, bool bRepairAll)
{
	int count = 0;
	for(int i=0; i<listCtrl.GetItemCount(); ++i)
	{
		if(bRepairAll || listCtrl.GetCheckState(i))
		{
			T_VulListItemData *pItem = (T_VulListItemData*) listCtrl.GetItemData( i );
			ATLASSERT(pItem);
			if(pItem && pItem->nType==VTYPE_SOFTLEAK)
			{
				int state = GetSoftItemState( pItem );
				if(state==VUL_DISABLE_COM)
				{
					++count;
					theEngine->m_pSoftVulScan->EnableVulCOM( pItem->nID, FALSE );
				}
			}
		}
	}
	return count;
}
コード例 #6
0
ファイル: DlgIgnoredVuls.cpp プロジェクト: 6520874/pcmanager
static int AppendItemIgnoredList( CListViewCtrlEx &listCtrl, T_VulListItemData * pVulItem )
{
	CString strTitle;
	strTitle.Format(_T("KB%d"), pVulItem->nID);
	
	int nItem = listCtrl.Append( GetLevelDesc(pVulItem->nWarnLevel), true );
	listCtrl.AppendSubItem(nItem, pVulItem->strPubDate);
	listCtrl.AppendSubItem(nItem, strTitle);
	listCtrl.AppendSubItem(nItem, pVulItem->strName);
	listCtrl.AppendSubItem(nItem, _T("更多信息"), SUBITEM_LINK);
	listCtrl.SetItemData(nItem, (DWORD_PTR)pVulItem);
	return nItem;
}
コード例 #7
0
int AppendItem2List( CListViewCtrlEx &listCtrl, T_VulListItemData * pVulItem )
{
	CString strTitle;
	strTitle.Format(_T("KB%d"), pVulItem->nID);
	
	LPCTSTR lpszWarnDesc = GetLevelDesc(pVulItem->nWarnLevel);
	
	int nItem = listCtrl.Append(lpszWarnDesc, pVulItem->nWarnLevel>=0);
	listCtrl.AppendSubItem(nItem, strTitle);
	listCtrl.AppendSubItem(nItem, pVulItem->strName);
	listCtrl.AppendSubItem(nItem, pVulItem->strPubDate);
	listCtrl.AppendSubItem(nItem, pVulItem->nWarnLevel==-1 ? _T("无需修复") : (pVulItem->nWarnLevel>0 ? _T("未修复") : _T("可不修复")) );
	
	if(pVulItem->nWarnLevel>3)
		listCtrl.SetSubItemColor(nItem, 0, red, false);
	
	listCtrl.SetItemData(nItem, (DWORD_PTR)pVulItem);
	return nItem;
}
コード例 #8
0
int AppendItem2List( CListViewCtrlEx &listCtrl, T_VulListItemData * pVulItem )
{
	CString strTitle;
	FormatKBString(pVulItem->nID, strTitle);
	
	LPCTSTR lpszWarnDesc = GetLevelDesc(pVulItem->nWarnLevel);
	
	int nItem = listCtrl.Append(lpszWarnDesc, pVulItem->nWarnLevel>=0 ? LISTITEM_CHECKBOX:0);
	listCtrl.AppendSubItem(nItem, strTitle);
	listCtrl.AppendSubItem(nItem, pVulItem->strName);
	listCtrl.AppendSubItem(nItem, pVulItem->strPubDate);
	listCtrl.AppendSubItem(
        nItem, 
        pVulItem->nWarnLevel == -1 ? BkString::Get(IDS_VULFIX_5106)
                                   : (pVulItem->nWarnLevel > 0 ? BkString::Get(IDS_VULFIX_5107)
                                                               : BkString::Get(IDS_VULFIX_5108)) );
	
	if(pVulItem->nWarnLevel>3)
		listCtrl.SetSubItemColor(nItem, 0, red, false);
	
	/*listCtrl.SetItemData(nItem, (DWORD_PTR)pVulItem);*/
	listCtrl.SetItemData(nItem, (DWORD)pVulItem);
	return nItem;
}