示例#1
0
        public void SetMarshal(UnmanagedMarshal unmanagedMarshal)
        {
            ThrowIfGeneric();

            // set Marshal info for the return type

            m_containingType.ThrowIfCreated();

            if (m_retParam == null)
            {
                m_retParam = new ParameterBuilder(this, 0, 0, null);
            }

            m_retParam.SetMarshal(unmanagedMarshal);
        }
示例#2
0
 // Set the marshalling information for the return type.
 public void SetMarshal(UnmanagedMarshal unmanagedMarshal)
 {
     try
     {
         type.StartSync();
         if (returnBuilder != null)
         {
             returnBuilder = new ParameterBuilder
                                 (type, this, 0, ParameterAttributes.None, null);
         }
         returnBuilder.SetMarshal(unmanagedMarshal);
     }
     finally
     {
         type.EndSync();
     }
 }