Example #1
0
void GetTaskInfoFromXML(BSTR xml, CStringW &app_name, CStringW &param)
{
	CStringW xml_str(xml);

	int pos = xml_str.Find(L"<Command>");
	if (pos == -1) {
		return;
	}

	int info_start = pos + 9;
	pos = xml_str.Find(L"</Command>", info_start);
	if (pos == -1) {
		return;
	}

	int info_length = pos - info_start;
	app_name.SetString(xml_str.GetString() + info_start, info_length);


	pos = xml_str.Find(L"<Arguments>");
	if (pos == -1) {
		return;
	}

	info_start = pos + 11;
	pos = xml_str.Find(L"</Arguments>", info_start);
	if (pos == -1) {
		return;
	}

	info_length = pos - info_start;
	param.SetString(xml_str.GetString() + info_start, info_length);
}