Click or drag to resize
Accord.NET (logo)

SharpDX.Win32 Namespace

The SharpDX.Win32 namespace contains common enumerations, structures and helper classes for Win32 low-level API.
Classes
  ClassDescription
Public classComBaseStreamNative
Public classComStream

The IStream interface lets you read and write data to stream objects. Stream objects contain the data in a structured storage object, where storages provide the structure. Simple data can be written directly to a stream but, most frequently, streams are elements nested within a storage object. They are similar to standard files.

The IStream interface defines methods similar to the MS-DOS FAT file functions. For example, each stream object has its own access rights and a seek reference. The main difference between a DOS file and a stream object is that in the latter case, streams are opened using an IStream interface reference rather than a file handle.

The methods in this interface present your object's data as a contiguous sequence of bytes that you can read or write. There are also methods for committing and reverting changes on streams that are open in transacted mode and methods for restricting access to a range of bytes in the stream.

Streams can remain open for long periods of time without consuming file-system resources. The IUnknown::Release method is similar to a close function on a file. Once released, the stream object is no longer valid and cannot be used.

Clients of asynchronous monikers can choose between a data-pull or data-push model for driving an asynchronous IMoniker::BindToStorage operation and for receiving asynchronous notifications. See URL Monikers for more information. The following table compares the behavior of asynchronous Read(IntPtr, Int32) and Seek(Int64, SeekOrigin) calls returned in IBindStatusCallback::OnDataAvailable in these two download models:

Public classComStreamBase

The IStreamBase interface supports simplified sequential access to stream objects. The IStream interface inherits its Read and Write methods from IStreamBase.

Public classErrorCodeHelper
Public classPropertyBag
Implementation of OLE IPropertyBag2.
Public classPropertyBagKeyT1, T2
Identifies a typed property in a PropertyBag.
Structures
  StructureDescription
Public structureBitmapInfoHeader
Public structureNativeMessage
Public structureSecurityAttributes
Security attributes.
Public structureStorageStatistics

The StorageStatistics structure contains statistical data about an open storage, stream, or byte-array object. This structure is used in the IEnumSTATSTG, ILockBytes, IStorage, and IStream interfaces.

Public structureVariant
Variant COM.
Interfaces
  InterfaceDescription
Public interfaceIStream

The IStream interface lets you read and write data to stream objects. Stream objects contain the data in a structured storage object, where storages provide the structure. Simple data can be written directly to a stream but, most frequently, streams are elements nested within a storage object. They are similar to standard files.

The IStream interface defines methods similar to the MS-DOS FAT file functions. For example, each stream object has its own access rights and a seek reference. The main difference between a DOS file and a stream object is that in the latter case, streams are opened using an IStream interface reference rather than a file handle.

The methods in this interface present your object's data as a contiguous sequence of bytes that you can read or write. There are also methods for committing and reverting changes on streams that are open in transacted mode and methods for restricting access to a range of bytes in the stream.

Streams can remain open for long periods of time without consuming file-system resources. The IUnknown::Release method is similar to a close function on a file. Once released, the stream object is no longer valid and cannot be used.

Clients of asynchronous monikers can choose between a data-pull or data-push model for driving an asynchronous IMoniker::BindToStorage operation and for receiving asynchronous notifications. See URL Monikers for more information. The following table compares the behavior of asynchronous Read(IntPtr, Int32) and Seek(Int64, SeekOrigin) calls returned in IBindStatusCallback::OnDataAvailable in these two download models:

Public interfaceIStreamBase

The IStreamBase interface supports simplified sequential access to stream objects. The IStream interface inherits its Read and Write methods from IStreamBase.

Enumerations
  EnumerationDescription
Public enumerationCommitFlags
No documentation.
Public enumerationErrorCode
No documentation.
Public enumerationLockType

Indicates the type of locks placed on records during editing.

Public enumerationStorageStatisticsFlags

The StorageStatisticsFlags enumeration values indicate whether the method should try to return a name in the pwcsName member of the StorageStatistics structure. The values are used in the ILockBytes::Stat, IStorage::Stat, and GetStatistics(StorageStatisticsFlags) methods to save memory when the pwcsName member is not required.

Public enumerationVariantElementType
Type of a simple variant value.
Public enumerationVariantType
Type of a variant