void AdobeReaderAction::FinishExecution(ExecutionProcess process)
{	
	Runner runner;
	vector <DWORD> processIDs = _getProcessIDs(process.GetName());

	if (_getMajorVersion() == 9)
	{
		if (processIDs.size() > 0)
		{
			OSVersion version;

			if (version.GetVersion() == WindowsXP)
			{
				runner.TerminateProcessID(processIDs.at(0));
			}
			else // Windows Vista, 7 or better
			{
				runner.RequestCloseToProcessID(processIDs.at(0), false);
			}
		}
	}
	else
	{
		for (unsigned int i = 0; i < processIDs.size(); i++)
		{
			runner.RequestQuitToProcessID(processIDs.at(i));
		}
	}
}
void AdobeReaderAction::CheckPrerequirements(Action * action)
{
	_readVersionInstalled();

	if (m_version.size() > 0)
	{
		if (_isLangPackInstalled() == true)
		{
			SetStatus(AlreadyApplied);
			return;
		}

		int major = _getMajorVersion();
		if (major != 9 && major != 10)
		{
			_getStringFromResourceIDName(IDS_NOTSUPPORTEDVERSION, szCannotBeApplied);
			g_log.Log(L"AdobeReaderAction::CheckPrerequirements. Version not supported");
			SetStatus(CannotBeApplied);
			return;
		}
	}
	else
	{
		_setStatusNotInstalled();
		return;
	}
}
DownloadID AdobeReaderAction::_getDownloadID()
{
	switch (_getMajorVersion())
	{
		case 9:
			return DI_ADOBEREADER_95;
		case 10:
			return DI_ADOBEREADER_1010;
		default:
			assert(false);
			return DI_ADOBEREADER_1010;
	}
}