$COM can return a string.

Problem is your not accessing a method. You need to get access to the Field object in order to get the value out. You could try the GetString approach.

When you use that syntax your accessing a default method which I belive is the Collect method. This returns a field object which has the default method set as Value. So this will not work for the same reasons the other ones won't.

Hope this helped.