System.Runtime.InteropServices
The exception that is thrown when a unit of data is read from or written to an address that is not a multiple of the data size. This class cannot be inherited.
2
Initializes a new instance of the class.
Initializes a new instance of the class using the specified error message.
A object that describes the error. The content of is intended to be understood by humans. The caller of this constructor is required to ensure that this string has been localized for the current system culture.
Initializes a new instance of the class using the specified error message and underlying exception.
A object that describes the error. The content of is intended to be understood by humans. The caller of this constructor is required to ensure that this string has been localized for the current system culture.
The exception that is the cause of the current . If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
The exception that is thrown when a DLL specified in a DLL import cannot be found.
2
Initializes a new instance of the class with default properties.
Initializes a new instance of the class with a specified error message.
The error message that explains the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
Represents a missing . This class cannot be inherited.
Represents the sole instance of the class.
Encapsulates an array and an offset within the specified array.
Initializes a new instance of the structure.
A managed array.
The offset in bytes, of the element to be passed through platform invoke.
The array is larger than 2 gigabytes (GB).
Indicates whether the specified object matches the current object.
true if the object matches this ; otherwise, false.
Object to compare with this instance.
Indicates whether the specified object matches the current instance.
true if the specified object matches the current instance; otherwise, false.
An object to compare with this instance.
Returns the managed array referenced by this .
The managed array this instance references.
Returns a hash code for this value type.
The hash code for this instance.
Returns the offset provided when this was constructed.
The offset for this instance.
Determines whether two specified objects have the same value.
true if the value of is the same as the value of ; otherwise, false.
An object to compare with the parameter.
An object to compare with the parameter.
Determines whether two specified objects no not have the same value.
true if the value of is not the same as the value of ; otherwise, false.
An object to compare with the parameter.
An object to compare with the parameter.
Controls whether Unicode characters are converted to the closest matching ANSI characters.
Initializes a new instance of the class set to the value of the property.
true to indicate that best-fit mapping is enabled; otherwise, false. The default is true.
Gets the best-fit mapping behavior when converting Unicode characters to ANSI characters.
true if best-fit mapping is enabled; otherwise, false. The default is true.
Enables or disables the throwing of an exception on an unmappable Unicode character that is converted to an ANSI '?' character.
Marshals data of type VT_BSTR from managed to unmanaged code. This class cannot be inherited.
Initializes a new instance of the class with the specified object.
The object to wrap and marshal as VT_BSTR.
Initializes a new instance of the class with the specified object.
The object to wrap and marshal as VT_BSTR.
Gets the wrapped object to marshal as type VT_BSTR.
The object that is wrapped by .
Specifies the calling convention required to call methods implemented in unmanaged code.
The caller cleans the stack. This enables calling functions with varargs, which makes it appropriate to use for methods that accept a variable number of parameters, such as Printf.
The callee cleans the stack. This is the default convention for calling unmanaged functions with platform invoke.
The first parameter is the this pointer and is stored in register ECX. Other parameters are pushed on the stack. This calling convention is used to call methods on classes exported from an unmanaged DLL.
This member is not actually a calling convention, but instead uses the default platform calling convention. For example, on Windows the default is and on Windows CE.NET it is .
Indicates the type of class interface to be generated for a class exposed to COM, if an interface is generated at all.
Initializes a new instance of the class with the specified enumeration value.
Describes the type of interface that is generated for a class.
Initializes a new instance of the class with the specified enumeration member.
One of the values that describes the type of interface that is generated for a class.
Gets the value that describes which type of interface should be generated for the class.
The value that describes which type of interface should be generated for the class.
Identifies the type of class interface that is generated for a class.
Indicates that the class only supports late binding for COM clients. A dispinterface for the class is automatically exposed to COM clients on request. The type library produced by Tlbexp.exe (Type Library Exporter) does not contain type information for the dispinterface in order to prevent clients from caching the DISPIDs of the interface. The dispinterface does not exhibit the versioning problems described in because clients can only late-bind to the interface.
Indicates that a dual class interface is automatically generated for the class and exposed to COM. Type information is produced for the class interface and published in the type library. Using AutoDual is strongly discouraged because of the versioning limitations described in .
Indicates that no class interface is generated for the class. If no interfaces are implemented explicitly, the class can only provide late-bound access through the IDispatch interface. This is the recommended setting for . Using ClassInterfaceType.None is the only way to expose functionality through interfaces implemented explicitly by the class.
Specifies the class identifier of a coclass imported from a type library.
Initializes new instance of the with the class identifier of the original coclass.
A that contains the class identifier of the original coclass.
Gets the class identifier of the original coclass.
A containing the class identifier of the original coclass.
Permits late-bound registration of an event handler.
Initializes a new instance of the class by using the specified type and a name of the event on the type.
The type of object.
The name of an event on .
Attaches an event handler to a COM object.
The target object that the event delegate should bind to.
The event delegate.
Gets the attributes for this event.
The read-only attributes for this event.
Gets the class that declares this member.
The object for the class that declares this member.
Gets the name of the current member.
The name of this member.
Detaches an event handler from a COM object.
The target object that the event delegate is bound to.
The event delegate.
The event does not have a public remove accessor.
The handler that was passed in cannot be used.
In the .NET for Windows Store apps or the Portable Class Library, catch instead.The parameter is null and the event is not static.-or- The is not declared on the target.
In the .NET for Windows Store apps or the Portable Class Library, catch the base class exception, , instead.The caller does not have access permission to the member.
Specifies a default interface to expose to COM. This class cannot be inherited.
Initializes a new instance of the class with the specified object as the default interface exposed to COM.
A value indicating the default interface to expose to COM.
Gets the object that specifies the default interface to expose to COM.
The object that specifies the default interface to expose to COM.
Identifies the source interface and the class that implements the methods of the event interface that is generated when a coclass is imported from a COM type library.
Initializes a new instance of the class with the source interface and event provider class.
A that contains the original source interface from the type library. COM uses this interface to call back to the managed class.
A that contains the class that implements the methods of the event interface.
Gets the class that implements the methods of the event interface.
A that contains the class that implements the methods of the event interface.
Gets the original source interface from the type library.
A containing the source interface.
Provides methods that enable .NET Framework delegates that handle events to be added and removed from COM objects.
Adds a delegate to the invocation list of events originating from a COM object.
The COM object that triggers the events the caller would like to respond to.
The identifier of the source interface used by the COM object to trigger events.
The dispatch identifier of the method on the source interface.
The delegate to invoke when the COM event is fired.
Removes a delegate from the invocation list of events originating from a COM object.
The delegate that was removed from the invocation list.
The COM object the delegate is attached to.
The identifier of the source interface used by the COM object to trigger events.
The dispatch identifier of the method on the source interface.
The delegate to remove from the invocation list.
The exception that is thrown when an unrecognized HRESULT is returned from a COM method call.
Initializes a new instance of the class with default values.
Initializes a new instance of the class with a specified message.
The message that indicates the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
Initializes a new instance of the class with a specified message and error code.
The message that indicates the reason the exception occurred.
The error code (HRESULT) value associated with this exception.
Indicates that the attributed type was previously defined in COM.
Initializes a new instance of the .
Identifies how to expose an interface to COM.
Indicates that the interface is exposed to COM as a dual interface, which enables both early and late binding. is the default value.
Indicates that an interface is exposed to COM as a dispinterface, which enables late binding only.
Indicates that an interface is exposed to COM as a Windows Runtime interface.
Indicates that an interface is exposed to COM as an interface that is derived from IUnknown, which enables only early binding.
Describes the type of a COM member.
The member is a normal method.
The member gets properties.
The member sets properties.
Identifies a list of interfaces that are exposed as COM event sources for the attributed class.
Initializes a new instance of the class with the name of the event source interface.
A null-delimited list of fully qualified event source interface names.
Initializes a new instance of the class with the type to use as a source interface.
The of the source interface.
Initializes a new instance of the class with the types to use as source interfaces.
The of the default source interface.
The of a source interface.
Initializes a new instance of the ComSourceInterfacesAttribute class with the types to use as source interfaces.
The of the default source interface.
The of a source interface.
The of a source interface.
Initializes a new instance of the class with the types to use as source interfaces.
The of the default source interface.
The of a source interface.
The of a source interface.
The of a source interface.
Gets the fully qualified name of the event source interface.
The fully qualified name of the event source interface.
Wraps objects the marshaler should marshal as a VT_CY.
Initializes a new instance of the class with the Decimal to be wrapped and marshaled as type VT_CY.
The Decimal to be wrapped and marshaled as VT_CY.
Initializes a new instance of the class with the object containing the Decimal to be wrapped and marshaled as type VT_CY.
The object containing the Decimal to be wrapped and marshaled as VT_CY.
The parameter is not a type.
Gets the wrapped object to be marshaled as type VT_CY.
The wrapped object to be marshaled as type VT_CY.
Indicates whether the method's IUnknown::QueryInterface calls can use the interface.
IUnknown::QueryInterface method calls can use the interface. When you use this value, the method overload functions like the overload.
IUnknown::QueryInterface method calls should ignore the interface.
Provides return values for the method.
The interface for a specific interface ID is not available. In this case, the returned interface is null. E_NOINTERFACE is returned to the caller of IUnknown::QueryInterface.
The interface pointer that is returned from the method can be used as the result of IUnknown::QueryInterface.
The custom QueryInterface was not used. Instead, the default implementation of IUnknown::QueryInterface should be used.
Specifies the value of the enumeration. This class cannot be inherited.
Initializes a new instance of the class with the specified value.
One of the values.
Gets the default value of for any call to .
The default value of for any call to .
Specifies the paths that are used to search for DLLs that provide functions for platform invokes.
Initializes a new instance of the class, specifying the paths to use when searching for the targets of platform invokes.
A bitwise combination of enumeration values that specify the paths that the LoadLibraryEx function searches during platform invokes.
Gets a bitwise combination of enumeration values that specify the paths that the LoadLibraryEx function searches during platform invokes.
A bitwise combination of enumeration values that specify search paths for platform invokes.
Sets the default value of a parameter when called from a language that supports default parameters. This class cannot be inherited.
Initializes a new instance of the class with the default value of a parameter.
An object that represents the default value of a parameter.
Gets the default value of a parameter.
An object that represents the default value of a parameter.
Wraps objects the marshaler should marshal as a VT_DISPATCH.
Initializes a new instance of the class with the object being wrapped.
The object to be wrapped and converted to .
is not a class or an array.-or- does not support IDispatch.
The parameter was marked with a attribute that was passed a value of false.-or-The parameter inherits from a type marked with a attribute that was passed a value of false.
Gets the object wrapped by the .
The object wrapped by the .
Specifies the COM dispatch identifier (DISPID) of a method, field, or property.
Initializes a new instance of the DispIdAttribute class with the specified DISPID.
The DISPID for the member.
Gets the DISPID for the member.
The DISPID for the member.
Indicates that the attributed method is exposed by an unmanaged dynamic-link library (DLL) as a static entry point.
Initializes a new instance of the class with the name of the DLL containing the method to import.
The name of the DLL that contains the unmanaged method. This can include an assembly display name, if the DLL is included in an assembly.
Enables or disables best-fit mapping behavior when converting Unicode characters to ANSI characters.
Indicates the calling convention of an entry point.
Indicates how to marshal string parameters to the method and controls name mangling.
Indicates the name or ordinal of the DLL entry point to be called.
Controls whether the field causes the common language runtime to search an unmanaged DLL for entry-point names other than the one specified.
Indicates whether unmanaged methods that have HRESULT or retval return values are directly translated or whether HRESULT or retval return values are automatically converted to exceptions.
Indicates whether the callee calls the SetLastError Win32 API function before returning from the attributed method.
Enables or disables the throwing of an exception on an unmappable Unicode character that is converted to an ANSI "?" character.
Gets the name of the DLL file that contains the entry point.
The name of the DLL file that contains the entry point.
Specifies the paths that are used to search for DLLs that provide functions for platform invokes.
Include the application directory in the DLL search path.
When searching for assembly dependencies, include the directory that contains the assembly itself, and search that directory first. This value is used by the .NET Framework, before the paths are passed to the Win32 LoadLibraryEx function.
Search the application directory, and then call the Win32 LoadLibraryEx function with the LOAD_WITH_ALTERED_SEARCH_PATH flag. This value is ignored if any other value is specified. Operating systems that do not support the attribute use this value, and ignore other values.
Include the application directory, the %WinDir%\System32 directory, and user directories in the DLL search path.
Include the %WinDir%\System32 directory in the DLL search path.
Search for the dependencies of a DLL in the folder where the DLL is located before searching other folders.
Include any path that was explicitly added to the process-wide search path by using the Win32 AddDllDirectory function.
Wraps objects the marshaler should marshal as a VT_ERROR.
Initializes a new instance of the class with the HRESULT that corresponds to the exception supplied.
The exception to be converted to an error code.
Initializes a new instance of the class with the HRESULT of the error.
The HRESULT of the error.
Initializes a new instance of the class with an object containing the HRESULT of the error.
The object containing the HRESULT of the error.
The parameter is not an type.
Gets the error code of the wrapper.
The HRESULT of the error.
Provides a way to access a managed object from unmanaged memory.
Retrieves the address of an object in a handle.
The address of the pinned object as an .
The handle is any type other than .
Allocates a handle for the specified object.
A new that protects the object from garbage collection. This must be released with when it is no longer needed.
The object that uses the .
An instance with nonprimitive (non-blittable) members cannot be pinned.
Allocates a handle of the specified type for the specified object.
A new of the specified type. This must be released with when it is no longer needed.
The object that uses the .
One of the values, indicating the type of to create.
An instance with nonprimitive (non-blittable) members cannot be pinned.
Determines whether the specified object is equal to the current object.
true if the specified object is equal to the current object; otherwise, false.
The object to compare with the current object.
Releases a .
The handle was freed or never initialized.
Returns a new object created from a handle to a managed object.
A new object that corresponds to the value parameter.
An handle to a managed object to create a object from.
The value of the parameter is .
Returns an identifier for the current object.
An identifier for the current object.
Gets a value indicating whether the handle is allocated.
true if the handle is allocated; otherwise, false.
Returns a value indicating whether two objects are equal.
true if the and parameters are equal; otherwise, false.
A object to compare with the parameter.
A object to compare with the parameter.
A is stored using an internal integer representation.
The stored object using an internal integer representation.
An that indicates the handle for which the conversion is required.
A is stored using an internal integer representation.
The integer value.
The for which the integer is required.
Returns a value indicating whether two objects are not equal.
true if the and parameters are not equal; otherwise, false.
A object to compare with the parameter.
A object to compare with the parameter.
Gets or sets the object this handle represents.
The object this handle represents.
The handle was freed, or never initialized.
Returns the internal integer representation of a object.
An object that represents a object.
A object to retrieve an internal integer representation from.
Represents the types of handles the class can allocate.
This handle type represents an opaque handle, meaning you cannot resolve the address of the pinned object through the handle. You can use this type to track an object and prevent its collection by the garbage collector. This enumeration member is useful when an unmanaged client holds the only reference, which is undetectable from the garbage collector, to a managed object.
This handle type is similar to , but allows the address of the pinned object to be taken. This prevents the garbage collector from moving the object and hence undermines the efficiency of the garbage collector. Use the method to free the allocated handle as soon as possible.
This handle type is used to track an object, but allow it to be collected. When an object is collected, the contents of the are zeroed. Weak references are zeroed before the finalizer runs, so even if the finalizer resurrects the object, the Weak reference is still zeroed.
This handle type is similar to , but the handle is not zeroed if the object is resurrected during finalization.
Supplies an explicit when an automatic GUID is undesirable.
Initializes a new instance of the class with the specified GUID.
The to be assigned.
Gets the of the class.
The of the class.
Tracks outstanding handles and forces a garbage collection when the specified threshold is reached.
Initializes a new instance of the class using a name and a threshold at which to begin handle collection.
A name for the collector. This parameter allows you to name collectors that track handle types separately.
A value that specifies the point at which collections should begin.
The parameter is less than 0.
Initializes a new instance of the class using a name, a threshold at which to begin handle collection, and a threshold at which handle collection must occur.
A name for the collector. This parameter allows you to name collectors that track handle types separately.
A value that specifies the point at which collections should begin.
A value that specifies the point at which collections must occur. This should be set to the maximum number of available handles.
The parameter is less than 0.-or-The parameter is less than 0.
The parameter is less than the parameter.
Increments the current handle count.
The property is less than 0.
Gets the number of handles collected.
The number of handles collected.
Gets a value that specifies the point at which collections should begin.
A value that specifies the point at which collections should begin.
Gets a value that specifies the point at which collections must occur.
A value that specifies the point at which collections must occur.
Gets the name of a object.
This property allows you to name collectors that track handle types separately.
Decrements the current handle count.
The property is less than 0.
Provides a way for clients to access the actual object, rather than the adapter object handed out by a custom marshaler.
Provides access to the underlying object wrapped by a custom marshaler.
The object contained by the adapter object.
Enables developers to provide a custom, managed implementation of the IUnknown::QueryInterface(REFIID riid, void **ppvObject) method.
Returns an interface according to a specified interface ID.
One of the enumeration values that indicates whether a custom implementation of IUnknown::QueryInterface was used.
The GUID of the requested interface.
A reference to the requested interface, when this method returns.
Indicates that data should be marshaled from the caller to the callee, but not back to the caller.
Initializes a new instance of the class.
Indicates whether a managed interface is dual, dispatch-only, or IUnknown -only when exposed to COM.
Initializes a new instance of the class with the specified enumeration member.
Describes how the interface should be exposed to COM clients.
Initializes a new instance of the class with the specified enumeration member.
One of the values that describes how the interface should be exposed to COM clients.
Gets the value that describes how the interface should be exposed to COM.
The value that describes how the interface should be exposed to COM.
The exception thrown when an invalid COM object is used.
Initializes an instance of the InvalidComObjectException with default properties.
Initializes an instance of the InvalidComObjectException with a message.
The message that indicates the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
The exception thrown by the marshaler when it encounters an argument of a variant type that can not be marshaled to managed code.
Initializes a new instance of the InvalidOleVariantTypeException class with default values.
Initializes a new instance of the InvalidOleVariantTypeException class with a specified message.
The message that indicates the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
Provides a collection of methods for allocating unmanaged memory, copying unmanaged memory blocks, and converting managed to unmanaged types, as well as other miscellaneous methods used when interacting with unmanaged code.
Increments the reference count on the specified interface.
The new value of the reference count on the parameter.
The interface reference count to increment.
Allocates a block of memory of specified size from the COM task memory allocator.
An integer representing the address of the block of memory allocated. This memory must be released with .
The size of the block of memory to be allocated.
There is insufficient memory to satisfy the request.
Allocates memory from the unmanaged memory of the process by using the specified number of bytes.
A pointer to the newly allocated memory. This memory must be released using the method.
The required number of bytes in memory.
There is insufficient memory to satisfy the request.
Allocates memory from the unmanaged memory of the process by using the pointer to the specified number of bytes.
A pointer to the newly allocated memory. This memory must be released using the method.
The required number of bytes in memory.
There is insufficient memory to satisfy the request.
Indicates whether runtime callable wrappers (RCWs) from any context are available for cleanup.
true if there are any RCWs available for cleanup; otherwise, false.
Copies data from a one-dimensional, managed 8-bit unsigned integer array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
, , , or is null.
Copies data from a one-dimensional, managed character array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
, , or is null.
Copies data from a one-dimensional, managed double-precision floating-point number array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
, , , or is null.
Copies data from a one-dimensional, managed 16-bit signed integer array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
, , , or is null.
Copies data from a one-dimensional, managed 32-bit signed integer array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
or is null.
Copies data from a one-dimensional, managed 64-bit signed integer array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed 8-bit unsigned integer array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed character array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed double-precision floating-point number array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed 16-bit signed integer array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed 32-bit signed integer array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed 64-bit signed integer array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from an unmanaged memory pointer to a managed single-precision floating-point number array.
The memory pointer to copy from.
The array to copy to.
The zero-based index in the destination array where copying should start.
The number of array elements to copy.
, , , or is null.
Copies data from a one-dimensional, managed array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
, , , or is null.
Copies data from a one-dimensional, managed single-precision floating-point number array to an unmanaged memory pointer.
The one-dimensional array to copy from.
The zero-based index in the source array where copying should start.
The memory pointer to copy to.
The number of array elements to copy.
and are not valid.
, , , or is null.
Aggregates a managed object with the specified COM object.
The inner IUnknown pointer of the managed object.
The outer IUnknown pointer.
An object to aggregate.
is a Windows Runtime object.
[Supported in the .NET Framework 4.5.1 and later versions] Aggregates a managed object of the specified type with the specified COM object.
The inner IUnknown pointer of the managed object.
The outer IUnknown pointer.
The managed object to aggregate.
The type of the managed object to aggregate.
is a Windows Runtime object.
Wraps the specified COM object in an object of the specified type.
The newly wrapped object that is an instance of the desired type.
The object to be wrapped.
The type of wrapper to create.
must derive from __ComObject. -or- is a Windows Runtime type.
The parameter is null.
cannot be converted to the destination type because it does not support all required interfaces.
[Supported in the .NET Framework 4.5.1 and later versions] Wraps the specified COM object in an object of the specified type.
The newly wrapped object.
The object to be wrapped.
The type of object to wrap.
The type of object to return.
must derive from __ComObject. -or- is a Windows Runtime type.
cannot be converted to the because it does not support all required interfaces.
[Supported in the .NET Framework 4.5.1 and later versions] Frees all substructures of a specified type that the specified unmanaged memory block points to.
A pointer to an unmanaged block of memory.
The type of the formatted structure. This provides the layout information necessary to delete the buffer in the parameter.
has an automatic layout. Use sequential or explicit instead.
Frees all substructures that the specified unmanaged memory block points to.
A pointer to an unmanaged block of memory.
Type of a formatted class. This provides the layout information necessary to delete the buffer in the parameter.
has an automatic layout. Use sequential or explicit instead.
Releases all references to a Runtime Callable Wrapper (RCW) by setting its reference count to 0.
The new value of the reference count of the RCW associated with the parameter, which is 0 (zero) if the release is successful.
The RCW to be released.
is not a valid COM object.
is null.
Frees a BSTR using the COM SysFreeString function.
The address of the BSTR to be freed.
Frees a block of memory allocated by the unmanaged COM task memory allocator.
The address of the memory to be freed.
Frees memory previously allocated from the unmanaged memory of the process.
The handle returned by the original matching call to .
Returns a pointer to an IUnknown interface that represents the specified interface on the specified object. Custom query interface access is enabled by default.
The interface pointer that represents the specified interface for the object.
The object that provides the interface.
The type of interface that is requested.
The parameter is not an interface.-or- The type is not visible to COM. -or-The parameter is a generic type.
The parameter does not support the requested interface.
The parameter is null.-or- The parameter is null.
Returns a pointer to an IUnknown interface that represents the specified interface on the specified object. Custom query interface access is controlled by the specified customization mode.
The interface pointer that represents the interface for the object.
The object that provides the interface.
The type of interface that is requested.
One of the enumeration values that indicates whether to apply an IUnknown::QueryInterface customization that is supplied by an .
The parameter is not an interface.-or- The type is not visible to COM.-or-The parameter is a generic type.
The object does not support the requested interface.
The parameter is null.-or- The parameter is null.
[Supported in the .NET Framework 4.5.1 and later versions] Returns a pointer to an IUnknown interface that represents the specified interface on an object of the specified type. Custom query interface access is enabled by default.
The interface pointer that represents the interface.
The object that provides the interface.
The type of .
The type of interface to return.
The parameter is not an interface.-or- The type is not visible to COM. -or-The parameter is an open generic type.
The parameter does not support the interface.
The parameter is null.
[Supported in the .NET Framework 4.5.1 and later versions] Converts an unmanaged function pointer to a delegate of a specified type.
A instance of the specified delegate type.
The unmanaged function pointer to convert.
The type of the delegate to return.
The generic parameter is not a delegate, or it is an open generic type.
The parameter is null.
Converts an unmanaged function pointer to a delegate.
A delegate instance that can be cast to the appropriate delegate type.
The unmanaged function pointer to be converted.
The type of the delegate to be returned.
The parameter is not a delegate or is generic.
The parameter is null.-or-The parameter is null.
Retrieves a code that identifies the type of the exception that occurred.
The type of the exception.
Converts the specified HRESULT error code to a corresponding object.
An object that represents the converted HRESULT.
The HRESULT to be converted.
Converts the specified HRESULT error code to a corresponding object, with additional error information passed in an IErrorInfo interface for the exception object.
An object that represents the converted HRESULT and information obtained from .
The HRESULT to be converted.
A pointer to the IErrorInfo interface that provides more information about the error. You can specify IntPtr(0) to use the current IErrorInfo interface, or IntPtr(-1) to ignore the current IErrorInfo interface and construct the exception just from the error code.
Converts a delegate into a function pointer that is callable from unmanaged code.
A value that can be passed to unmanaged code, which, in turn, can use it to call the underlying managed delegate.
The delegate to be passed to unmanaged code.
The parameter is a generic type.
The parameter is null.
[Supported in the .NET Framework 4.5.1 and later versions] Converts a delegate of a specified type to a function pointer that is callable from unmanaged code.
A value that can be passed to unmanaged code, which, in turn, can use it to call the underlying managed delegate.
The delegate to be passed to unmanaged code.
The type of delegate to convert.
The parameter is null.
Converts the specified exception to an HRESULT.
The HRESULT mapped to the supplied exception.
The exception to convert to an HRESULT.
Returns the HRESULT corresponding to the last error incurred by Win32 code executed using .
The HRESULT corresponding to the last Win32 error code.
Returns an IUnknown interface from a managed object.
The IUnknown pointer for the parameter.
The object whose IUnknown interface is requested.
Returns the error code returned by the last unmanaged function that was called using platform invoke that has the flag set.
The last error code set by a call to the Win32 SetLastError function.
Converts an object to a COM VARIANT.
The object for which to get a COM VARIANT.
A pointer to receive the VARIANT that corresponds to the parameter.
The parameter is a generic type.
[Supported in the .NET Framework 4.5.1 and later versions] Converts an object of a specified type to a COM VARIANT.
The object for which to get a COM VARIANT.
A pointer to receive the VARIANT that corresponds to the parameter.
The type of the object to convert.
Returns an instance of a type that represents a COM object by a pointer to its IUnknown interface.
An object that represents the specified unmanaged COM object.
A pointer to the IUnknown interface.
Converts a COM VARIANT to an object.
An object that corresponds to the parameter.
A pointer to a COM VARIANT.
is not a valid VARIANT type.
has an unsupported type.
[Supported in the .NET Framework 4.5.1 and later versions] Converts a COM VARIANT to an object of a specified type.
An object of the specified type that corresponds to the parameter.
A pointer to a COM VARIANT.
The type to which to convert the COM VARIANT.
is not a valid VARIANT type.
has an unsupported type.
Converts an array of COM VARIANTs to an array of objects.
An object array that corresponds to .
A pointer to the first element of an array of COM VARIANTs.
The count of COM VARIANTs in .
is a negative number.
[Supported in the .NET Framework 4.5.1 and later versions] Converts an array of COM VARIANTs to an array of a specified type.
An array of objects that corresponds to .
A pointer to the first element of an array of COM VARIANTs.
The count of COM VARIANTs in .
The type of the array to return.
is a negative number.
Gets the first slot in the virtual function table (v-table or VTBL) that contains user-defined methods.
The first VTBL slot that contains user-defined methods. The first slot is 3 if the interface is based on IUnknown, and 7 if the interface is based on IDispatch.
A type that represents an interface.
is not visible from COM.
Returns the type associated with the specified class identifier (CLSID).
System.__ComObject regardless of whether the CLSID is valid.
The CLSID of the type to return.
Retrieves the name of the type represented by an ITypeInfo object.
The name of the type that the parameter points to.
An object that represents an ITypeInfo pointer.
The parameter is null.
Creates a unique Runtime Callable Wrapper (RCW) object for a given IUnknown interface.
A unique RCW for the specified IUnknown interface.
A managed pointer to an IUnknown interface.
Indicates whether a specified object represents a COM object.
true if the parameter is a COM type; otherwise, false.
The object to check.
[Supported in the .NET Framework 4.5.1 and later versions] Returns the field offset of the unmanaged form of a specified managed class.
The offset, in bytes, for the parameter within the specified class that is declared by platform invoke.
The name of the field in the type.
A managed value type or formatted reference type. You must apply the attribute to the class.
Returns the field offset of the unmanaged form of the managed class.
The offset, in bytes, for the parameter within the specified class that is declared by platform invoke.
A value type or formatted reference type that specifies the managed class. You must apply the to the class.
The field within the parameter.
The class cannot be exported as a structure or the field is nonpublic. Beginning with the .NET Framework version 2.0, the field may be private.
The parameter is null.
Copies all characters up to the first null character from an unmanaged ANSI string to a managed , and widens each ANSI character to Unicode.
A managed string that holds a copy of the unmanaged ANSI string. If is null, the method returns a null string.
The address of the first character of the unmanaged string.
Allocates a managed , copies a specified number of characters from an unmanaged ANSI string into it, and widens each ANSI character to Unicode.
A managed string that holds a copy of the native ANSI string if the value of the parameter is not null; otherwise, this method returns null.
The address of the first character of the unmanaged string.
The byte count of the input string to copy.
is less than zero.
Allocates a managed and copies a BSTR Data Type string stored in unmanaged memory into it.
A managed string that holds a copy of the unmanaged string if the value of the parameter is not null; otherwise, this method returns null.
The address of the first character of the unmanaged string.
Allocates a managed and copies all characters up to the first null character from an unmanaged Unicode string into it.
A managed string that holds a copy of the unmanaged string if the value of the parameter is not null; otherwise, this method returns null.
The address of the first character of the unmanaged string.
Allocates a managed and copies a specified number of characters from an unmanaged Unicode string into it.
A managed string that holds a copy of the unmanaged string if the value of the parameter is not null; otherwise, this method returns null.
The address of the first character of the unmanaged string.
The number of Unicode characters to copy.
[Supported in the .NET Framework 4.5.1 and later versions] Marshals data from an unmanaged block of memory to a newly allocated managed object of the type specified by a generic type parameter.
A managed object that contains the data that the parameter points to.
A pointer to an unmanaged block of memory.
The type of the object to which the data is to be copied. This must be a formatted class or a structure.
The layout of is not sequential or explicit.
The class specified by does not have an accessible default constructor.
Marshals data from an unmanaged block of memory to a managed object.
A pointer to an unmanaged block of memory.
The object to which the data is to be copied. This must be an instance of a formatted class.
Structure layout is not sequential or explicit.-or- Structure is a boxed value type.
Marshals data from an unmanaged block of memory to a newly allocated managed object of the specified type.
A managed object containing the data pointed to by the parameter.
A pointer to an unmanaged block of memory.
The type of object to be created. This object must represent a formatted class or a structure.
The parameter layout is not sequential or explicit.-or-The parameter is a generic type.
is null.
The class specified by does not have an accessible default constructor.
[Supported in the .NET Framework 4.5.1 and later versions] Marshals data from an unmanaged block of memory to a managed object of the specified type.
A pointer to an unmanaged block of memory.
The object to which the data is to be copied.
The type of . This must be a formatted class.
Structure layout is not sequential or explicit.
Requests a pointer to a specified interface from a COM object.
An HRESULT that indicates the success or failure of the call.
The interface to be queried.
The interface identifier (IID) of the requested interface.
When this method returns, contains a reference to the returned interface.
Reads a single byte from unmanaged memory.
The byte read from unmanaged memory.
The address in unmanaged memory from which to read.
is not a recognized format.-or- is null. -or- is invalid.
Reads a single byte at a given offset (or index) from unmanaged memory.
The byte read from unmanaged memory at the given offset.
The base address in unmanaged memory from which to read.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
Reads a single byte at a given offset (or index) from unmanaged memory.
The byte read from unmanaged memory at the given offset.
The base address in unmanaged memory of the source object.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Reads a 16-bit signed integer from unmanaged memory.
The 16-bit signed integer read from unmanaged memory.
The address in unmanaged memory from which to read.
is not a recognized format.-or- is null.-or- is invalid.
Reads a 16-bit signed integer at a given offset from unmanaged memory.
The 16-bit signed integer read from unmanaged memory at the given offset.
The base address in unmanaged memory from which to read.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
Reads a 16-bit signed integer at a given offset from unmanaged memory.
The 16-bit signed integer read from unmanaged memory at the given offset.
The base address in unmanaged memory of the source object.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Reads a 32-bit signed integer from unmanaged memory.
The 32-bit signed integer read from unmanaged memory.
The address in unmanaged memory from which to read.
is not a recognized format.-or- is null.-or- is invalid.
Reads a 32-bit signed integer at a given offset from unmanaged memory.
The 32-bit signed integer read from unmanaged memory.
The base address in unmanaged memory from which to read.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
Reads a 32-bit signed integer at a given offset from unmanaged memory.
The 32-bit signed integer read from unmanaged memory at the given offset.
The base address in unmanaged memory of the source object.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Reads a 64-bit signed integer from unmanaged memory.
The 64-bit signed integer read from unmanaged memory.
The address in unmanaged memory from which to read.
is not a recognized format.-or- is null.-or- is invalid.
Reads a 64-bit signed integer at a given offset from unmanaged memory.
The 64-bit signed integer read from unmanaged memory at the given offset.
The base address in unmanaged memory from which to read.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
Reads a 64-bit signed integer at a given offset from unmanaged memory.
The 64-bit signed integer read from unmanaged memory at the given offset.
The base address in unmanaged memory of the source object.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Reads a processor native-sized integer from unmanaged memory.
The integer read from unmanaged memory. A 32 bit integer is returned on 32 bit machines and a 64 bit integer is returned on 64 bit machines.
The address in unmanaged memory from which to read.
is not a recognized format.-or- is null. -or- is invalid.
Reads a processor native sized integer at a given offset from unmanaged memory.
The integer read from unmanaged memory at the given offset.
The base address in unmanaged memory from which to read.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
Reads a processor native sized integer from unmanaged memory.
The integer read from unmanaged memory at the given offset.
The base address in unmanaged memory of the source object.
An additional byte offset, which is added to the parameter before reading.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Resizes a block of memory previously allocated with .
An integer representing the address of the reallocated block of memory. This memory must be released with .
A pointer to memory allocated with .
The new size of the allocated block.
There is insufficient memory to satisfy the request.
Resizes a block of memory previously allocated with .
A pointer to the reallocated memory. This memory must be released using .
A pointer to memory allocated with .
The new size of the allocated block. This is not a pointer; it is the byte count you are requesting, cast to type . If you pass a pointer, it is treated as a size.
There is insufficient memory to satisfy the request.
Decrements the reference count on the specified interface.
The new value of the reference count on the interface specified by the parameter.
The interface to release.
Decrements the reference count of the specified Runtime Callable Wrapper (RCW) associated with the specified COM object.
The new value of the reference count of the RCW associated with . This value is typically zero since the RCW keeps just one reference to the wrapped COM object regardless of the number of managed clients calling it.
The COM object to release.
is not a valid COM object.
is null.
[Supported in the .NET Framework 4.5.1 and later versions] Returns the size of an unmanaged type in bytes.
The size, in bytes, of the type that is specified by the generic type parameter.
The type whose size is to be returned.
Returns the unmanaged size of an object in bytes.
The size of the specified object in unmanaged code.
The object whose size is to be returned.
The parameter is null.
Returns the size of an unmanaged type in bytes.
The size of the specified type in unmanaged code.
The type whose size is to be returned.
The parameter is a generic type.
The parameter is null.
[Supported in the .NET Framework 4.5.1 and later versions] Returns the unmanaged size of an object of a specified type in bytes.
The size, in bytes, of the specified object in unmanaged code.
The object whose size is to be returned.
The type of the parameter.
The parameter is null.
Allocates a BSTR Data Type and copies the contents of a managed into it.
An unmanaged pointer to the BSTR, or 0 if is null.
The managed string to be copied.
There is insufficient memory available.
The length for is out of range.
Copies the contents of a managed to a block of memory allocated from the unmanaged COM task allocator.
An integer representing a pointer to the block of memory allocated for the string, or 0 if is null.
A managed string to be copied.
There is insufficient memory available.
The parameter exceeds the maximum length allowed by the operating system.
Copies the contents of a managed to a block of memory allocated from the unmanaged COM task allocator.
An integer representing a pointer to the block of memory allocated for the string, or 0 if s is null.
A managed string to be copied.
The parameter exceeds the maximum length allowed by the operating system.
There is insufficient memory available.
Copies the contents of a managed into unmanaged memory, converting into ANSI format as it copies.
The address, in unmanaged memory, to where was copied, or 0 if is null.
A managed string to be copied.
There is insufficient memory available.
The parameter exceeds the maximum length allowed by the operating system.
Copies the contents of a managed into unmanaged memory.
The address, in unmanaged memory, to where the was copied, or 0 if is null.
A managed string to be copied.
The method could not allocate enough native heap memory.
The parameter exceeds the maximum length allowed by the operating system.
Marshals data from a managed object to an unmanaged block of memory.
A managed object that holds the data to be marshaled. This object must be a structure or an instance of a formatted class.
A pointer to an unmanaged block of memory, which must be allocated before this method is called.
true to call the method on the parameter before this method copies the data. The block must contain valid data. Note that passing false when the memory block already contains data can lead to a memory leak.
is a reference type that is not a formatted class. -or- is a generic type.
[Supported in the .NET Framework 4.5.1 and later versions] Marshals data from a managed object of a specified type to an unmanaged block of memory.
A managed object that holds the data to be marshaled. The object must be a structure or an instance of a formatted class.
A pointer to an unmanaged block of memory, which must be allocated before this method is called.
true to call the method on the parameter before this method copies the data. The block must contain valid data. Note that passing false when the memory block already contains data can lead to a memory leak.
The type of the managed object.
is a reference type that is not a formatted class.
Represents the default character size on the system; the default is 2 for Unicode systems and 1 for ANSI systems. This field is read-only.
Represents the maximum size of a double byte character set (DBCS) size, in bytes, for the current operating system. This field is read-only.
Throws an exception with a specific failure HRESULT value.
The HRESULT corresponding to the desired exception.
Throws an exception with a specific failure HRESULT, based on the specified IErrorInfo Interface interface.
The HRESULT corresponding to the desired exception.
A pointer to the IErrorInfo interface that provides more information about the error. You can specify IntPtr(0) to use the current IErrorInfo interface, or IntPtr(-1) to ignore the current IErrorInfo interface and construct the exception just from the error code.
Gets the address of the element at the specified index inside the specified array.
The address of inside .
The array that contains the desired element.
The index in the parameter of the desired element.
[Supported in the .NET Framework 4.5.1 and later versions] Gets the address of the element at the specified index in an array of a specified type.
The address of in .
The array that contains the desired element.
The index of the desired element in the array.
The type of the array.
Writes a single byte value to unmanaged memory.
The address in unmanaged memory to write to.
The value to write.
is not a recognized format.-or- is null.-or- is invalid.
Writes a single byte value to unmanaged memory at a specified offset.
The base address in unmanaged memory to write to.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
Writes a single byte value to unmanaged memory at a specified offset.
The base address in unmanaged memory of the target object.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Writes a character as a 16-bit integer value to unmanaged memory.
The address in unmanaged memory to write to.
The value to write.
is not a recognized format.-or- is null.-or- is invalid.
Writes a 16-bit integer value to unmanaged memory.
The address in unmanaged memory to write to.
The value to write.
is not a recognized format.-or- is null.-or- is invalid.
Writes a 16-bit signed integer value to unmanaged memory at a specified offset.
The base address in the native heap to write to.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
Writes a 16-bit signed integer value into unmanaged memory at a specified offset.
The base address in unmanaged memory to write to.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
Writes a 16-bit signed integer value to unmanaged memory at a specified offset.
The base address in unmanaged memory of the target object.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Writes a 16-bit signed integer value to unmanaged memory at a specified offset.
The base address in unmanaged memory of the target object.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Writes a 32-bit signed integer value to unmanaged memory.
The address in unmanaged memory to write to.
The value to write.
is not a recognized format.-or- is null. -or- is invalid.
Writes a 32-bit signed integer value into unmanaged memory at a specified offset.
The base address in unmanaged memory to write to.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
Writes a 32-bit signed integer value to unmanaged memory at a specified offset.
The base address in unmanaged memory of the target object.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Writes a 64-bit signed integer value to unmanaged memory at a specified offset.
The base address in unmanaged memory to write.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
Writes a 64-bit signed integer value to unmanaged memory.
The address in unmanaged memory to write to.
The value to write.
is not a recognized format.-or- is null.-or- is invalid.
Writes a 64-bit signed integer value to unmanaged memory at a specified offset.
The base address in unmanaged memory of the target object.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Writes a processor native-sized integer value to unmanaged memory at a specified offset.
The base address in unmanaged memory to write to.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
Writes a processor native sized integer value into unmanaged memory.
The address in unmanaged memory to write to.
The value to write.
is not a recognized format.-or- is null.-or- is invalid.
Writes a processor native sized integer value to unmanaged memory.
The base address in unmanaged memory of the target object.
An additional byte offset, which is added to the parameter before writing.
The value to write.
Base address () plus offset byte () produces a null or invalid address.
is an object. This method does not accept parameters.
Frees a BSTR Data Type pointer that was allocated using the method.
The address of the BSTR to free.
Frees an unmanaged string pointer that was allocated using the method.
The address of the unmanaged string to free.
Frees an unmanaged string pointer that was allocated using the method.
The address of the unmanaged string to free.
Frees an unmanaged string pointer that was allocated using the method.
The address of the unmanaged string to free.
Frees an unmanaged string pointer that was allocated using the method.
The address of the unmanaged string to free.
Indicates how to marshal the data between managed and unmanaged code.
Initializes a new instance of the class with the specified value.
The value the data is to be marshaled as.
Initializes a new instance of the class with the specified enumeration member.
The value the data is to be marshaled as.
Specifies the element type of the unmanaged or .
Specifies the parameter index of the unmanaged iid_is attribute used by COM.
Provides additional information to a custom marshaler.
Specifies the fully qualified name of a custom marshaler.
Implements as a type.
Indicates the element type of the .
Indicates the user-defined element type of the .
Indicates the number of elements in the fixed-length array or the number of characters (not bytes) in a string to import.
Indicates the zero-based parameter that contains the count of array elements, similar to size_is in COM.
Gets the value the data is to be marshaled as.
The value the data is to be marshaled as.
The exception that is thrown by the marshaler when it encounters a it does not support.
Initializes a new instance of the MarshalDirectiveException class with default properties.
Initializes a new instance of the MarshalDirectiveException class with a specified error message.
The error message that specifies the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
Indicates that a parameter is optional.
Initializes a new instance of the OptionalAttribute class with default values.
Indicates that the HRESULT or retval signature transformation that takes place during COM interop calls should be suppressed.
Initializes a new instance of the class.
The exception thrown when the rank of an incoming SAFEARRAY does not match the rank specified in the managed signature.
Initializes a new instance of the SafeArrayTypeMismatchException class with default values.
Initializes a new instance of the SafeArrayRankMismatchException class with the specified message.
The message that indicates the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
The exception thrown when the type of the incoming SAFEARRAY does not match the type specified in the managed signature.
Initializes a new instance of the SafeArrayTypeMismatchException class with default values.
Initializes a new instance of the SafeArrayTypeMismatchException class with the specified message.
The message that indicates the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
Provides a controlled memory buffer that can be used for reading and writing. Attempts to access memory outside the controlled buffer (underruns and overruns) raise exceptions.
Creates a new instance of the class, and specifies whether the buffer handle is to be reliably released.
true to reliably release the handle during the finalization phase; false to prevent reliable release (not recommended).
Obtains a pointer from a object for a block of memory.
A byte pointer, passed by reference, to receive the pointer from within the object. You must set this pointer to null before you call this method.
The method has not been called.
Gets the size of the buffer, in bytes.
The number of bytes in the memory buffer.
The method has not been called.
Defines the allocation size of the memory region by specifying the number of value types. You must call this method before you use the instance.
The number of elements of the value type to allocate memory for.
The value type to allocate memory for.
is less than zero.-or- multiplied by the size of each element is greater than the available address space.
Specifies the allocation size of the memory buffer by using the specified number of elements and element size. You must call this method before you use the instance.
The number of elements in the buffer.
The size of each element in the buffer.
is less than zero. -or- is less than zero.-or- multiplied by is greater than the available address space.
Defines the allocation size of the memory region in bytes. You must call this method before you use the instance.
The number of bytes in the buffer.
is less than zero.-or- is greater than the available address space.
Reads a value type from memory at the specified offset.
The value type that was read from memory.
The location from which to read the value type. You may have to consider alignment issues.
The value type to read.
The method has not been called.
Reads the specified number of value types from memory starting at the offset, and writes them into an array starting at the index.
The location from which to start reading.
The output array to write to.
The location in the output array to begin writing to.
The number of value types to read from the input array and to write to the output array.
The value type to read.
is less than zero.-or- is less than zero.
is null.
The length of the array minus the index is less than .
The method has not been called.
Releases a pointer that was obtained by the method.
The method has not been called.
Writes a value type to memory at the given location.
The location at which to start writing. You may have to consider alignment issues.
The value to write.
The value type to write.
The method has not been called.
Writes the specified number of value types to a memory location by reading bytes starting from the specified location in the input array.
The location in memory to write to.
The input array.
The offset in the array to start reading from.
The number of value types to write.
The value type to write.
is null.
or is less than zero.
The length of the input array minus is less than .
The method has not been called.
Represents structured exception handling (SEH) errors.
Initializes a new instance of the class.
Initializes a new instance of the class with a specified message.
The message that indicates the reason for the exception.
Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception.
Indicates whether the exception can be recovered from, and whether the code can continue from the point at which the exception was thrown.
Always false, because resumable exceptions are not implemented.
Provides support for type equivalence.
Creates a new instance of the class.
Creates a new instance of the class with the specified scope and identifier.
The first type equivalence string.
The second type equivalence string.
Gets the value of the parameter that was passed to the constructor.
The value of the constructor's parameter.
Gets the value of the parameter that was passed to the constructor.
The value of the constructor's parameter.
Wraps objects the marshaler should marshal as a VT_UNKNOWN.
Initializes a new instance of the class with the object to be wrapped.
The object being wrapped.
Gets the object contained by this wrapper.
The wrapped object.
Controls the marshaling behavior of a delegate signature passed as an unmanaged function pointer to or from unmanaged code. This class cannot be inherited.
Initializes a new instance of the class with the specified calling convention.
The specified calling convention.
Enables or disables best-fit mapping behavior when converting Unicode characters to ANSI characters.
Gets the value of the calling convention.
The value of the calling convention specified by the constructor.
Indicates how to marshal string parameters to the method, and controls name mangling.
Indicates whether the callee calls the SetLastError Win32 API function before returning from the attributed method.
Enables or disables the throwing of an exception on an unmappable Unicode character that is converted to an ANSI "?" character.
Identifies how to marshal parameters or fields to unmanaged code.
An ANSI character string that is a length-prefixed single byte. You can use this member on the data type.
A dynamic type that determines the type of an object at run time and marshals the object as that type. This member is valid for platform invoke methods only.
A 4-byte Boolean value (true != 0, false = 0). This is the Win32 BOOL type.
A Unicode character string that is a length-prefixed double byte. You can use this member, which is the default string in COM, on the data type.
When the property is set to ByValArray, the field must be set to indicate the number of elements in the array. The field can optionally contain the of the array elements when it is necessary to differentiate among string types. You can use this only on an array that whose elements appear as fields in a structure.
Used for in-line, fixed-length character arrays that appear within a structure. The character type used with is determined by the argument of the attribute applied to the containing structure. Always use the field to indicate the size of the array.
A currency type. Used on a to marshal the decimal value as a COM currency type instead of as a Decimal.
A native type that is associated with an or an and that causes the parameter to be exported as an HRESULT in the exported type library.
An integer that can be used as a C-style function pointer. You can use this member on a data type or on a type that inherits from a .
A Windows Runtime string. You can use this member on the data type.
A 1-byte signed integer. You can use this member to transform a Boolean value into a 1-byte, C-style bool (true = 1, false = 0).
A 2-byte signed integer.
A 4-byte signed integer.
An 8-byte signed integer.
A COM IDispatch pointer (Object in Microsoft Visual Basic 6.0).
A Windows Runtime interface pointer. You can use this member on the data type.
A COM interface pointer. The of the interface is obtained from the class metadata. Use this member to specify the exact interface type or the default interface type if you apply it to a class. This member produces the same behavior as when you apply it to the data type.
A COM IUnknown pointer. You can use this member on the data type.
A pointer to the first element of a C-style array. When marshaling from managed to unmanaged code, the length of the array is determined by the length of the managed array. When marshaling from unmanaged to managed code, the length of the array is determined from the and fields, optionally followed by the unmanaged type of the elements within the array when it is necessary to differentiate among string types.
A single byte, null-terminated ANSI character string. You can use this member on the and data types.
A pointer to a C-style structure that you use to marshal managed formatted classes. This member is valid for platform invoke methods only.
A platform-dependent character string: ANSI on Windows 98, and Unicode on Windows NT and Windows XP. This value is supported only for platform invoke and not for COM interop, because exporting a string of type LPTStr is not supported.
A 2-byte, null-terminated Unicode character string.
A 4-byte floating-point number.
An 8-byte floating-point number.
A SafeArray, which is a self-describing array that carries the type, rank, and bounds of the associated array data. You can use this member with the field to override the default element type.
A VARIANT, which is used to marshal managed formatted classes and value types.
A platform-dependent, signed integer: 4 bytes on 32-bit Windows, 8 bytes on 64-bit Windows.
A platform-dependent, unsigned integer: 4 bytes on 32-bit Windows, 8 bytes on 64-bit Windows.
A length-prefixed, platform-dependent char string: ANSI on Windows 98, Unicode on Windows NT. You rarely use this BSTR-like member.
A 1-byte unsigned integer.
A 2-byte unsigned integer.
A 4-byte unsigned integer.
An 8-byte unsigned integer.
A 2-byte, OLE-defined VARIANT_BOOL type (true = -1, false = 0).
A value that enables Visual Basic to change a string in unmanaged code and have the results reflected in managed code. This value is only supported for platform invoke.
Indicates how to marshal the array elements when an array is marshaled from managed to unmanaged code as a .
Indicates a SAFEARRAY pointer.
Indicates length prefixed bytes.
Indicates that a blob contains an object.
Indicates a Boolean value.
Indicates a BSTR string.
Indicates that a value is a reference.
Indicates a C style array.
Indicates the clipboard format.
Indicates a class ID.
Indicates a currency value.
Indicates a DATE value.
Indicates a decimal value.
Indicates an IDispatch pointer.
Indicates that a value was not specified.
Indicates an SCODE.
Indicates a FILETIME value.
Indicates an HRESULT.
Indicates a char value.
Indicates a short integer.
Indicates a long integer.
Indicates a 64-bit integer.
Indicates an integer value.
Indicates a null-terminated string.
Indicates a wide string terminated by null.
Indicates a null value, similar to a null value in SQL.
Indicates a pointer type.
Indicates a float value.
Indicates a double value.
Indicates a user defined type.
Indicates a SAFEARRAY. Not valid in a VARIANT.
Indicates that the name of a storage follows.
Indicates that a storage contains an object.
Indicates that the name of a stream follows.
Indicates that a stream contains an object.
Indicates a byte.
Indicates an unsignedshort.
Indicates an unsignedlong.
Indicates an 64-bit unsigned integer.
Indicates an unsigned integer value.
Indicates an IUnknown pointer.
Indicates a user defined type.
Indicates a VARIANT far pointer.
Indicates a simple, counted array.
Indicates a C style void.
Marshals data of type VT_VARIANT | VT_BYREF from managed to unmanaged code. This class cannot be inherited.
Initializes a new instance of the class for the specified parameter.
The object to marshal.
Gets the object wrapped by the object.
The object wrapped by the object.
Specifies the requested behavior when setting up an advise sink or a caching connection with an object.
For data advisory connections, assures accessibility to data.
For data advisory connections ( or ), this flag requests the data object not to send data when it calls .
Requests that the object make only one change notification or cache update before deleting the connection.
Requests that the object not wait for the data or view to change before making an initial call to (for data or view advisory connections) or updating the cache (for cache connections).
This value is used by DLL object applications and object handlers that perform the drawing of their objects.
Synonym for , which is used more often.
For cache connections, this flag updates the cached representation only when the object containing the cache is saved.
Stores the parameters that are used during a moniker binding operation.
Specifies the size, in bytes, of the BIND_OPTS structure.
Indicates the amount of time (clock time in milliseconds, as returned by the GetTickCount function) that the caller specified to complete the binding operation.
Controls aspects of moniker binding operations.
Represents flags that should be used when opening the file that contains the object identified by the moniker.
Contains a pointer to a bound-to structure, structure, or an ITypeComp interface.
Represents a pointer to a structure.
Represents a pointer to an interface.
Represents a pointer to a structure.
Identifies the calling convention used by a method described in a METHODDATA Data Type structure.
Indicates that the C declaration (CDECL) calling convention is used for a method.
Indicates that the Macintosh Pascal (MACPASCAL) calling convention is used for a method.
Indicates the end of the enumeration.
Indicates that the Macintosh Programmers' Workbench (MPW) CDECL calling convention is used for a method.
Indicates that the Macintosh Programmers' Workbench (MPW) PASCAL calling convention is used for a method.
Indicates that the MSC Pascal (MSCPASCAL) calling convention is used for a method.
Indicates that the Pascal calling convention is used for a method.
This value is reserved for future use.
Indicates that the standard calling convention (STDCALL) is used for a method.
Indicates that the standard SYSCALL calling convention is used for a method.
Describes a connection that exists to a given connection point.
Represents a connection token that is returned from a call to .
Represents a pointer to the IUnknown interface on a connected advisory sink. The caller must call IUnknown::Release on this pointer when the CONNECTDATA structure is no longer needed.
Specifies the direction of the data flow in the parameter of the method. This determines the formats that the resulting enumerator can enumerate.
Requests that supply an enumerator for the formats that can be specified in .
Requests that supply an enumerator for the formats that can be specified in .
Identifies the type description being bound to.
Indicates that a structure was returned.
Indicates that an IMPLICITAPPOBJ was returned.
Indicates an end-of-enumeration marker.
Indicates that no match was found.
Indicates that a TYPECOMP was returned.
Indicates that a VARDESC was returned.
Contains the arguments passed to a method or property by IDispatch::Invoke.
Represents the count of arguments.
Represents the count of named arguments
Represents the dispatch IDs of named arguments.
Represents a reference to the array of arguments.
Specifies the desired data or view aspect of the object when drawing or getting data.
A representation of an object that lets that object be displayed as an embedded object inside a container. This value is typically specified for compound document objects. The presentation can be provided for the screen or printer.
A representation of an object on the screen as though it were printed to a printer using the Print command from the File menu. The described data may represent a sequence of pages.
An iconic representation of an object.
A thumbnail representation of an object that lets that object be displayed in a browsing tool. The thumbnail is approximately a 120 by 120 pixel, 16-color (recommended), device-independent bitmap potentially wrapped in a metafile.
Contains the type description and process transfer information for a variable, function, or a function parameter.
Contains information about an element.
Identifies the type of the element.
Contains information about an element.
Contains information for remoting the element.
Contains information about the parameter.
Describes the exceptions that occur during IDispatch::Invoke.
Describes the error intended for the customer.
Contains the fully-qualified drive, path, and file name of a Help file that contains more information about the error.
Indicates the name of the source of the exception. Typically, this is an application name.
Indicates the Help context ID of the topic within the Help file.
Represents a pointer to a function that takes an structure as an argument and returns an HRESULT value. If deferred fill-in is not desired, this field is set to null.
This field is reserved; it must be set to null.
A return value describing the error.
Represents an error code identifying the error.
This field is reserved; it must be set to 0.
Represents the number of 100-nanosecond intervals since January 1, 1601. This structure is a 64-bit value.
Specifies the high 32 bits of the FILETIME.
Specifies the low 32 bits of the FILETIME.
Represents a generalized Clipboard format.
Specifies the particular clipboard format of interest.
Specifies one of the enumeration constants that indicates how much detail should be contained in the rendering.
Specifies part of the aspect when the data must be split across page boundaries.
Specifies a pointer to a DVTARGETDEVICE structure containing information about the target device that the data is being composed for.
Specifies one of the enumeration constants, which indicates the type of storage medium used to transfer the object's data.
Defines a function description.
Specifies the calling convention of a function.
Counts the total number of parameters.
Counts the optional parameters.
Counts the permitted return values.
Contains the return type of the function.
Specifies whether the function is virtual, static, or dispatch-only.
Specifies the type of a property function.
Indicates the size of .
Stores the count of errors a function can return on a 16-bit system.
Identifies the function member ID.
Specifies the offset in the VTBL for .
Indicates the of a function.
Identifies the constants that define the properties of a function.
The function that supports data binding.
The function that best represents the object. Only one function in a type can have this attribute.
Permits an optimization in which the compiler looks for a member named "xyz" on the type of "abc". If such a member is found, and is flagged as an accessor function for an element of the default collection, a call is generated to that member function. Permitted on members in dispinterfaces and interfaces; not permitted on modules.
The function that is displayed to the user as bindable. must also be set.
The function should not be displayed to the user, although it exists and is bindable.
Mapped as individual bindable properties.
The property appears in an object browser, but not in a properties browser.
Tags the interface as having default behaviors.
When set, any call to a method that sets the property results first in a call to IPropertyNotifySink::OnRequestEdit. The implementation of OnRequestEdit determines if the call is allowed to set the property.
The function should not be accessible from macro languages. This flag is intended for system-level functions or functions that type browsers should not display.
The function returns an object that is a source of events.
The type information member is the default member for display in the user interface.
The function supports GetLastError. If an error occurs during the function, the caller can call GetLastError to retrieve the error code.
Defines how to access a function.
The function can be accessed only through IDispatch.
The function is accessed by static address and takes an implicit this pointer.
The function is accessed through the virtual function table (VTBL), and takes an implicit this pointer.
The function is accessed by static address and does not take an implicit this pointer.
The function is accessed in the same way as , except the function has an implementation.
Provides a managed definition of the IAdviseSink interface.
Notifies all registered advisory sinks that the object has changed from the running state to the loaded state. This method is called by a server.
Notifies all data objects currently registered advisory sinks that data in the object has changed.
A , passed by reference, which describes the format, target device, rendering, and storage information of the calling data object.
A , passed by reference, which defines the storage medium (global memory, disk file, storage object, stream object, Graphics Device Interface (GDI) object, or undefined) and ownership of that medium for the calling data object.
Notifies all registered advisory sinks that the object has been renamed. This method is called by a server.
A pointer to the IMoniker interface on the new full moniker of the object.
Notifies all registered advisory sinks that the object has been saved. This method is called by a server.
Notifies an object's registered advisory sinks that its view has changed. This method is called by a server.
The aspect, or view, of the object. Contains a value taken from the enumeration.
The portion of the view that has changed. Currently, only -1 is valid.
Provides the managed definition of the IBindCtx interface.
Enumerates the strings that are the keys of the internally maintained table of contextual object parameters.
When this method returns, contains a reference to the object parameter enumerator. This parameter is passed uninitialized.
Returns the current binding options stored in the current bind context.
A pointer to the structure to receive the binding options.
Looks up the given key in the internally maintained table of contextual object parameters and returns the corresponding object, if one exists.
The name of the object to search for.
When this method returns, contains the object interface pointer. This parameter is passed uninitialized.
Returns access to the Running Object Table (ROT) relevant to this binding process.
When this method returns, contains a reference to the Running Object Table (ROT). This parameter is passed uninitialized.
Registers the passed object as one of the objects that has been bound during a moniker operation and that should be released when the operation is complete.
The object to register for release.
Registers the specified object pointer under the specified name in the internally maintained table of object pointers.
The name to register with.
The object to register.
Releases all the objects currently registered with the bind context by using the method.
Removes the object from the set of registered objects that need to be released.
The object to unregister for release.
Revokes the registration of the object currently found under the specified key in the internally maintained table of contextual object parameters, if that key is currently registered.
An S_OKHRESULT value if the specified key was successfully removed from the table; otherwise, an S_FALSEHRESULT value.
The key to unregister.
Stores a block of parameters in the bind context. These parameters will apply to later UCOMIMoniker operations that use this bind context.
The structure containing the binding options to set.
Provides the managed definition of the IConnectionPoint interface.
Establishes an advisory connection between the connection point and the caller's sink object.
A reference to the sink to receive calls for the outgoing interface managed by this connection point.
When this method returns, contains the connection cookie. This parameter is passed uninitialized.
Creates an enumerator object for iteration through the connections that exist to this connection point.
When this method returns, contains the newly created enumerator. This parameter is passed uninitialized.
Returns the IID of the outgoing interface managed by this connection point.
When this parameter returns, contains the IID of the outgoing interface managed by this connection point. This parameter is passed uninitialized.
Retrieves the IConnectionPointContainer interface pointer to the connectable object that conceptually owns this connection point.
When this parameter returns, contains the connectable object's IConnectionPointContainer interface. This parameter is passed uninitialized.
Terminates an advisory connection previously established through the method.
The connection cookie previously returned from the method.
Provides the managed definition of the IConnectionPointContainer interface.
Creates an enumerator of all the connection points supported in the connectable object, one connection point per IID.
When this method returns, contains the interface pointer of the enumerator. This parameter is passed uninitialized.
Asks the connectable object if it has a connection point for a particular IID, and if so, returns the IConnectionPoint interface pointer to that connection point.
A reference to the outgoing interface IID whose connection point is being requested.
When this method returns, contains the connection point that manages the outgoing interface . This parameter is passed uninitialized.
Contains information needed for transferring a structure element, parameter, or function return value between processes.
Reserved; set to null.
Indicates an value describing the type.
Describes how to transfer a structure element, parameter, or function return value between processes.
The parameter passes information from the caller to the callee.
The parameter is the local identifier of a client application.
The parameter returns information from the callee to the caller.
The parameter is the return value of the member.
Does not specify whether the parameter passes or receives information.
Manages the definition of the IEnumConnectionPoints interface.
Creates a new enumerator that contains the same enumeration state as the current one.
When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized.
Retrieves a specified number of items in the enumeration sequence.
S_OK if the parameter equals the parameter; otherwise, S_FALSE.
The number of IConnectionPoint references to return in .
When this method returns, contains a reference to the enumerated connections. This parameter is passed uninitialized.
When this method returns, contains a reference to the actual number of connections enumerated in .
Resets the enumeration sequence to the beginning.
Skips a specified number of items in the enumeration sequence.
S_OK if the number of elements skipped equals the parameter; otherwise, S_FALSE.
The number of elements to skip in the enumeration.
Manages the definition of the IEnumConnections interface.
Creates a new enumerator that contains the same enumeration state as the current one.
When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized.
Retrieves a specified number of items in the enumeration sequence.
S_OK if the parameter equals the parameter; otherwise, S_FALSE.
The number of structures to return in .
When this method returns, contains a reference to the enumerated connections. This parameter is passed uninitialized.
When this method returns, contains a reference to the actual number of connections enumerated in .
Resets the enumeration sequence to the beginning.
Skips a specified number of items in the enumeration sequence.
S_OK if the number of elements skipped equals the parameter; otherwise, S_FALSE.
The number of elements to skip in the enumeration.
Provides the managed definition of the IEnumFORMATETC interface.
Creates a new enumerator that contains the same enumeration state as the current enumerator.
When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized.
Retrieves a specified number of items in the enumeration sequence.
S_OK if the parameter equals the parameter; otherwise, S_FALSE.
The number of references to return in .
When this method returns, contains a reference to the enumerated references. This parameter is passed uninitialized.
When this method returns, contains a reference to the actual number of references enumerated in . This parameter is passed uninitialized.
Resets the enumeration sequence to the beginning.
An HRESULT with the value S_OK.
Skips a specified number of items in the enumeration sequence.
S_OK if the number of elements skipped equals the parameter; otherwise, S_FALSE.
The number of elements to skip in the enumeration.
Manages the definition of the IEnumMoniker interface.
Creates a new enumerator that contains the same enumeration state as the current one.
When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized.
Retrieves a specified number of items in the enumeration sequence.
S_OK if the parameter equals the parameter; otherwise, S_FALSE.
The number of monikers to return in .
When this method returns, contains a reference to the enumerated monikers. This parameter is passed uninitialized.
When this method returns, contains a reference to the actual number of monikers enumerated in .
Resets the enumeration sequence to the beginning.
Skips a specified number of items in the enumeration sequence.
S_OK if the number of elements skipped equals the parameter; otherwise, S_FALSE.
The number of elements to skip in the enumeration.
Manages the definition of the IEnumString interface.
Creates a new enumerator that contains the same enumeration state as the current one.
When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized.
Retrieves a specified number of items in the enumeration sequence.
S_OK if the parameter equals the parameter; otherwise, S_FALSE.
The number of strings to return in .
When this method returns, contains a reference to the enumerated strings. This parameter is passed uninitialized.
When this method returns, contains a reference to the actual number of strings enumerated in .
Resets the enumeration sequence to the beginning.
Skips a specified number of items in the enumeration sequence.
S_OK if the number of elements skipped equals the parameter; otherwise, S_FALSE.
The number of elements to skip in the enumeration.
Manages the definition of the IEnumVARIANT interface.
Creates a new enumerator that contains the same enumeration state as the current one.
An reference to the newly created enumerator.
Retrieves a specified number of items in the enumeration sequence.
S_OK if the parameter equals the parameter; otherwise, S_FALSE.
The number of elements to return in .
When this method returns, contains a reference to the enumerated elements. This parameter is passed uninitialized.
When this method returns, contains a reference to the actual number of elements enumerated in .
Resets the enumeration sequence to the beginning.
An HRESULT with the value S_OK.
Skips a specified number of items in the enumeration sequence.
S_OK if the number of elements skipped equals parameter; otherwise, S_FALSE.
The number of elements to skip in the enumeration.
Provides the managed definition of the IMoniker interface, with COM functionality from IPersist and IPersistStream.
Uses the moniker to bind to the object that it identifies.
A reference to the IBindCtx interface on the bind context object used in this binding operation.
A reference to the moniker to the left of the current moniker, if the moniker is part of a composite moniker.
The interface identifier (IID) of the interface that the client intends to use to communicate with the object that the moniker identifies.
When this method returns, contains a reference to the interface requested by . This parameter is passed uninitialized.
Retrieves an interface pointer to the storage that contains the object identified by the moniker.
A reference to the IBindCtx interface on the bind context object used during this binding operation.
A reference to the moniker to the left of the current moniker, if the moniker is part of a composite moniker.
The interface identifier (IID) of the storage interface requested.
When this method returns, contains a reference to the interface requested by . This parameter is passed uninitialized.
Creates a new moniker based on the common prefix that this moniker shares with another moniker.
A reference to the IMoniker interface on another moniker to compare with the current moniker for a common prefix.
When this method returns, contains the moniker that is the common prefix of the current moniker and . This parameter is passed uninitialized.
Combines the current moniker with another moniker, creating a new composite moniker.
A reference to the IMoniker interface on a moniker to append to the end of the current moniker.
true to indicate that the caller requires a nongeneric composition. The operation proceeds only if is a moniker class that the current moniker can combine with in some way other than forming a generic composite. false to indicate that the method can create a generic composite if necessary.
When this method returns, contains a reference to the resulting composite moniker. This parameter is passed uninitialized.
Supplies a pointer to an enumerator that can enumerate the components of a composite moniker.
true to enumerate the monikers from left to right. false to enumerate from right to left.
When this method returns, contains a reference to the enumerator object for the moniker. This parameter is passed uninitialized.
Retrieves the class identifier (CLSID) of an object.
When this method returns, contains the CLSID. This parameter is passed uninitialized.
Gets the display name, which is a user-readable representation of the current moniker.
A reference to the bind context to use in this operation.
A reference to the moniker to the left of the current moniker, if the moniker is part of a composite moniker.
When this method returns, contains the display name string. This parameter is passed uninitialized.
Returns the size, in bytes, of the stream needed to save the object.
When this method returns, contains a long value indicating the size, in bytes, of the stream needed to save this object. This parameter is passed uninitialized.
Provides a number representing the time that the object identified by the current moniker was last changed.
A reference to the bind context to use in this binding operation.
A reference to the moniker to the left of the current moniker, if the moniker is part of a composite moniker.
When this method returns, contains the time of the last change. This parameter is passed uninitialized.
Calculates a 32-bit integer using the internal state of the moniker.
When this method returns, contains the hash value for this moniker. This parameter is passed uninitialized.
Provides a moniker that, when composed to the right of the current moniker or one of similar structure, composes to nothing.
When this method returns, contains a moniker that is the inverse of the current moniker. This parameter is passed uninitialized.
Checks the object for changes since it was last saved.
An S_OKHRESULT value if the object has changed; otherwise, an S_FALSEHRESULT value.
Compares the current moniker with a specified moniker and indicates whether they are identical.
An S_OKHRESULT value if the monikers are identical; otherwise, an S_FALSEHRESULT value.
A reference to the moniker to use for comparison.
Determines whether the object that is identified by the current moniker is currently loaded and running.
An S_OKHRESULT value if the moniker is running; an S_FALSEHRESULT value if the moniker is not running; or an E_UNEXPECTEDHRESULT value.
A reference to the bind context to use in this binding operation.
A reference to the moniker to the left of the current moniker if the current moniker is part of a composite.
A reference to the moniker most recently added to the Running Object Table (ROT).
Indicates whether this moniker is of one of the system-supplied moniker classes.
An S_OKHRESULT value if the moniker is a system moniker; otherwise, an S_FALSEHRESULT value.
When this method returns, contains a pointer to an integer that is one of the values from the MKSYS enumeration, and refers to one of the COM moniker classes. This parameter is passed uninitialized.
Initializes an object from the stream where it was previously saved.
The stream that the object is loaded from.
Reads as many characters of the specified display name as the understands and builds a moniker corresponding to the portion read.
A reference to the bind context to use in this binding operation.
A reference to the moniker that has been built from the display name up to this point.
A reference to the string containing the remaining display name to parse.
When this method returns, contains the number of characters that were consumed in parsing . This parameter is passed uninitialized.
When this method returns, contains a reference to the moniker that was built from . This parameter is passed uninitialized.
Returns a reduced moniker, which is another moniker that refers to the same object as the current moniker but can be bound with equal or greater efficiency.
A reference to the IBindCtx interface on the bind context to use in this binding operation.
A value that specifies how far the current moniker should be reduced.
A reference to the moniker to the left of the current moniker.
When this method returns, contains a reference to the reduced form of the current moniker, which can be null if an error occurs or if the current moniker is reduced to nothing. This parameter is passed uninitialized.
Supplies a moniker that, when appended to the current moniker (or one with a similar structure), yields the specified moniker.
A reference to the moniker to which a relative path should be taken.
When this method returns, contains a reference to the relative moniker. This parameter is passed uninitialized.
Saves an object to the specified stream.
The stream to which the object is saved.
true to clear the modified flag after the save is complete; otherwise false
Defines the attributes of an implemented or inherited interface of a type.
The interface or dispinterface represents the default for the source or sink.
Sinks receive events through the virtual function table (VTBL).
The member should not be displayed or programmable by users.
This member of a coclass is called rather than implemented.
Specifies how to invoke a function by IDispatch::Invoke.
The member is called using a normal function invocation syntax.
The function is invoked using a normal property access syntax.
The function is invoked using a property value assignment syntax.
The function is invoked using a property reference assignment syntax.
Provides the managed definition of the IPersistFile interface, with functionality from IPersist.
Retrieves the class identifier (CLSID) of an object.
When this method returns, contains a reference to the CLSID. This parameter is passed uninitialized.
Retrieves either the absolute path to the current working file of the object or, if there is no current working file, the default file name prompt of the object.
When this method returns, contains the address of a pointer to a zero-terminated string containing the path for the current file, or the default file name prompt (such as *.txt). This parameter is passed uninitialized.
Checks an object for changes since it was last saved to its current file.
S_OK if the file has changed since it was last saved; S_FALSE if the file has not changed since it was last saved.
Opens the specified file and initializes an object from the file contents.
A zero-terminated string containing the absolute path of the file to open.
A combination of values from the STGM enumeration to indicate the access mode in which to open .
Saves a copy of the object into the specified file.
A zero-terminated string containing the absolute path of the file to which the object is saved.
true to used the parameter as the current working file; otherwise false.
Notifies the object that it can write to its file.
The absolute path of the file where the object was previously saved.
Provides the managed definition of the IRunningObjectTable interface.
Enumerates the objects currently registered as running.
When this method returns, contains the new enumerator for the Running Object Table (ROT). This parameter is passed uninitialized.
Returns the registered object if the supplied object name is registered as running.
An HRESULT value that indicates the success or failure of the operation.
A reference to the moniker to search for in the Running Object Table (ROT).
When this method returns, contains the requested running object. This parameter is passed uninitialized.
Searches for this moniker in the Running Object Table (ROT) and reports the recorded time of change, if present.
An HRESULT value that indicates the success or failure of the operation.
A reference to the moniker to search for in the Running Object Table (ROT).
When this object returns, contains the objects last change time. This parameter is passed uninitialized.
Determines whether the specified moniker is currently registered in the Running Object Table (ROT).
An HRESULT value that indicates the success or failure of the operation.
A reference to the moniker to search for in the Running Object Table (ROT).
Notes the time that a particular object changed so IMoniker::GetTimeOfLastChange can report an appropriate change time.
The Running Object Table (ROT) entry of the changed object.
A reference to the object's last change time.
Registers that the supplied object has entered the running state.
A value that can be used to identify this ROT entry in subsequent calls to or .
Specifies whether the Running Object Table's (ROT) reference to is weak or strong, and controls access to the object through its entry in the ROT.
A reference to the object being registered as running.
A reference to the moniker that identifies .
Unregisters the specified object from the Running Object Table (ROT).
The Running Object Table (ROT) entry to revoke.
Provides the managed definition of the IStream interface, with ISequentialStream functionality.
Creates a new stream object with its own seek pointer that references the same bytes as the original stream.
When this method returns, contains the new stream object. This parameter is passed uninitialized.
Ensures that any changes made to a stream object that is open in transacted mode are reflected in the parent storage.
A value that controls how the changes for the stream object are committed.
Copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream.
A reference to the destination stream.
The number of bytes to copy from the source stream.
On successful return, contains the actual number of bytes read from the source.
On successful return, contains the actual number of bytes written to the destination.
Restricts access to a specified range of bytes in the stream.
The byte offset for the beginning of the range.
The length of the range, in bytes, to restrict.
The requested restrictions on accessing the range.
Reads a specified number of bytes from the stream object into memory starting at the current seek pointer.
When this method returns, contains the data read from the stream. This parameter is passed uninitialized.
The number of bytes to read from the stream object.
A pointer to a ULONG variable that receives the actual number of bytes read from the stream object.
Discards all changes that have been made to a transacted stream since the last call.
Changes the seek pointer to a new location relative to the beginning of the stream, to the end of the stream, or to the current seek pointer.
The displacement to add to .
The origin of the seek. The origin can be the beginning of the file, the current seek pointer, or the end of the file.
On successful return, contains the offset of the seek pointer from the beginning of the stream.
Changes the size of the stream object.
The new size of the stream as a number of bytes.
Retrieves the structure for this stream.
When this method returns, contains a STATSTG structure that describes this stream object. This parameter is passed uninitialized.
Members in the STATSTG structure that this method does not return, thus saving some memory allocation operations.
Removes the access restriction on a range of bytes previously restricted with the method.
The byte offset for the beginning of the range.
The length, in bytes, of the range to restrict.
The access restrictions previously placed on the range.
Writes a specified number of bytes into the stream object starting at the current seek pointer.
The buffer to write this stream to.
The number of bytes to write to the stream.
On successful return, contains the actual number of bytes written to the stream object. If the caller sets this pointer to , this method does not provide the actual number of bytes written.
Provides the managed definition of the ITypeComp interface.
Maps a name to a member of a type, or binds global variables and functions contained in a type library.
The name to bind.
A hash value for computed by LHashValOfNameSys.
A flags word containing one or more of the invoke flags defined in the INVOKEKIND enumeration.
When this method returns, contains a reference to the type description that contains the item to which it is bound, if a FUNCDESC or VARDESC was returned. This parameter is passed uninitialized.
When this method returns, contains a reference to a DESCKIND enumerator that indicates whether the name bound-to is a VARDESC, FUNCDESC, or TYPECOMP. This parameter is passed uninitialized.
When this method returns, contains a reference to the bound-to VARDESC, FUNCDESC, or ITypeComp interface. This parameter is passed uninitialized.
Binds to the type descriptions contained within a type library.
The name to bind.
A hash value for determined by LHashValOfNameSys.
When this method returns, contains a reference to an ITypeInfo of the type to which was bound. This parameter is passed uninitialized.
When this method returns, contains a reference to an ITypeComp variable. This parameter is passed uninitialized.
Provides the managed definition of the Component Automation ITypeInfo interface.
Retrieves the addresses of static functions or variables, such as those defined in a DLL.
The member ID of the static member's address to retrieve.
One of the values that specifies whether the member is a property, and if so, what kind.
When this method returns, contains a reference to the static member. This parameter is passed uninitialized.
Creates a new instance of a type that describes a component class (coclass).
The object that acts as the controlling IUnknown.
The IID of the interface that the caller uses to communicate with the resulting object.
When this method returns, contains a reference to the created object. This parameter is passed uninitialized.
Retrieves the type library that contains this type description and its index within that type library.
When this method returns, contains a reference to the containing type library. This parameter is passed uninitialized.
When this method returns, contains a reference to the index of the type description within the containing type library. This parameter is passed uninitialized.
Retrieves a description or specification of an entry point for a function in a DLL.
The ID of the member function whose DLL entry description is to be returned.
One of the values that specifies the kind of member identified by .
If not null, the function sets to a BSTR that contains the name of the DLL.
If not null, the function sets to a BSTR that contains the name of the entry point.
If not null, and the function is defined by an ordinal, then is set to point to the ordinal.
Retrieves the documentation string, the complete Help file name and path, and the context ID for the Help topic for a specified type description.
The ID of the member whose documentation is to be returned.
When this method returns, contains the name of the item method. This parameter is passed uninitialized.
When this method returns, contains the documentation string for the specified item. This parameter is passed uninitialized.
When this method returns, contains a reference to the Help context associated with the specified item. This parameter is passed uninitialized.
When this method returns, contains the fully qualified name of the Help file. This parameter is passed uninitialized.
Retrieves the structure that contains information about a specified function.
The index of the function description to return.
When this method returns, contains a reference to a FUNCDESC structure that describes the specified function. This parameter is passed uninitialized.
Maps between member names and member IDs, and parameter names and parameter IDs.
An array of names to map.
The count of names to map.
When this method returns, contains a reference to an array in which name mappings are placed. This parameter is passed uninitialized.
Retrieves the value for one implemented interface or base interface in a type description.
The index of the implemented interface or base interface.
When this method returns, contains a reference to the IMPLTYPEFLAGS enumeration. This parameter is passed uninitialized.
Retrieves marshaling information.
The member ID that indicates which marshaling information is needed.
When this method returns, contains a reference to the opcode string used in marshaling the fields of the structure described by the referenced type description, or returns null if there is no information to return. This parameter is passed uninitialized.
Retrieves the variable with the specified member ID (or the name of the property or method and its parameters) that corresponds to the specified function ID.
The ID of the member whose name (or names) is to be returned.
When this method returns, contains the name (or names) associated with the member. This parameter is passed uninitialized.
The length of the array.
When this method returns, contains the number of names in the array. This parameter is passed uninitialized.
Retrieves the referenced type descriptions if a type description references other type descriptions.
A handle to the referenced type description to return.
When this method returns, contains the referenced type description. This parameter is passed uninitialized.
Retrieves the type description of the implemented interface types if a type description describes a COM class.
The index of the implemented type whose handle is returned.
When this method returns, contains a reference to a handle for the implemented interface. This parameter is passed uninitialized.
Retrieves a structure that contains the attributes of the type description.
When this method returns, contains a reference to the structure that contains the attributes of this type description. This parameter is passed uninitialized.
Retrieves the ITypeComp interface for the type description, which enables a client compiler to bind to the type description's members.
When this method returns, contains a reference to the ITypeComp interface of the containing type library. This parameter is passed uninitialized.
Retrieves a VARDESC structure that describes the specified variable.
The index of the variable description to return.
When this method returns, contains a reference to the VARDESC structure that describes the specified variable. This parameter is passed uninitialized.
Invokes a method, or accesses a property of an object, that implements the interface described by the type description.
A reference to the interface described by this type description.
A value that identifies the interface member.
Flags that describe the context of the invoke call.
A reference to a structure that contains an array of arguments, an array of DISPIDs for named arguments, and counts of the number of elements in each array.
A reference to the location at which the result is to be stored. If specifies DISPATCH_PROPERTYPUT or DISPATCH_PROPERTYPUTREF, is ignored. Set to null if no result is desired.
A pointer to an exception information structure, which is filled in only if DISP_E_EXCEPTION is returned.
If Invoke returns DISP_E_TYPEMISMATCH, indicates the index within of the argument with the incorrect type. If more than one argument returns an error, indicates only the first argument with an error. This parameter is passed uninitialized.
Releases a structure previously returned by the method.
A reference to the FUNCDESC structure to release.
Releases a structure previously returned by the method.
A reference to the TYPEATTR structure to release.
Releases a VARDESC structure previously returned by the method.
A reference to the VARDESC structure to release.
Provides the managed definition of the ITypeInfo2 interface.
Retrieves the addresses of static functions or variables, such as those defined in a DLL.
The member ID of the static member's address to retrieve.
One of the values that specifies whether the member is a property, and if so, what kind.
When this method returns, contains a reference to the static member. This parameter is passed uninitialized.
Creates a new instance of a type that describes a component class (coclass).
An object that acts as the controlling IUnknown.
The IID of the interface that the caller uses to communicate with the resulting object.
When this method returns, contains a reference to the created object. This parameter is passed uninitialized.
Gets all custom data items for the library.
A pointer to CUSTDATA, which holds all custom data items.
Gets all custom data from the specified function.
The index of the function to get the custom data for.
A pointer to CUSTDATA, which holds all custom data items.
Gets all custom data for the specified implementation type.
The index of the implementation type for the custom data.
A pointer to CUSTDATA which holds all custom data items.
Gets all of the custom data for the specified function parameter.
The index of the function to get the custom data for.
The index of the parameter of this function to get the custom data for.
A pointer to CUSTDATA, which holds all custom data items.
Gets the variable for the custom data.
The index of the variable to get the custom data for.
A pointer to CUSTDATA, which holds all custom data items.
Retrieves the type library that contains this type description and its index within that type library.
When this method returns, contains a reference to the containing type library. This parameter is passed uninitialized.
When this method returns, contains a reference to the index of the type description within the containing type library. This parameter is passed uninitialized.
Gets the custom data.
The GUID used to identify the data.
When this method returns, contains an Object that specifies where to put the retrieved data. This parameter is passed uninitialized.
Retrieves a description or specification of an entry point for a function in a DLL.
The ID of the member function whose DLL entry description is to be returned.
One of the values that specifies the kind of member identified by .
If not null, the function sets to a BSTR that contains the name of the DLL.
If not null, the function sets to a BSTR that contains the name of the entry point.
If not null, and the function is defined by an ordinal, then is set to point to the ordinal.
Retrieves the documentation string, the complete Help file name and path, and the context ID for the Help topic for a specified type description.
The ID of the member whose documentation is to be returned.
When this method returns, contains the name of the item method. This parameter is passed uninitialized.
When this method returns, contains the documentation string for the specified item. This parameter is passed uninitialized.
When this method returns, contains a reference to the Help context associated with the specified item. This parameter is passed uninitialized.
When this method returns, contains the fully qualified name of the Help file. This parameter is passed uninitialized.
Retrieves the documentation string, the complete Help file name and path, the localization context to use, and the context ID for the library Help topic in the Help file.
The member identifier for the type description.
When this method returns, contains a BSTR that contains the name of the specified item. If the caller does not need the item name, can be null. This parameter is passed uninitialized.
When this method returns, contains the Help localization context. If the caller does not need the Help context, can be null. This parameter is passed uninitialized.
When this method returns, contains a BSTR that contains the fully qualified name of the file containing the DLL used for the Help file. If the caller does not need the file name, can be null. This parameter is passed uninitialized.
Gets the custom data from the specified function.
The index of the function to get the custom data for.
The GUID used to identify the data.
When this method returns, contains an Object that specified where to put the data. This parameter is passed uninitialized.
Retrieves the structure that contains information about a specified function.
The index of the function description to return.
When this method returns, contains a reference to a FUNCDESC structure that describes the specified function. This parameter is passed uninitialized.
Binds to a specific member based on a known DISPID, where the member name is not known (for example, when binding to a default member).
The member identifier.
One of the values that specifies the kind of member identified by memid.
When this method returns, contains an index into the function. This parameter is passed uninitialized.
Maps between member names and member IDs, and parameter names and parameter IDs.
An array of names to map.
The count of names to map.
When this method returns, contains a reference to an array in which name mappings are placed. This parameter is passed uninitialized.
Gets the implementation type of the custom data.
The index of the implementation type for the custom data.
The GUID used to identify the data.
When this method returns, contains an Object that specifies where to put the retrieved data. This parameter is passed uninitialized.
Retrieves the value for one implemented interface or base interface in a type description.
The index of the implemented interface or base interface.
When this method returns, contains a reference to the IMPLTYPEFLAGS enumeration. This parameter is passed uninitialized.
Retrieves marshaling information.
The member ID that indicates which marshaling information is needed.
When this method returns, contains a reference to the opcode string used in marshaling the fields of the structure described by the referenced type description, or returns null if there is no information to return. This parameter is passed uninitialized.
Retrieves the variable with the specified member ID (or the name of the property or method and its parameters) that corresponds to the specified function ID.
The ID of the member whose name (or names) is to be returned.
When this method returns, contains the name (or names) associated with the member. This parameter is passed uninitialized.
The length of the array.
When this method returns, contains the number of names in the array. This parameter is passed uninitialized.
Gets the specified custom data parameter.
The index of the function to get the custom data for.
The index of the parameter of this function to get the custom data for.
The GUID used to identify the data.
When this method returns, contains an Object that specifies where to put the retrieved data. This parameter is passed uninitialized.
Retrieves the referenced type descriptions, if a type description references other type descriptions.
A handle to the referenced type description to return.
When this method returns, contains the referenced type description. This parameter is passed uninitialized.
Retrieves the type description of the implemented interface types, if a type description describes a COM class.
The index of the implemented type whose handle is returned.
When this method returns, contains a reference to a handle for the implemented interface. This parameter is passed uninitialized.
Retrieves a structure that contains the attributes of the type description.
When this method returns, contains a reference to the structure that contains the attributes of this type description. This parameter is passed uninitialized.
Retrieves the ITypeComp interface for the type description, which enables a client compiler to bind to the type description's members.
When this method returns, contains a reference to the ITypeComp of the containing type library. This parameter is passed uninitialized.
Returns the type flags without any allocations. This method returns a DWORD type flag, which expands the type flags without growing the TYPEATTR (type attribute).
When this method returns, contains a DWORD reference to a TYPEFLAG. This parameter is passed uninitialized.
Returns the TYPEKIND enumeration quickly, without doing any allocations.
When this method returns, contains a reference to a TYPEKIND enumeration. This parameter is passed uninitialized.
Gets the variable for the custom data.
The index of the variable to get the custom data for.
The GUID used to identify the data.
When this method returns, contains an Object that specifies where to put the retrieved data. This parameter is passed uninitialized.
Retrieves a VARDESC structure that describes the specified variable.
The index of the variable description to return.
When this method returns, contains a reference to the VARDESC structure that describes the specified variable. This parameter is passed uninitialized.
Binds to a specific member based on a known DISPID, where the member name is not known (for example, when binding to a default member).
The member identifier.
When this method returns, contains an index of . This parameter is passed uninitialized.
Invokes a method, or accesses a property of an object, that implements the interface described by the type description.
A reference to the interface described by this type description.
Identifier of the interface member.
Flags describing the context of the invoke call.
A reference to a structure that contains an array of arguments, an array of DISPIDs for named arguments, and counts of the number of elements in each array.
A reference to the location at which the result is to be stored. If specifies DISPATCH_PROPERTYPUT or DISPATCH_PROPERTYPUTREF, is ignored. Set to null if no result is desired.
A pointer to an exception information structure, which is filled in only if DISP_E_EXCEPTION is returned.
If Invoke returns DISP_E_TYPEMISMATCH, indicates the index of the argument with incorrect type. If more than one argument returns an error, indicates only the first argument with an error.
Releases a structure previously returned by the method.
A reference to the FUNCDESC structure to release.
Releases a structure previously returned by the method.
A reference to the TYPEATTR structure to release.
Releases a VARDESC structure previously returned by the method.
A reference to the VARDESC structure to release.
Provides the managed definition of the ITypeLib interface.
Finds occurrences of a type description in a type library.
The name to search for. This is an in/out parameter.
A hash value to speed up the search, computed by the LHashValOfNameSys function. If is 0, a value is computed.
When this method returns, contains an array of pointers to the type descriptions that contain the name specified in . This parameter is passed uninitialized.
An array of the MEMBERID 's of the found items; [i] is the MEMBERID that indexes into the type description specified by [i]. Cannot be null.
On entry, indicates how many instances to look for. For example, = 1 can be called to find the first occurrence. The search stops when one instance is found.On exit, indicates the number of instances that were found. If the in and out values of are identical, there might be more type descriptions that contain the name.
Retrieves the library's documentation string, the complete Help file name and path, and the context identifier for the library Help topic in the Help file.
The index of the type description whose documentation is to be returned.
When this method returns, contains a string that represents the name of the specified item. This parameter is passed uninitialized.
When this method returns, contains a string that represents the documentation string for the specified item. This parameter is passed uninitialized.
When this method returns, contains the Help context identifier associated with the specified item. This parameter is passed uninitialized.
When this method returns, contains a string that represents the fully qualified name of the Help file. This parameter is passed uninitialized.
Retrieves the structure that contains the library's attributes.
When this method returns, contains a structure that contains the library's attributes. This parameter is passed uninitialized.
Enables a client compiler to bind to a library's types, variables, constants, and global functions.
When this method returns, contains an instance of a ITypeComp instance for this ITypeLib. This parameter is passed uninitialized.
Retrieves the specified type description in the library.
The index of the ITypeInfo interface to return.
When this method returns, contains an ITypeInfo describing the type referenced by . This parameter is passed uninitialized.
Returns the number of type descriptions in the type library.
The number of type descriptions in the type library.
Retrieves the type description that corresponds to the specified GUID.
The IID of the interface or CLSID of the class whose type info is requested.
When this method returns, contains the requested ITypeInfo interface. This parameter is passed uninitialized.
Retrieves the type of a type description.
The index of the type description within the type library.
When this method returns, contains a reference to the TYPEKIND enumeration for the type description. This parameter is passed uninitialized.
Indicates whether a passed-in string contains the name of a type or member described in the library.
true if was found in the type library; otherwise, false.
The string to test. This is an in/out parameter.
The hash value of .
Releases the structure originally obtained from the method.
The TLIBATTR structure to release.
Provides a managed definition of the ITypeLib2 interface.
Finds occurrences of a type description in a type library.
The name to search for.
A hash value to speed up the search, computed by the LHashValOfNameSys function. If is 0, a value is computed.
When this method returns, contains an array of pointers to the type descriptions that contain the name specified in . This parameter is passed uninitialized.
When this method returns, contains an array of the MEMBERIDs of the found items; [i] is the MEMBERID that indexes into the type description specified by [i]. This parameter cannot be null. This parameter is passed uninitialized.
On entry, a value, passed by reference, that indicates how many instances to look for. For example, = 1 can be called to find the first occurrence. The search stops when one instance is found.On exit, indicates the number of instances that were found. If the in and out values of are identical, there might be more type descriptions that contain the name.
Gets all custom data items for the library.
A pointer to CUSTDATA, which holds all custom data items.
Gets the custom data.
A , passed by reference, that is used to identify the data.
When this method returns, contains an object that specifies where to put the retrieved data. This parameter is passed uninitialized.
Retrieves the library's documentation string, the complete Help file name and path, and the context identifier for the library Help topic in the Help file.
An index of the type description whose documentation is to be returned.
When this method returns, contains a string that specifies the name of the specified item. This parameter is passed uninitialized.
When this method returns, contains the documentation string for the specified item. This parameter is passed uninitialized.
When this method returns, contains the Help context identifier associated with the specified item. This parameter is passed uninitialized.
When this method returns, contains a string that specifies the fully qualified name of the Help file. This parameter is passed uninitialized.
Retrieves the library's documentation string, the complete Help file name and path, the localization context to use, and the context ID for the library Help topic in the Help file.
An index of the type description whose documentation is to be returned; if is -1, the documentation for the library is returned.
When this method returns, contains a BSTR that specifies the name of the specified item. If the caller does not need the item name, can be null. This parameter is passed uninitialized.
When this method returns, contains the Help localization context. If the caller does not need the Help context, can be null. This parameter is passed uninitialized.
When this method returns, contains a BSTR that specifies the fully qualified name of the file containing the DLL used for Help file. If the caller does not need the file name, can be null. This parameter is passed uninitialized.
Retrieves the structure that contains the library's attributes.
When this method returns, contains a structure that contains the library's attributes. This parameter is passed uninitialized.
Returns statistics about a type library that are required for efficient sizing of hash tables.
A pointer to a count of unique names. If the caller does not need this information, set to null.
When this method returns, contains a pointer to a change in the count of unique names. This parameter is passed uninitialized.
Enables a client compiler to bind to a library's types, variables, constants, and global functions.
When this method returns, contains an ITypeComp instance for this ITypeLib. This parameter is passed uninitialized.
Retrieves the specified type description in the library.
An index of the ITypeInfo interface to return.
When this method returns, contains an ITypeInfo describing the type referenced by . This parameter is passed uninitialized.
Returns the number of type descriptions in the type library.
The number of type descriptions in the type library.
Retrieves the type description that corresponds to the specified GUID.
The , passed by reference, that represents the IID of the CLSID interface of the class whose type info is requested.
When this method returns, contains the requested ITypeInfo interface. This parameter is passed uninitialized.
Retrieves the type of a type description.
The index of the type description within the type library.
When this method returns, contains a reference to the TYPEKIND enumeration for the type description. This parameter is passed uninitialized.
Indicates whether a passed-in string contains the name of a type or member described in the library.
true if was found in the type library; otherwise, false.
The string to test.
The hash value of .
Releases the structure originally obtained from the method.
The TLIBATTR structure to release.
Defines flags that apply to type libraries.
The type library describes controls and should not be displayed in type browsers intended for nonvisual objects.
The type library exists in a persisted form on disk.
The type library should not be displayed to users, although its use is not restricted. The type library should be used by controls. Hosts should create a new type library that wraps the control with extended properties.
The type library is restricted, and should not be displayed to users.
Contains information about how to transfer a structure element, parameter, or function return value between processes.
Represents a pointer to a value that is being passed between processes.
Represents bitmask values that describe the structure element, parameter, or return value.
Describes how to transfer a structure element, parameter, or function return value between processes.
The parameter has custom data.
The parameter has default behaviors defined.
The parameter passes information from the caller to the callee.
The parameter is the local identifier of a client application.
The parameter is optional.
The parameter returns information from the callee to the caller.
The parameter is the return value of the member.
Does not specify whether the parameter passes or receives information.
Provides the managed definition of the STATDATA structure.
Represents the enumeration value that determines when the advisory sink is notified of changes in the data.
Represents the interface that will receive change notifications.
Represents the token that uniquely identifies the advisory connection. This token is returned by the method that sets up the advisory connection.
Represents the structure for the data of interest to the advise sink. The advise sink receives notification of changes to the data specified by this structure.
Contains statistical information about an open storage, stream, or byte-array object.
Specifies the last access time for this storage, stream, or byte array.
Specifies the size, in bytes, of the stream or byte array.
Indicates the class identifier for the storage object.
Indicates the creation time for this storage, stream, or byte array.
Indicates the types of region locking supported by the stream or byte array.
Indicates the access mode that was specified when the object was opened.
Indicates the current state bits of the storage object (the value most recently set by the IStorage::SetStateBits method).
Indicates the last modification time for this storage, stream, or byte array.
Represents a pointer to a null-terminated string containing the name of the object described by this structure.
Reserved for future use.
Indicates the type of storage object, which is one of the values from the STGTY enumeration.
Provides the managed definition of the STGMEDIUM structure.
Represents a pointer to an interface instance that allows the sending process to control the way the storage is released when the receiving process calls the ReleaseStgMedium function. If is null, ReleaseStgMedium uses default procedures to release the storage; otherwise, ReleaseStgMedium uses the specified IUnknown interface.
Specifies the type of storage medium. The marshaling and unmarshaling routines use this value to determine which union member was used. This value must be one of the elements of the enumeration.
Represents a handle, string, or interface pointer that the receiving process can use to access the data being transferred.
Identifies the target operating system platform.
The target operating system for the type library is Apple Macintosh. By default, all data fields are aligned on even-byte boundaries.
The target operating system for the type library is 16-bit Windows systems. By default, data fields are packed.
The target operating system for the type library is 32-bit Windows systems. By default, data fields are naturally aligned (for example, 2-byte integers are aligned on even-byte boundaries; 4-byte integers are aligned on quad-word boundaries, and so on).
The target operating system for the type library is 64-bit Windows systems.
Provides the managed definition of the TYMED structure.
The storage medium is an enhanced metafile. If the member is null, the destination process should use DeleteEnhMetaFile to delete the bitmap.
The storage medium is a disk file identified by a path. If the STGMEDIUM member is null, the destination process should use OpenFile to delete the file.
The storage medium is a Graphics Device Interface (GDI) component (HBITMAP). If the member is null, the destination process should use DeleteObject to delete the bitmap.
The storage medium is a global memory handle (HGLOBAL). Allocate the global handle with the GMEM_SHARE flag. If the member is null, the destination process should use GlobalFree to release the memory.
The storage medium is a storage component identified by an IStorage pointer. The data is in the streams and storages contained by this IStorage instance. If the member is not null, the destination process should use IStorage::Release to release the storage component.
The storage medium is a stream object identified by an IStream pointer. Use ISequentialStream::Read to read the data. If the member is not null, the destination process should use IStream::Release to release the stream component.
The storage medium is a metafile (HMETAFILE). Use the Windows or WIN32 functions to access the metafile's data. If the member is null, the destination process should use DeleteMetaFile to delete the bitmap.
No data is being passed.
Contains attributes of a UCOMITypeInfo.
Specifies the byte alignment for an instance of this type.
The size of an instance of this type.
The size of this type's virtual method table (VTBL).
Indicates the number of functions on the interface this structure describes.
Indicates the number of implemented interfaces on the interface this structure describes.
Indicates the number of variables and data fields on the interface described by this structure.
Reserved for future use.
The GUID of the type information.
IDL attributes of the described type.
Locale of member names and documentation strings.
Reserved for future use.
A constant used with the and fields.
ID of constructor, or if none.
ID of destructor, or if none.
If == , specifies the type for which this type is an alias.
A value describing the type this information describes.
Major version number.
Minor version number.
A value describing this information.
Describes the type of a variable, return type of a function, or the type of a function parameter.
If the variable is VT_SAFEARRAY or VT_PTR, the lpValue field contains a pointer to a TYPEDESC that specifies the element type.
Indicates the variant type for the item described by this TYPEDESC.
Defines the properties and attributes of a type description.
The class supports aggregation.
A type description that describes an Application object.
Instances of the type can be created by ITypeInfo::CreateInstance.
The type is a control from which other types will be derived and should not be displayed to users.
Indicates that the interface derives from IDispatch, either directly or indirectly. This flag is computed; there is no Object Description Language for the flag.
The interface supplies both IDispatch and VTBL binding.
The type should not be displayed to browsers.
The type is licensed.
The interface cannot add members at run time.
The types used in the interface are fully compatible with Automation, including VTBL binding support. Setting dual on an interface sets both this flag and the . This flag is not allowed on dispinterfaces.
The type is predefined. The client application should automatically create a single instance of the object that has this attribute. The name of the variable that points to the object is the same as the class name of the object.
Indicates that the interface will be using a proxy/stub dynamic link library. This flag specifies that the type library proxy should not be unregistered when the type library is unregistered.
The object supports IConnectionPointWithDefault, and has default behaviors.
Should not be accessible from macro languages. This flag is intended for system-level types or types that type browsers should not display.
Indicates base interfaces should be checked for name resolution before checking children, which is the reverse of the default behavior.
Specifies various types of data and functions.
A type that is an alias for another type.
A set of implemented components interfaces.
A set of methods and properties that are accessible through IDispatch::Invoke. By default, dual interfaces return TKIND_DISPATCH.
A set of enumerators.
A type that has virtual functions, all of which are pure.
End-of-enumeration marker.
A module that can have only static functions and data (for example, a DLL).
A structure with no methods.
A union of all members that have an offset of zero.
Identifies a particular type library and provides localization support for member names.
Represents a globally unique library ID of a type library.
Represents a locale ID of a type library.
Represents the target hardware platform of a type library.
Represents library flags.
Represents the major version number of a type library.
Represents the minor version number of a type library.
Describes a variable, constant, or data member.
Contains information about a variable.
Contains the variable type.
This field is reserved for future use.
Indicates the member ID of a variable.
Defines how to marshal a variable.
Defines the properties of a variable.
Contains information about a variable.
Describes a symbolic constant.
Indicates the offset of this variable within the instance.
Identifies the constants that define the properties of a variable.
The variable supports data binding.
The variable is the single property that best represents the object. Only one variable in type information can have this attribute.
Permits an optimization in which the compiler looks for a member named "xyz" on the type of "abc". If such a member is found and is flagged as an accessor function for an element of the default collection, then a call is generated to that member function. Permitted on members in dispinterfaces and interfaces; not permitted on modules.
The variable is displayed to the user as bindable. must also be set.
The variable should not be displayed to the user in a browser, although it exists and is bindable.
The variable is mapped as individual bindable properties.
The variable appears in an object browser, but not in a properties browser.
Assignment to the variable should not be allowed.
Tags the interface as having default behaviors.
When set, any attempt to directly change the property results in a call to IPropertyNotifySink::OnRequestEdit. The implementation of OnRequestEdit determines if the change is accepted.
The variable should not be accessible from macro languages. This flag is intended for system-level variables or variables that you do not want type browsers to display.
The variable returns an object that is a source of events.
The variable is the default display in the user interface.
Defines the kind of variable.
The VARDESC structure describes a symbolic constant. There is no memory associated with it.
The variable can be accessed only through IDispatch::Invoke.
The variable is a field or member of the type. It exists at a fixed offset within each instance of the type.
There is only one instance of the variable.