IMethodReturnMessage::OutArgCount Property
.NET Framework (current version)
Gets the number of arguments in the method call marked as ref or out parameters.
Assembly: mscorlib (in mscorlib.dll)
Property Value
Type: System::Int32The number of arguments in the method call marked as ref or out parameters.
| Exception | Condition |
|---|---|
| SecurityException | The immediate caller makes the call through a reference to the interface and does not have infrastructure permission. |
The following example code shows a custom proxy that overrides RealProxy.Invoke in order to write the return message information to the console.
virtual IMessage^ Invoke( IMessage^ myMessage ) override { IMethodCallMessage^ myCallMessage = (IMethodCallMessage^)( myMessage ); IMethodReturnMessage^ myIMethodReturnMessage = RemotingServices::ExecuteMessage( myMarshalByRefObject, myCallMessage ); Console::WriteLine( "Method name : {0}", myIMethodReturnMessage->MethodName ); Console::WriteLine( "The return value is : {0}", myIMethodReturnMessage->ReturnValue ); // Get number of 'ref' and 'out' parameters. int myArgOutCount = myIMethodReturnMessage->OutArgCount; Console::WriteLine( "The number of 'ref', 'out' parameters are : {0}", myIMethodReturnMessage->OutArgCount ); // Gets name and values of 'ref' and 'out' parameters. for ( int i = 0; i < myArgOutCount; i++ ) { Console::WriteLine( "Name of argument {0} is '{1}'.", i, myIMethodReturnMessage->GetOutArgName( i ) ); Console::WriteLine( "Value of argument {0} is '{1}'.", i, myIMethodReturnMessage->GetOutArg( i ) ); } Console::WriteLine(); array<Object^>^myObjectArray = myIMethodReturnMessage->OutArgs; for ( int i = 0; i < myObjectArray->Length; i++ ) Console::WriteLine( "Value of argument {0} is '{1}' in OutArgs", i, myObjectArray[ i ] ); return myIMethodReturnMessage; }
SecurityPermission
for operating with infrastructure code. Demand value: SecurityAction::LinkDemand; Permission value: SecurityPermissionFlag::Infrastructure
.NET Framework
Available since 1.1
Available since 1.1
Show: