Object[] arg = new Object[] { Activator.CreateInstance(utsnameType) };
MethodInfo uname = syscallType.GetMethod("uname", new Type[] { utsnameType.MakeByRefType() });
FieldInfo fi = utsnameType.GetField(field);
if (uname != null && fi != null)
{
uname.Invoke(null, arg);
return (String)fi.GetValue(arg[0]);
}
}
return null;
}