# C1.Util.DX.Storage.IStream

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Util_DX_Storage_IStream" data-uid="C1.Util.DX.Storage.IStream" class="text-break">IStream Interface
</h1>
  <div class="markdown level0 summary"><p>IStream</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.Util.DX.Storage.html">C1.Util.DX.Storage</a></h6>
  <h6><strong>Assembly</strong>: C1.Win.DX.10.dll</h6>
  <h5 id="C1_Util_DX_Storage_IStream_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[Guid(&quot;0000000c-0000-0000-C000-000000000046&quot;)]
[Shadow(typeof(ComStreamShadow))]
public interface IStream : IStreamBase, ICallbackable, IDisposable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">&lt;Guid(&quot;0000000c-0000-0000-C000-000000000046&quot;)&gt;
&lt;Shadow(GetType(ComStreamShadow))&gt;
Public Interface IStream
    Inherits IStreamBase, ICallbackable, IDisposable</code></pre>
  </div>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_Clone" data-uid="C1.Util.DX.Storage.IStream.Clone">
          <a class="xref" href="C1.Util.DX.Storage.IStream.Clone.html#C1_Util_DX_Storage_IStream_Clone">Clone()</a>
        </td>
        <td class="markdown level1 summary"><p>Clones this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_Commit_C1_Util_DX_Storage_CommitFlags_" data-uid="C1.Util.DX.Storage.IStream.Commit(C1.Util.DX.Storage.CommitFlags)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.Commit.html#C1_Util_DX_Storage_IStream_Commit_C1_Util_DX_Storage_CommitFlags_">Commit(CommitFlags)</a>
        </td>
        <td class="markdown level1 summary"><p>Commit method ensures that any changes made to a stream object open in transacted mode are reflected in the parent storage. If the stream object is open in direct mode, Commit has no effect other than flushing all memory buffers to the next-level storage object. The COM compound file implementation of streams does not support opening streams in transacted mode.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_CopyTo_C1_Util_DX_Storage_IStream_System_Int64_System_Int64__" data-uid="C1.Util.DX.Storage.IStream.CopyTo(C1.Util.DX.Storage.IStream,System.Int64,System.Int64@)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.CopyTo.html#C1_Util_DX_Storage_IStream_CopyTo_C1_Util_DX_Storage_IStream_System_Int64_System_Int64__">CopyTo(IStream, long, out long)</a>
        </td>
        <td class="markdown level1 summary"><p>Copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_GetStatistics_C1_Util_DX_Storage_StorageStatisticsFlags_" data-uid="C1.Util.DX.Storage.IStream.GetStatistics(C1.Util.DX.Storage.StorageStatisticsFlags)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.GetStatistics.html#C1_Util_DX_Storage_IStream_GetStatistics_C1_Util_DX_Storage_StorageStatisticsFlags_">GetStatistics(StorageStatisticsFlags)</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the statistics.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_LockRegion_System_Int64_System_Int64_C1_Util_DX_Storage_LockType_" data-uid="C1.Util.DX.Storage.IStream.LockRegion(System.Int64,System.Int64,C1.Util.DX.Storage.LockType)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.LockRegion.html#C1_Util_DX_Storage_IStream_LockRegion_System_Int64_System_Int64_C1_Util_DX_Storage_LockType_">LockRegion(long, long, LockType)</a>
        </td>
        <td class="markdown level1 summary"><p>Restricts access to a specified range of bytes in the stream.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_Revert" data-uid="C1.Util.DX.Storage.IStream.Revert">
          <a class="xref" href="C1.Util.DX.Storage.IStream.Revert.html#C1_Util_DX_Storage_IStream_Revert">Revert()</a>
        </td>
        <td class="markdown level1 summary"><p>Discards all changes that have been made to a transacted stream since the last <a class="xref" href="C1.Util.DX.Storage.IStream.Commit.html#C1_Util_DX_Storage_IStream_Commit_C1_Util_DX_Storage_CommitFlags_">Commit(CommitFlags)</a> call.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_Seek_System_Int64_System_IO_SeekOrigin_" data-uid="C1.Util.DX.Storage.IStream.Seek(System.Int64,System.IO.SeekOrigin)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.Seek.html#C1_Util_DX_Storage_IStream_Seek_System_Int64_System_IO_SeekOrigin_">Seek(long, SeekOrigin)</a>
        </td>
        <td class="markdown level1 summary"><p>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.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_SetSize_System_Int64_" data-uid="C1.Util.DX.Storage.IStream.SetSize(System.Int64)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.SetSize.html#C1_Util_DX_Storage_IStream_SetSize_System_Int64_">SetSize(long)</a>
        </td>
        <td class="markdown level1 summary"><p>Changes the size of the stream object.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_Storage_IStream_UnlockRegion_System_Int64_System_Int64_C1_Util_DX_Storage_LockType_" data-uid="C1.Util.DX.Storage.IStream.UnlockRegion(System.Int64,System.Int64,C1.Util.DX.Storage.LockType)">
          <a class="xref" href="C1.Util.DX.Storage.IStream.UnlockRegion.html#C1_Util_DX_Storage_IStream_UnlockRegion_System_Int64_System_Int64_C1_Util_DX_Storage_LockType_">UnlockRegion(long, long, LockType)</a>
        </td>
        <td class="markdown level1 summary"><p>Unlocks access to a specified range of bytes in the stream.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
