![Vanara](https://raw.githubusercontent.com/dahall/Vanara/master/docs/icons/VanaraHeading.png)
### **Vanara.PInvoke.Rpc NuGet Package**
[![Version](https://img.shields.io/nuget/v/Vanara.PInvoke.Rpc?label=NuGet&style=flat-square)](https://github.com/dahall/Vanara/releases)
[![Build status](https://img.shields.io/appveyor/build/dahall/vanara?label=AppVeyor%20build&style=flat-square)](https://ci.appveyor.com/project/dahall/vanara)

PInvoke API (methods, structures and constants) imported from Windows Rpc libraries.

### **What is Vanara?**

[Vanara](https://github.com/dahall/Vanara) is a community project that contains various .NET assemblies which have P/Invoke functions, interfaces, enums and structures from Windows libraries. Each assembly is associated with one or a few tightly related libraries.

### **Issues?**

First check if it's already fixed by trying the [AppVeyor build](https://ci.appveyor.com/nuget/vanara-prerelease).
If you're still running into problems, file an [issue](https://github.com/dahall/Vanara/issues).

### **Included in Vanara.PInvoke.Rpc**

Functions | Enumerations | Structures
--- | --- | ---
CreateProxyFromTypeInfo CreateStubFromTypeInfo CStdStubBuffer_AddRef CStdStubBuffer_Connect CStdStubBuffer_CountRefs CStdStubBuffer_DebugServerQueryInterface CStdStubBuffer_DebugServerRelease CStdStubBuffer_Disconnect CStdStubBuffer_Invoke CStdStubBuffer_IsIIDSupported CStdStubBuffer_QueryInterface DceErrorInqText I_RpcAllocate I_RpcAsyncAbortCall I_RpcAsyncSetHandle I_RpcBCacheAllocate I_RpcBCacheFree I_RpcBindingCopy I_RpcBindingCreateNP I_RpcBindingHandleToAsyncHandle I_RpcBindingInqClientTokenAttributes I_RpcBindingInqCurrentModifiedId I_RpcBindingInqDynamicEndpoint I_RpcBindingInqLocalClientPID I_RpcBindingInqMarshalledTargetInfo I_RpcBindingInqSecurityContext I_RpcBindingInqSecurityContextKeyInfo I_RpcBindingInqTransportType I_RpcBindingInqWireIdForSnego I_RpcBindingIsClientLocal I_RpcBindingIsServerLocal I_RpcBindingSetPrivateOption I_RpcBindingToStaticStringBindingW I_RpcCertProcessAndProvision I_RpcClearMutex I_RpcCompleteAndFree I_RpcDeleteMutex I_RpcEnableWmiTrace I_RpcExceptionFilter I_RpcFilterDCOMActivation I_RpcFixTransferSyntax I_RpcFree I_RpcFreeBuffer I_RpcFreePipeBuffer I_RpcFreeSystemHandle I_RpcFreeSystemHandleCollection I_RpcFwThisIsTheManager I_RpcGetBuffer I_RpcGetBufferWithObject I_RpcGetCurrentCallHandle I_RpcGetDefaultSD I_RpcGetExtendedError I_RpcGetPortAllocationData I_RpcGetSystemHandle I_RpcIfInqTransferSyntaxes I_RpcInitFwImports I_RpcInitHttpImports I_RpcInitImports I_RpcInitNdrImports I_RpcLogEvent I_RpcMapWin32Status I_RpcMarshalBindingHandleAndInterfaceForNDF I_RpcMgmtEnableDedicatedThreadPool I_RpcMgmtQueryDedicatedThreadPool I_RpcNDRCGetWireRepresentation I_RpcNDRSContextEmergencyCleanup I_RpcNegotiateTransferSyntax I_RpcNsBindingSetEntryName I_RpcNsInterfaceExported I_RpcNsInterfaceUnexported I_RpcOpenClientProcess I_RpcOpenClientThread I_RpcParseSecurity I_RpcPauseExecution I_RpcReallocPipeBuffer I_RpcReceive I_RpcRecordCalloutFailure I_RpcRequestMutex I_RpcSend I_RpcSendReceive I_RpcServerAllocateIpPort I_RpcServerCheckClientRestriction I_RpcServerDisableExceptionFilter I_RpcServerGetAssociationID I_RpcServerInqAddressChangeFn I_RpcServerInqLocalConnAddress I_RpcServerInqRemoteConnAddress I_RpcServerInqTransportType I_RpcServerIsClientDisconnected I_RpcServerRegisterForwardFunction I_RpcServerSetAddressChangeFn I_RpcServerStartService I_RpcServerSubscribeForDisconnectNotification I_RpcServerSubscribeForDisconnectNotification2 I_RpcServerTurnOnOffKeepalives I_RpcServerUnsubscribeForDisconnectNotification I_RpcServerUseProtseq2 I_RpcServerUseProtseqEp2 I_RpcSessionStrictContextHandle I_RpcSetDCOMAppId I_RpcSetSystemHandle I_RpcSNCHOption I_RpcSsDontSerializeContext I_RpcSystemFunction001 I_RpcSystemHandleTypeSpecificWork I_RpcTransConnectionAllocatePacket I_RpcTransConnectionFreePacket I_RpcTransConnectionReallocPacket I_RpcTransDatagramAllocate I_RpcTransDatagramAllocate2 I_RpcTransDatagramFree I_RpcTransGetThreadEvent I_RpcTransGetThreadEventThreadOptional I_RpcTransIoCancelled I_RpcTransServerNewConnection I_RpcTurnOnEEInfoPropagation I_RpcVerifierCorruptionExpected I_UuidCreate IUnknown_AddRef_Proxy IUnknown_QueryInterface_Proxy IUnknown_Release_Proxy MesBufferHandleReset MesDecodeBufferHandleCreate MesDecodeIncrementalHandleCreate MesEncodeDynBufferHandleCreate MesEncodeFixedBufferHandleCreate MesEncodeIncrementalHandleCreate MesHandleFree MesIncrementalHandleReset MesInqProcEncodingId Ndr64AsyncClientCall Ndr64AsyncServerCall64 Ndr64AsyncServerCallAll Ndr64DcomAsyncClientCall Ndr64DcomAsyncStubCall NdrAllocate NdrAsyncClientCall NdrAsyncServerCall NdrByteCountPointerBufferSize NdrByteCountPointerFree NdrByteCountPointerMarshall NdrByteCountPointerUnmarshall NDRCContextBinding NDRCContextMarshall NDRCContextUnmarshall NdrClearOutParameters NdrClientCall2 NdrClientCall3 NdrClientContextMarshall NdrClientContextUnmarshall NdrClientInitialize NdrClientInitializeNew NdrComplexArrayBufferSize NdrComplexArrayFree NdrComplexArrayMarshall NdrComplexArrayMemorySize NdrComplexArrayUnmarshall NdrComplexStructBufferSize NdrComplexStructFree NdrComplexStructMarshall NdrComplexStructMemorySize NdrComplexStructUnmarshall NdrConformantArrayBufferSize NdrConformantArrayFree NdrConformantArrayMarshall NdrConformantArrayMemorySize NdrConformantArrayUnmarshall NdrConformantStringBufferSize NdrConformantStringMarshall NdrConformantStringMemorySize NdrConformantStringUnmarshall NdrConformantStructBufferSize NdrConformantStructFree NdrConformantStructMarshall NdrConformantStructMemorySize NdrConformantStructUnmarshall NdrConformantVaryingArrayBufferSize NdrConformantVaryingArrayFree NdrConformantVaryingArrayMarshall NdrConformantVaryingArrayMemorySize NdrConformantVaryingArrayUnmarshall NdrConformantVaryingStructBufferSize NdrConformantVaryingStructFree NdrConformantVaryingStructMarshall NdrConformantVaryingStructMemorySize NdrConformantVaryingStructUnmarshall NdrContextHandleInitialize NdrContextHandleSize NdrConvert NdrConvert2 NdrCorrelationFree NdrCorrelationInitialize NdrCorrelationPass NdrCreateServerInterfaceFromStub NdrCStdStubBuffer_Release NdrCStdStubBuffer2_Release NdrDcomAsyncClientCall NdrDcomAsyncStubCall NdrDllCanUnloadNow NdrDllGetClassObject NdrDllRegisterProxy NdrDllUnregisterProxy NdrEncapsulatedUnionBufferSize NdrEncapsulatedUnionFree NdrEncapsulatedUnionMarshall NdrEncapsulatedUnionMemorySize NdrEncapsulatedUnionUnmarshall NdrFixedArrayBufferSize NdrFixedArrayFree NdrFixedArrayMarshall NdrFixedArrayMemorySize NdrFixedArrayUnmarshall NdrFreeBuffer NdrFullPointerFree NdrFullPointerInsertRefId NdrFullPointerQueryPointer NdrFullPointerQueryRefId NdrFullPointerXlatFree NdrFullPointerXlatInit NdrGetBaseInterfaceFromStub NdrGetBuffer NdrGetDcomProtocolVersion NdrGetSimpleTypeBufferAlignment NdrGetSimpleTypeBufferSize NdrGetSimpleTypeMemorySize NdrGetTypeFlags NdrGetUserMarshalInfo NdrInterfacePointerBufferSize NdrInterfacePointerFree NdrInterfacePointerMarshall NdrInterfacePointerMemorySize NdrInterfacePointerUnmarshall NdrMapCommAndFaultStatus NdrMesProcEncodeDecode NdrMesProcEncodeDecode2 NdrMesProcEncodeDecode3 NdrMesSimpleTypeAlignSize NdrMesSimpleTypeAlignSizeAll NdrMesSimpleTypeDecode NdrMesSimpleTypeDecodeAll NdrMesSimpleTypeEncode NdrMesSimpleTypeEncodeAll NdrMesTypeAlignSize NdrMesTypeAlignSize2 NdrMesTypeAlignSize3 NdrMesTypeDecode NdrMesTypeDecode2 NdrMesTypeDecode3 NdrMesTypeEncode NdrMesTypeEncode2 NdrMesTypeEncode3 NdrMesTypeFree2 NdrMesTypeFree3 NdrNonConformantStringBufferSize NdrNonConformantStringMarshall NdrNonConformantStringMemorySize NdrNonConformantStringUnmarshall NdrNonEncapsulatedUnionBufferSize NdrNonEncapsulatedUnionFree NdrNonEncapsulatedUnionMarshall NdrNonEncapsulatedUnionMemorySize NdrNonEncapsulatedUnionUnmarshall NdrNsGetBuffer NdrNsSendReceive NdrOleAllocate NdrOleFree NdrOutInit NdrPartialIgnoreClientBufferSize NdrPartialIgnoreClientMarshall NdrPartialIgnoreServerInitialize NdrPartialIgnoreServerUnmarshall NdrpClientCall2 NdrpCreateProxy NdrpCreateStub NdrpGetProcFormatString NdrpGetTypeFormatString NdrpGetTypeGenCookie NdrpMemoryIncrement NdrPointerBufferSize NdrPointerFree NdrPointerMarshall NdrPointerMemorySize NdrPointerUnmarshall NdrpReleaseTypeFormatString NdrpReleaseTypeGenCookie NdrProxyErrorHandler NdrProxyFreeBuffer NdrProxyGetBuffer NdrProxyInitialize NdrProxySendReceive NdrpVarVtOfTypeDesc NdrRangeUnmarshall NdrRpcSmClientAllocate NdrRpcSmClientFree NdrRpcSmSetClientToOsf NdrRpcSsDefaultAllocate NdrRpcSsDefaultFree NdrRpcSsDisableAllocate NdrRpcSsEnableAllocate NDRSContextMarshall NDRSContextMarshall2 NDRSContextMarshallEx NDRSContextUnmarshall NDRSContextUnmarshall2 NDRSContextUnmarshallEx NdrSendReceive NdrServerCall2 NdrServerCallAll NdrServerCallNdr64 NdrServerContextMarshall NdrServerContextNewMarshall NdrServerContextNewUnmarshall NdrServerContextUnmarshall NdrServerInitialize NdrServerInitializeMarshall NdrServerInitializeNew NdrServerInitializePartial NdrServerInitializeUnmarshall NdrSimpleStructBufferSize NdrSimpleStructFree NdrSimpleStructMarshall NdrSimpleStructMemorySize NdrSimpleStructUnmarshall NdrSimpleTypeMarshall NdrSimpleTypeUnmarshall NdrStubCall2 NdrStubCall3 NdrStubForwardingFunction NdrStubGetBuffer NdrStubInitialize NdrStubInitializeMarshall NdrTypeFlags NdrTypeFree NdrTypeMarshall NdrTypeSize NdrTypeUnmarshall NdrUnmarshallBasetypeInline NdrUserMarshalBufferSize NdrUserMarshalFree NdrUserMarshalMarshall NdrUserMarshalMemorySize NdrUserMarshalSimpleTypeConvert NdrUserMarshalUnmarshall NdrVaryingArrayBufferSize NdrVaryingArrayFree NdrVaryingArrayMarshall NdrVaryingArrayMemorySize NdrVaryingArrayUnmarshall NdrXmitOrRepAsBufferSize NdrXmitOrRepAsFree NdrXmitOrRepAsMarshall NdrXmitOrRepAsMemorySize NdrXmitOrRepAsUnmarshall pfnFreeRoutines pfnMarshallRoutines pfnSizeRoutines pfnUnmarshallRoutines RpcAsyncAbortCall RpcAsyncCancelCall RpcAsyncCompleteCall RpcAsyncGetCallStatus RpcAsyncInitializeHandle RpcAsyncRegisterInfo RpcBindingBind RpcBindingCopy RpcBindingCreate RpcBindingFree RpcBindingFromStringBinding RpcBindingInqAuthClient RpcBindingInqAuthClientEx RpcBindingInqAuthInfo RpcBindingInqAuthInfoEx RpcBindingInqMaxCalls RpcBindingInqObject RpcBindingInqOption RpcBindingReset RpcBindingServerFromClient RpcBindingSetAuthInfo RpcBindingSetAuthInfoEx RpcBindingSetObject RpcBindingSetOption RpcBindingToStringBinding RpcBindingUnbind RpcBindingVectorFree RpcCancelThread RpcCancelThreadEx RpcCertGeneratePrincipalName RpcCertMatchPrincipalName RpcEpRegister RpcEpRegisterNoReplace RpcEpResolveBinding RpcEpUnregister RpcErrorAddRecord RpcErrorClearInformation RpcErrorEndEnumeration RpcErrorGetNextRecord RpcErrorGetNumberOfRecords RpcErrorLoadErrorInfo RpcErrorResetEnumeration RpcErrorSaveErrorInfo RpcErrorStartEnumeration RpcExceptionFilter RpcFreeAuthorizationContext RpcGetAuthorizationContextForClient RpcIfIdVectorFree RpcIfInqId RpcImpersonateClient RpcImpersonateClient2 RpcImpersonateClientContainer RpcMgmtEnableIdleCleanup RpcMgmtEpEltInqBegin RpcMgmtEpEltInqDone RpcMgmtEpEltInqNext RpcMgmtEpUnregister RpcMgmtInqComTimeout RpcMgmtInqDefaultProtectLevel RpcMgmtInqIfIds RpcMgmtInqServerPrincName RpcMgmtInqStats RpcMgmtIsServerListening RpcMgmtSetAuthorizationFn RpcMgmtSetCancelTimeout RpcMgmtSetComTimeout RpcMgmtSetServerStackSize RpcMgmtStatsVectorFree RpcMgmtStopServerListening RpcMgmtWaitServerListen RpcNetworkInqProtseqs RpcNetworkIsProtseqValid RpcNsBindingInqEntryName RpcObjectInqType RpcObjectSetInqFn RpcObjectSetType RpcProtseqVectorFree RpcRaiseException RpcRevertContainerImpersonation RpcRevertToSelf RpcRevertToSelfEx RpcServerCompleteSecurityCallback RpcServerInqBindingHandle RpcServerInqBindings RpcServerInqBindingsEx RpcServerInqCallAttributes RpcServerInqDefaultPrincName RpcServerInqIf RpcServerInterfaceGroupActivate RpcServerInterfaceGroupClose RpcServerInterfaceGroupCreate RpcServerInterfaceGroupDeactivate RpcServerInterfaceGroupInqBindings RpcServerListen RpcServerRegisterAuthInfo RpcServerRegisterIf RpcServerRegisterIf2 RpcServerRegisterIf3 RpcServerRegisterIfEx RpcServerSubscribeForNotification RpcServerTestCancel RpcServerUnregisterIf RpcServerUnregisterIfEx RpcServerUnsubscribeForNotification RpcServerUseAllProtseqs RpcServerUseAllProtseqsEx RpcServerUseAllProtseqsIf RpcServerUseAllProtseqsIfEx RpcServerUseProtseq RpcServerUseProtseqEp RpcServerUseProtseqEpEx RpcServerUseProtseqEx RpcServerUseProtseqIf RpcServerUseProtseqIfEx RpcServerYield RpcSmAllocate RpcSmClientFree RpcSmDestroyClientContext RpcSmDisableAllocate RpcSmEnableAllocate RpcSmFree RpcSmGetThreadHandle RpcSmSetClientAllocFree RpcSmSetThreadHandle RpcSmSwapClientAllocFree RpcSsAllocate RpcSsContextLockExclusive RpcSsContextLockShared RpcSsDestroyClientContext RpcSsDisableAllocate RpcSsDontSerializeContext RpcSsEnableAllocate RpcSsFree RpcSsGetContextBinding RpcSsGetThreadHandle RpcSsSetClientAllocFree RpcSsSetThreadHandle RpcSsSwapClientAllocFree RpcStringBindingCompose RpcStringBindingParse RpcStringFree RpcTestCancel RpcUserFree SimpleTypeAlignment SimpleTypeBufferSize SimpleTypeMemorySize TowerConstruct TowerExplode UuidCompare UuidCreate UuidCreateNil UuidCreateSequential UuidEqual UuidFromString UuidHash UuidIsNil UuidToString  | RCP_C_BINDING_TIMEOUT RPC_BHO RPC_C_AUTHN RPC_C_AUTHN_INFO_TYPE RPC_C_AUTHN_LEVEL RPC_C_AUTHZ RPC_C_HTTP_AUTHN_SCHEME RPC_C_HTTP_AUTHN_TARGET RPC_C_HTTP_FLAG RPC_C_IMP_LEVEL RPC_C_MGMT RPC_C_OPT RPC_C_POL_ENDPT RPC_C_POL_NIC RPC_C_QOS_CAPABILITIES RPC_C_QOS_IDENTITY RPC_IF SEC_WINNT_AUTH_IDENTITY_CHARSET                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | RPC_AUTH_IDENTITY_HANDLE RPC_AUTHZ_HANDLE RPC_BINDING_HANDLE RPC_BINDING_HANDLE_OPTIONS_V1 RPC_BINDING_HANDLE_SECURITY_V1 RPC_BINDING_HANDLE_TEMPLATE_V1 RPC_BINDING_VECTOR RPC_ENDPOINT_TEMPLATE RPC_HTTP_TRANSPORT_CREDENTIALS RPC_HTTP_TRANSPORT_CREDENTIALS_V2 RPC_HTTP_TRANSPORT_CREDENTIALS_V3 RPC_IF_HANDLE RPC_IF_ID RPC_IF_ID_VECTOR RPC_INTERFACE_GROUP RPC_INTERFACE_TEMPLATE RPC_POLICY RPC_PROTSEQ_VECTOR RPC_SECURITY_QOS RPC_SECURITY_QOS_V2 RPC_SECURITY_QOS_V3 RPC_SECURITY_QOS_V4 RPC_SECURITY_QOS_V5 RPC_STATS_VECTOR SEC_WINNT_AUTH_IDENTITY UUID_VECTOR RPC_CLIENT_INTERFACE RPC_DISPATCH_TABLE RPC_MESSAGE RPC_PROTSEQ_ENDPOINT RPC_SERVER_INTERFACE RPC_SYNTAX_IDENTIFIER RPC_VERSION MIDL_SERVER_INFO MIDL_STUB_DESC                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
