e.GetProperties(properties, ref result));
        return (object[]) result;
    }

    public R GetProperty&lt;R&gt;(int propertyId)
    {
        object[] properties = { propertyId };
        return (R) GetProperties(properties)[0];
    }
}
  </pre>
 <h3>
  Implementing VMWareJob
 </h3>
 <p>
  Since all operations in VMWare are job-based, let's wrap up a job. If we use the
  COM API directly we would have to call <code>IVixLib.Wait</code> passing a job handle.
  In an object-oriented libra