STDMETHODIMP ScriptObject::GetIDsOfNames(REFIID riid, OLECHAR **rgszNames, UINT cNames, LCID lcid, DISPID *rgDispID) {
		//USES_CONVERSION;

		for (UINT n = 0; n < cNames; n++) {
			StringW strName = rgszNames[n];
			List<SCRIPT_OBJECT_METHOD_TABLE>::Iterator iter = _methodTable.GetHeadPosition();
			while (_methodTable.iteratorValid(iter)) {
				if (strName.Compare(iter->name) == 0) {
					rgDispID[n] = iter->dispid;
					break;
				}
				iter++;
			}
			if (!_methodTable.iteratorValid(iter)) return E_UNEXPECTED;
		}
		return S_OK;
	}