MSMQ Trigger Invocation Parameters

Today I figured out why I was successful at failing yesterday. 
Actually, all I figured out was why I was failing.  Why I was
succeeding at it still eludes me.  The configuration that I was
implementing was a Queue that had a Trigger that had a Rule that
invoked a COM component.  The Rule was configured to call the COM
component and pass into it a couple of parameters.  The parameters
that I had chosen were Message Body (as variant) and Message ID (as
variant).  The method on the Com component was defined as:

public void DoStuff(object objMsgBody, object objMessageID)


So both the variant Invocation Parameters were COM parameters defined
as objects.  Apparentally this is where I was going wrong.  I
still have no idea what data type the Message ID (as variant) should be
coded to, but if I change it to Message Queue (as string) and redefine
the method as follows, the code runs wonderfully.

public void DoStuff(object objMsgBody, string


I’ve got a call in to MS, actually Aragorn does, so hopefully I will be able to get a listing of the Invocation Parameters and the C# data types that should be used.