예제 #1
0
LRESULT CAddExtnConfirmPage::OnWizardNext(void)
{
	CAddExtnWizardSheet* pSheet = (CAddExtnWizardSheet*) GetParent();

	const CArray<CString, LPCTSTR>& saSelectedExtns = pSheet->GetSelectedExtensions();

	// keep track of the number of rules added
	int nRulesAdded = 0;

	CComPtr<INeverCompressRules> pNeverRules;
	if (pSheet->GetNeverRules(&pNeverRules) == true && pNeverRules != NULL)
	{				
		for (int i = 0; i < saSelectedExtns.GetCount(); i++)
		{
			CStringA sExtn(saSelectedExtns[i]);

			HRESULT hr = pNeverRules->AddExtensionRule(sExtn, "", "", pSheet->GetUpdateCookie());
			if (hr == S_OK)
				nRulesAdded++;
		}
	}

	if (nRulesAdded > 0)	
	{
		// we need to reset the compression cache since the config has changed		
		CIISxpressTrayPropertySheet::ResetResponseCache();
	}

	return 0;
}