834 lines
55 KiB
C#
834 lines
55 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using Cpp2IlInjected;
|
|
using Microsoft.Win32.SafeHandles;
|
|
|
|
namespace System.IO
|
|
{
|
|
/// <summary>Provides a <see cref="T:System.IO.Stream" /> for a file, supporting both synchronous and asynchronous read and write operations.</summary>
|
|
// Token: 0x020002BB RID: 699
|
|
[Token(Token = "0x20002BB")]
|
|
[ComVisible(true)]
|
|
public class FileStream : Stream
|
|
{
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class for the specified file handle, with the specified read/write permission, <see langword="FileStream" /> instance ownership, and buffer size.</summary>
|
|
/// <param name="handle">A file handle for the file that this <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="access">A constant that sets the <see cref="P:System.IO.FileStream.CanRead" /> and <see cref="P:System.IO.FileStream.CanWrite" /> properties of the <see langword="FileStream" /> object.</param>
|
|
/// <param name="ownsHandle">
|
|
/// <see langword="true" /> if the file handle will be owned by this <see langword="FileStream" /> instance; otherwise, <see langword="false" />.</param>
|
|
/// <param name="bufferSize">A positive <see cref="T:System.Int32" /> value greater than 0 indicating the buffer size. The default buffer size is 4096.</param>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="bufferSize" /> is negative.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as a disk error, occurred.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="access" /> requested is not permitted by the operating system for the specified file handle, such as when <paramref name="access" /> is <see langword="Write" /> or <see langword="ReadWrite" /> and the file handle is set for read-only access.</exception>
|
|
// Token: 0x0600199E RID: 6558 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x600199E")]
|
|
[Address(RVA = "0x2BAFE60", Offset = "0x2BAEE60", VA = "0x182BAFE60")]
|
|
[Obsolete]
|
|
public FileStream(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize)
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600199F RID: 6559 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x600199F")]
|
|
[Address(RVA = "0x2BB00A0", Offset = "0x2BAF0A0", VA = "0x182BB00A0")]
|
|
internal FileStream(IntPtr handle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync, bool isConsoleWrapper)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class with the specified path and creation mode.</summary>
|
|
/// <param name="path">A relative or absolute path for the file that the current <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="mode">A constant that determines how to open or create the file.</param>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="path" /> is an empty string (""), contains only white space, or contains one or more invalid characters.
|
|
/// -or-
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in an NTFS environment.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in a non-NTFS environment.</exception>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="path" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.IO.FileNotFoundException">The file cannot be found, such as when <paramref name="mode" /> is <see langword="FileMode.Truncate" /> or <see langword="FileMode.Open" />, and the file specified by <paramref name="path" /> does not exist. The file must already exist in these modes.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as specifying <see langword="FileMode.CreateNew" /> when the file specified by <paramref name="path" /> already exists, occurred.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, such as being on an unmapped drive.</exception>
|
|
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="mode" /> contains an invalid value.</exception>
|
|
// Token: 0x060019A0 RID: 6560 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A0")]
|
|
[Address(RVA = "0x2BB0020", Offset = "0x2BAF020", VA = "0x182BB0020")]
|
|
public FileStream(string path, FileMode mode)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class with the specified path, creation mode, and read/write permission.</summary>
|
|
/// <param name="path">A relative or absolute path for the file that the current <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="mode">A constant that determines how to open or create the file.</param>
|
|
/// <param name="access">A constant that determines how the file can be accessed by the <see langword="FileStream" /> object. This also determines the values returned by the <see cref="P:System.IO.FileStream.CanRead" /> and <see cref="P:System.IO.FileStream.CanWrite" /> properties of the <see langword="FileStream" /> object. <see cref="P:System.IO.FileStream.CanSeek" /> is <see langword="true" /> if <paramref name="path" /> specifies a disk file.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="path" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="path" /> is an empty string (""), contains only white space, or contains one or more invalid characters.
|
|
/// -or-
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in an NTFS environment.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in a non-NTFS environment.</exception>
|
|
/// <exception cref="T:System.IO.FileNotFoundException">The file cannot be found, such as when <paramref name="mode" /> is <see langword="FileMode.Truncate" /> or <see langword="FileMode.Open" />, and the file specified by <paramref name="path" /> does not exist. The file must already exist in these modes.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as specifying <see langword="FileMode.CreateNew" /> when the file specified by <paramref name="path" /> already exists, occurred.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, such as being on an unmapped drive.</exception>
|
|
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="access" /> requested is not permitted by the operating system for the specified <paramref name="path" />, such as when <paramref name="access" /> is <see langword="Write" /> or <see langword="ReadWrite" /> and the file or directory is set for read-only access.</exception>
|
|
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="mode" /> contains an invalid value.</exception>
|
|
// Token: 0x060019A1 RID: 6561 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A1")]
|
|
[Address(RVA = "0x2BAFDD0", Offset = "0x2BAEDD0", VA = "0x182BAFDD0")]
|
|
public FileStream(string path, FileMode mode, FileAccess access)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class with the specified path, creation mode, read/write permission, and sharing permission.</summary>
|
|
/// <param name="path">A relative or absolute path for the file that the current <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="mode">A constant that determines how to open or create the file.</param>
|
|
/// <param name="access">A constant that determines how the file can be accessed by the <see langword="FileStream" /> object. This also determines the values returned by the <see cref="P:System.IO.FileStream.CanRead" /> and <see cref="P:System.IO.FileStream.CanWrite" /> properties of the <see langword="FileStream" /> object. <see cref="P:System.IO.FileStream.CanSeek" /> is <see langword="true" /> if <paramref name="path" /> specifies a disk file.</param>
|
|
/// <param name="share">A constant that determines how the file will be shared by processes.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="path" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="path" /> is an empty string (""), contains only white space, or contains one or more invalid characters.
|
|
/// -or-
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in an NTFS environment.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in a non-NTFS environment.</exception>
|
|
/// <exception cref="T:System.IO.FileNotFoundException">The file cannot be found, such as when <paramref name="mode" /> is <see langword="FileMode.Truncate" /> or <see langword="FileMode.Open" />, and the file specified by <paramref name="path" /> does not exist. The file must already exist in these modes.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as specifying <see langword="FileMode.CreateNew" /> when the file specified by <paramref name="path" /> already exists, occurred.
|
|
/// -or-
|
|
/// The system is running Windows 98 or Windows 98 Second Edition and <paramref name="share" /> is set to <see langword="FileShare.Delete" />.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, such as being on an unmapped drive.</exception>
|
|
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="access" /> requested is not permitted by the operating system for the specified <paramref name="path" />, such as when <paramref name="access" /> is <see langword="Write" /> or <see langword="ReadWrite" /> and the file or directory is set for read-only access.</exception>
|
|
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="mode" /> contains an invalid value.</exception>
|
|
// Token: 0x060019A2 RID: 6562 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A2")]
|
|
[Address(RVA = "0x2BB0070", Offset = "0x2BAF070", VA = "0x182BB0070")]
|
|
public FileStream(string path, FileMode mode, FileAccess access, FileShare share)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class with the specified path, creation mode, read/write and sharing permission, and buffer size.</summary>
|
|
/// <param name="path">A relative or absolute path for the file that the current <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="mode">A constant that determines how to open or create the file.</param>
|
|
/// <param name="access">A constant that determines how the file can be accessed by the <see langword="FileStream" /> object. This also determines the values returned by the <see cref="P:System.IO.FileStream.CanRead" /> and <see cref="P:System.IO.FileStream.CanWrite" /> properties of the <see langword="FileStream" /> object. <see cref="P:System.IO.FileStream.CanSeek" /> is <see langword="true" /> if <paramref name="path" /> specifies a disk file.</param>
|
|
/// <param name="share">A constant that determines how the file will be shared by processes.</param>
|
|
/// <param name="bufferSize">A positive <see cref="T:System.Int32" /> value greater than 0 indicating the buffer size. The default buffer size is 4096.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="path" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="path" /> is an empty string (""), contains only white space, or contains one or more invalid characters.
|
|
/// -or-
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in an NTFS environment.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in a non-NTFS environment.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="bufferSize" /> is negative or zero.
|
|
/// -or-
|
|
/// <paramref name="mode" />, <paramref name="access" />, or <paramref name="share" /> contain an invalid value.</exception>
|
|
/// <exception cref="T:System.IO.FileNotFoundException">The file cannot be found, such as when <paramref name="mode" /> is <see langword="FileMode.Truncate" /> or <see langword="FileMode.Open" />, and the file specified by <paramref name="path" /> does not exist. The file must already exist in these modes.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as specifying <see langword="FileMode.CreateNew" /> when the file specified by <paramref name="path" /> already exists, occurred.
|
|
/// -or-
|
|
/// The system is running Windows 98 or Windows 98 Second Edition and <paramref name="share" /> is set to <see langword="FileShare.Delete" />.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, such as being on an unmapped drive.</exception>
|
|
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="access" /> requested is not permitted by the operating system for the specified <paramref name="path" />, such as when <paramref name="access" /> is <see langword="Write" /> or <see langword="ReadWrite" /> and the file or directory is set for read-only access.</exception>
|
|
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
|
|
// Token: 0x060019A3 RID: 6563 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A3")]
|
|
[Address(RVA = "0x2BAFE20", Offset = "0x2BAEE20", VA = "0x182BAFE20")]
|
|
public FileStream(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class with the specified path, creation mode, read/write and sharing permission, buffer size, and synchronous or asynchronous state.</summary>
|
|
/// <param name="path">A relative or absolute path for the file that the current <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="mode">A constant that determines how to open or create the file.</param>
|
|
/// <param name="access">A constant that determines how the file can be accessed by the <see langword="FileStream" /> object. This also determines the values returned by the <see cref="P:System.IO.FileStream.CanRead" /> and <see cref="P:System.IO.FileStream.CanWrite" /> properties of the <see langword="FileStream" /> object. <see cref="P:System.IO.FileStream.CanSeek" /> is <see langword="true" /> if <paramref name="path" /> specifies a disk file.</param>
|
|
/// <param name="share">A constant that determines how the file will be shared by processes.</param>
|
|
/// <param name="bufferSize">A positive <see cref="T:System.Int32" /> value greater than 0 indicating the buffer size. The default buffer size is 4096.</param>
|
|
/// <param name="useAsync">Specifies whether to use asynchronous I/O or synchronous I/O. However, note that the underlying operating system might not support asynchronous I/O, so when specifying <see langword="true" />, the handle might be opened synchronously depending on the platform. When opened asynchronously, the <see cref="M:System.IO.FileStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /> and <see cref="M:System.IO.FileStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /> methods perform better on large reads or writes, but they might be much slower for small reads or writes. If the application is designed to take advantage of asynchronous I/O, set the <paramref name="useAsync" /> parameter to <see langword="true" />. Using asynchronous I/O correctly can speed up applications by as much as a factor of 10, but using it without redesigning the application for asynchronous I/O can decrease performance by as much as a factor of 10.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="path" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="path" /> is an empty string (""), contains only white space, or contains one or more invalid characters.
|
|
/// -or-
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in an NTFS environment.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in a non-NTFS environment.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="bufferSize" /> is negative or zero.
|
|
/// -or-
|
|
/// <paramref name="mode" />, <paramref name="access" />, or <paramref name="share" /> contain an invalid value.</exception>
|
|
/// <exception cref="T:System.IO.FileNotFoundException">The file cannot be found, such as when <paramref name="mode" /> is <see langword="FileMode.Truncate" /> or <see langword="FileMode.Open" />, and the file specified by <paramref name="path" /> does not exist. The file must already exist in these modes.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as specifying <see langword="FileMode.CreateNew" /> when the file specified by <paramref name="path" /> already exists, occurred.
|
|
/// -or-
|
|
/// The system is running Windows 98 or Windows 98 Second Edition and <paramref name="share" /> is set to <see langword="FileShare.Delete" />.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, such as being on an unmapped drive.</exception>
|
|
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="access" /> requested is not permitted by the operating system for the specified <paramref name="path" />, such as when <paramref name="access" /> is <see langword="Write" /> or <see langword="ReadWrite" /> and the file or directory is set for read-only access.</exception>
|
|
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
|
|
// Token: 0x060019A4 RID: 6564 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A4")]
|
|
[Address(RVA = "0x2BAFFD0", Offset = "0x2BAEFD0", VA = "0x182BAFFD0")]
|
|
public FileStream(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool useAsync)
|
|
{
|
|
}
|
|
|
|
/// <summary>Initializes a new instance of the <see cref="T:System.IO.FileStream" /> class with the specified path, creation mode, read/write and sharing permission, the access other FileStreams can have to the same file, the buffer size, and additional file options.</summary>
|
|
/// <param name="path">A relative or absolute path for the file that the current <see langword="FileStream" /> object will encapsulate.</param>
|
|
/// <param name="mode">A constant that determines how to open or create the file.</param>
|
|
/// <param name="access">A constant that determines how the file can be accessed by the <see langword="FileStream" /> object. This also determines the values returned by the <see cref="P:System.IO.FileStream.CanRead" /> and <see cref="P:System.IO.FileStream.CanWrite" /> properties of the <see langword="FileStream" /> object. <see cref="P:System.IO.FileStream.CanSeek" /> is <see langword="true" /> if <paramref name="path" /> specifies a disk file.</param>
|
|
/// <param name="share">A constant that determines how the file will be shared by processes.</param>
|
|
/// <param name="bufferSize">A positive <see cref="T:System.Int32" /> value greater than 0 indicating the buffer size. The default buffer size is 4096.</param>
|
|
/// <param name="options">A value that specifies additional file options.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="path" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="path" /> is an empty string (""), contains only white space, or contains one or more invalid characters.
|
|
/// -or-
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in an NTFS environment.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <paramref name="path" /> refers to a non-file device, such as "con:", "com1:", "lpt1:", etc. in a non-NTFS environment.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="bufferSize" /> is negative or zero.
|
|
/// -or-
|
|
/// <paramref name="mode" />, <paramref name="access" />, or <paramref name="share" /> contain an invalid value.</exception>
|
|
/// <exception cref="T:System.IO.FileNotFoundException">The file cannot be found, such as when <paramref name="mode" /> is <see langword="FileMode.Truncate" /> or <see langword="FileMode.Open" />, and the file specified by <paramref name="path" /> does not exist. The file must already exist in these modes.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as specifying <see langword="FileMode.CreateNew" /> when the file specified by <paramref name="path" /> already exists, occurred.
|
|
/// -or-
|
|
/// The stream has been closed.</exception>
|
|
/// <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
|
|
/// <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, such as being on an unmapped drive.</exception>
|
|
/// <exception cref="T:System.UnauthorizedAccessException">The <paramref name="access" /> requested is not permitted by the operating system for the specified <paramref name="path" />, such as when <paramref name="access" /> is <see langword="Write" /> or <see langword="ReadWrite" /> and the file or directory is set for read-only access.
|
|
/// -or-
|
|
/// <see cref="F:System.IO.FileOptions.Encrypted" /> is specified for <paramref name="options" />, but file encryption is not supported on the current platform.</exception>
|
|
/// <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
|
|
// Token: 0x060019A5 RID: 6565 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A5")]
|
|
[Address(RVA = "0x2BB09B0", Offset = "0x2BAF9B0", VA = "0x182BB09B0")]
|
|
public FileStream(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, FileOptions options)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019A6 RID: 6566 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A6")]
|
|
[Address(RVA = "0x2BAFDB0", Offset = "0x2BAEDB0", VA = "0x182BAFDB0")]
|
|
internal FileStream(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, FileOptions options, string msgPath, bool bFromProxy, bool useLongPath = false, bool checkHost = false)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019A7 RID: 6567 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A7")]
|
|
[Address(RVA = "0x2BAFD50", Offset = "0x2BAED50", VA = "0x182BAFD50")]
|
|
internal FileStream(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool isAsync, bool anonymous)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019A8 RID: 6568 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A8")]
|
|
[Address(RVA = "0x2BB0210", Offset = "0x2BAF210", VA = "0x182BB0210")]
|
|
internal FileStream(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, bool anonymous, FileOptions options)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019A9 RID: 6569 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019A9")]
|
|
[Address(RVA = "0x2BAE730", Offset = "0x2BAD730", VA = "0x182BAE730")]
|
|
private void Init(SafeFileHandle safeHandle, FileAccess access, bool ownsHandle, int bufferSize, bool isAsync, bool isConsoleWrapper)
|
|
{
|
|
}
|
|
|
|
/// <summary>Gets a value that indicates whether the current stream supports reading.</summary>
|
|
/// <returns>
|
|
/// <see langword="true" /> if the stream supports reading; <see langword="false" /> if the stream is closed or was opened with write-only access.</returns>
|
|
// Token: 0x17000313 RID: 787
|
|
// (get) Token: 0x060019AA RID: 6570 RVA: 0x00010E00 File Offset: 0x0000F000
|
|
[Token(Token = "0x17000313")]
|
|
public override bool CanRead
|
|
{
|
|
[Token(Token = "0x60019AA")]
|
|
[Address(RVA = "0x2BB09F0", Offset = "0x2BAF9F0", VA = "0x182BB09F0", Slot = "7")]
|
|
get
|
|
{
|
|
return default(bool);
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets a value that indicates whether the current stream supports writing.</summary>
|
|
/// <returns>
|
|
/// <see langword="true" /> if the stream supports writing; <see langword="false" /> if the stream is closed or was opened with read-only access.</returns>
|
|
// Token: 0x17000314 RID: 788
|
|
// (get) Token: 0x060019AB RID: 6571 RVA: 0x00010E18 File Offset: 0x0000F018
|
|
[Token(Token = "0x17000314")]
|
|
public override bool CanWrite
|
|
{
|
|
[Token(Token = "0x60019AB")]
|
|
[Address(RVA = "0x2BB0A00", Offset = "0x2BAFA00", VA = "0x182BB0A00", Slot = "9")]
|
|
get
|
|
{
|
|
return default(bool);
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets a value that indicates whether the current stream supports seeking.</summary>
|
|
/// <returns>
|
|
/// <see langword="true" /> if the stream supports seeking; <see langword="false" /> if the stream is closed or if the <see langword="FileStream" /> was constructed from an operating-system handle such as a pipe or output to the console.</returns>
|
|
// Token: 0x17000315 RID: 789
|
|
// (get) Token: 0x060019AC RID: 6572 RVA: 0x00010E30 File Offset: 0x0000F030
|
|
[Token(Token = "0x17000315")]
|
|
public override bool CanSeek
|
|
{
|
|
[Token(Token = "0x60019AC")]
|
|
[Address(RVA = "0x1837450", Offset = "0x1836450", VA = "0x181837450", Slot = "8")]
|
|
get
|
|
{
|
|
return default(bool);
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets the absolute path of the file opened in the <see langword="FileStream" />.</summary>
|
|
/// <returns>A string that is the absolute path of the file.</returns>
|
|
// Token: 0x17000316 RID: 790
|
|
// (get) Token: 0x060019AD RID: 6573 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x17000316")]
|
|
public string Name
|
|
{
|
|
[Token(Token = "0x60019AD")]
|
|
[Address(RVA = "0x4157E0", Offset = "0x4147E0", VA = "0x1804157E0")]
|
|
get
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets the length in bytes of the stream.</summary>
|
|
/// <returns>A long value representing the length of the stream in bytes.</returns>
|
|
/// <exception cref="T:System.NotSupportedException">
|
|
/// <see cref="P:System.IO.FileStream.CanSeek" /> for this stream is <see langword="false" />.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error, such as the file being closed, occurred.</exception>
|
|
// Token: 0x17000317 RID: 791
|
|
// (get) Token: 0x060019AE RID: 6574 RVA: 0x00010E48 File Offset: 0x0000F048
|
|
[Token(Token = "0x17000317")]
|
|
public override long Length
|
|
{
|
|
[Token(Token = "0x60019AE")]
|
|
[Address(RVA = "0x2BB0A20", Offset = "0x2BAFA20", VA = "0x182BB0A20", Slot = "10")]
|
|
get
|
|
{
|
|
return 0L;
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets or sets the current position of this stream.</summary>
|
|
/// <returns>The current position of this stream.</returns>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support seeking.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error occurred.
|
|
/// -or-
|
|
/// The position was set to a very large value beyond the end of the stream in Windows 98 or earlier.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">Attempted to set the position to a negative value.</exception>
|
|
/// <exception cref="T:System.IO.EndOfStreamException">Attempted seeking past the end of a stream that does not support this.</exception>
|
|
// Token: 0x17000318 RID: 792
|
|
// (get) Token: 0x060019AF RID: 6575 RVA: 0x00010E60 File Offset: 0x0000F060
|
|
// (set) Token: 0x060019B0 RID: 6576 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x17000318")]
|
|
public override long Position
|
|
{
|
|
[Token(Token = "0x60019AF")]
|
|
[Address(RVA = "0x2BB0BA0", Offset = "0x2BAFBA0", VA = "0x182BB0BA0", Slot = "11")]
|
|
get
|
|
{
|
|
return 0L;
|
|
}
|
|
[Token(Token = "0x60019B0")]
|
|
[Address(RVA = "0x2BB0D70", Offset = "0x2BAFD70", VA = "0x182BB0D70", Slot = "12")]
|
|
set
|
|
{
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets a <see cref="T:Microsoft.Win32.SafeHandles.SafeFileHandle" /> object that represents the operating system file handle for the file that the current <see cref="T:System.IO.FileStream" /> object encapsulates.</summary>
|
|
/// <returns>An object that represents the operating system file handle for the file that the current <see cref="T:System.IO.FileStream" /> object encapsulates.</returns>
|
|
// Token: 0x17000319 RID: 793
|
|
// (get) Token: 0x060019B1 RID: 6577 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x17000319")]
|
|
public virtual SafeFileHandle SafeFileHandle
|
|
{
|
|
[Token(Token = "0x60019B1")]
|
|
[Address(RVA = "0x2BB0D30", Offset = "0x2BAFD30", VA = "0x182BB0D30", Slot = "31")]
|
|
get
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060019B2 RID: 6578 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019B2")]
|
|
[Address(RVA = "0x2BADFE0", Offset = "0x2BACFE0", VA = "0x182BADFE0")]
|
|
private void ExposeHandle()
|
|
{
|
|
}
|
|
|
|
/// <summary>Reads a byte from the file and advances the read position one byte.</summary>
|
|
/// <returns>The byte, cast to an <see cref="T:System.Int32" />, or -1 if the end of the stream has been reached.</returns>
|
|
/// <exception cref="T:System.NotSupportedException">The current stream does not support reading.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The current stream is closed.</exception>
|
|
// Token: 0x060019B3 RID: 6579 RVA: 0x00010E78 File Offset: 0x0000F078
|
|
[Token(Token = "0x60019B3")]
|
|
[Address(RVA = "0x2BAEA40", Offset = "0x2BADA40", VA = "0x182BAEA40", Slot = "28")]
|
|
public override int ReadByte()
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
/// <summary>Writes a byte to the current position in the file stream.</summary>
|
|
/// <param name="value">A byte to write to the stream.</param>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream is closed.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support writing.</exception>
|
|
// Token: 0x060019B4 RID: 6580 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019B4")]
|
|
[Address(RVA = "0x2BAF690", Offset = "0x2BAE690", VA = "0x182BAF690", Slot = "30")]
|
|
public override void WriteByte(byte value)
|
|
{
|
|
}
|
|
|
|
/// <summary>Reads a block of bytes from the stream and writes the data in a given buffer.</summary>
|
|
/// <param name="array">When this method returns, contains the specified byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> + <paramref name="count" /> - 1) replaced by the bytes read from the current source.</param>
|
|
/// <param name="offset">The byte offset in <paramref name="array" /> at which the read bytes will be placed.</param>
|
|
/// <param name="count">The maximum number of bytes to read.</param>
|
|
/// <returns>The total number of bytes read into the buffer. This might be less than the number of bytes requested if that number of bytes are not currently available, or zero if the end of the stream is reached.</returns>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="array" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="offset" /> or <paramref name="count" /> is negative.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support reading.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error occurred.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="offset" /> and <paramref name="count" /> describe an invalid range in <paramref name="array" />.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed.</exception>
|
|
// Token: 0x060019B5 RID: 6581 RVA: 0x00010E90 File Offset: 0x0000F090
|
|
[Token(Token = "0x60019B5")]
|
|
[Address(RVA = "0x2BAEE70", Offset = "0x2BADE70", VA = "0x182BAEE70", Slot = "27")]
|
|
public override int Read([In] [Out] byte[] array, int offset, int count)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060019B6 RID: 6582 RVA: 0x00010EA8 File Offset: 0x0000F0A8
|
|
[Token(Token = "0x60019B6")]
|
|
[Address(RVA = "0x2BAECE0", Offset = "0x2BADCE0", VA = "0x182BAECE0")]
|
|
private int ReadInternal(byte[] dest, int offset, int count)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
/// <summary>Begins an asynchronous read operation. Consider using <see cref="M:System.IO.FileStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)" /> instead.</summary>
|
|
/// <param name="array">The buffer to read data into.</param>
|
|
/// <param name="offset">The byte offset in <paramref name="array" /> at which to begin reading.</param>
|
|
/// <param name="numBytes">The maximum number of bytes to read.</param>
|
|
/// <param name="userCallback">The method to be called when the asynchronous read operation is completed.</param>
|
|
/// <param name="stateObject">A user-provided object that distinguishes this particular asynchronous read request from other requests.</param>
|
|
/// <returns>An object that references the asynchronous read.</returns>
|
|
/// <exception cref="T:System.ArgumentException">The array length minus <paramref name="offset" /> is less than <paramref name="numBytes" />.</exception>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="array" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="offset" /> or <paramref name="numBytes" /> is negative.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An asynchronous read was attempted past the end of the file.</exception>
|
|
// Token: 0x060019B7 RID: 6583 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019B7")]
|
|
[Address(RVA = "0x2BAD480", Offset = "0x2BAC480", VA = "0x182BAD480", Slot = "19")]
|
|
public override IAsyncResult BeginRead(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
/// <summary>Waits for the pending asynchronous read operation to complete. (Consider using <see cref="M:System.IO.FileStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)" /> instead.)</summary>
|
|
/// <param name="asyncResult">The reference to the pending asynchronous request to wait for.</param>
|
|
/// <returns>The number of bytes read from the stream, between 0 and the number of bytes you requested. Streams only return 0 at the end of the stream, otherwise, they should block until at least 1 byte is available.</returns>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="asyncResult" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">This <see cref="T:System.IAsyncResult" /> object was not created by calling <see cref="M:System.IO.FileStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /> on this class.</exception>
|
|
/// <exception cref="T:System.InvalidOperationException">
|
|
/// <see cref="M:System.IO.FileStream.EndRead(System.IAsyncResult)" /> is called multiple times.</exception>
|
|
/// <exception cref="T:System.IO.IOException">The stream is closed or an internal error has occurred.</exception>
|
|
// Token: 0x060019B8 RID: 6584 RVA: 0x00010EC0 File Offset: 0x0000F0C0
|
|
[Token(Token = "0x60019B8")]
|
|
[Address(RVA = "0x2BADCE0", Offset = "0x2BACCE0", VA = "0x182BADCE0", Slot = "20")]
|
|
public override int EndRead(IAsyncResult asyncResult)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
/// <summary>Writes a block of bytes to the file stream.</summary>
|
|
/// <param name="array">The buffer containing data to write to the stream.</param>
|
|
/// <param name="offset">The zero-based byte offset in <paramref name="array" /> from which to begin copying bytes to the stream.</param>
|
|
/// <param name="count">The maximum number of bytes to write.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="array" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="offset" /> and <paramref name="count" /> describe an invalid range in <paramref name="array" />.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="offset" /> or <paramref name="count" /> is negative.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error occurred.
|
|
/// -or-
|
|
/// Another thread may have caused an unexpected change in the position of the operating system's file handle.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream is closed.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The current stream instance does not support writing.</exception>
|
|
// Token: 0x060019B9 RID: 6585 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019B9")]
|
|
[Address(RVA = "0x2BAFAB0", Offset = "0x2BAEAB0", VA = "0x182BAFAB0", Slot = "29")]
|
|
public override void Write(byte[] array, int offset, int count)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019BA RID: 6586 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019BA")]
|
|
[Address(RVA = "0x2BAF800", Offset = "0x2BAE800", VA = "0x182BAF800")]
|
|
private void WriteInternal(byte[] src, int offset, int count)
|
|
{
|
|
}
|
|
|
|
/// <summary>Begins an asynchronous write operation. Consider using <see cref="M:System.IO.FileStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)" /> instead.</summary>
|
|
/// <param name="array">The buffer containing data to write to the current stream.</param>
|
|
/// <param name="offset">The zero-based byte offset in <paramref name="array" /> at which to begin copying bytes to the current stream.</param>
|
|
/// <param name="numBytes">The maximum number of bytes to write.</param>
|
|
/// <param name="userCallback">The method to be called when the asynchronous write operation is completed.</param>
|
|
/// <param name="stateObject">A user-provided object that distinguishes this particular asynchronous write request from other requests.</param>
|
|
/// <returns>An object that references the asynchronous write.</returns>
|
|
/// <exception cref="T:System.ArgumentException">
|
|
/// <paramref name="array" /> length minus <paramref name="offset" /> is less than <paramref name="numBytes" />.</exception>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="array" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="offset" /> or <paramref name="numBytes" /> is negative.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support writing.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream is closed.</exception>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error occurred.</exception>
|
|
// Token: 0x060019BB RID: 6587 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019BB")]
|
|
[Address(RVA = "0x2BAD700", Offset = "0x2BAC700", VA = "0x182BAD700", Slot = "22")]
|
|
public override IAsyncResult BeginWrite(byte[] array, int offset, int numBytes, AsyncCallback userCallback, object stateObject)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
/// <summary>Ends an asynchronous write operation and blocks until the I/O operation is complete. (Consider using <see cref="M:System.IO.FileStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)" /> instead.)</summary>
|
|
/// <param name="asyncResult">The pending asynchronous I/O request.</param>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="asyncResult" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentException">This <see cref="T:System.IAsyncResult" /> object was not created by calling <see cref="M:System.IO.Stream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /> on this class.</exception>
|
|
/// <exception cref="T:System.InvalidOperationException">
|
|
/// <see cref="M:System.IO.FileStream.EndWrite(System.IAsyncResult)" /> is called multiple times.</exception>
|
|
/// <exception cref="T:System.IO.IOException">The stream is closed or an internal error has occurred.</exception>
|
|
// Token: 0x060019BC RID: 6588 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019BC")]
|
|
[Address(RVA = "0x2BADE60", Offset = "0x2BACE60", VA = "0x182BADE60", Slot = "23")]
|
|
public override void EndWrite(IAsyncResult asyncResult)
|
|
{
|
|
}
|
|
|
|
/// <summary>Sets the current position of this stream to the given value.</summary>
|
|
/// <param name="offset">The point relative to <paramref name="origin" /> from which to begin seeking.</param>
|
|
/// <param name="origin">Specifies the beginning, the end, or the current position as a reference point for <paramref name="offset" />, using a value of type <see cref="T:System.IO.SeekOrigin" />.</param>
|
|
/// <returns>The new position in the stream.</returns>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error occurred.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support seeking, such as if the <see langword="FileStream" /> is constructed from a pipe or console output.</exception>
|
|
/// <exception cref="T:System.ArgumentException">Seeking is attempted before the beginning of the stream.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed.</exception>
|
|
// Token: 0x060019BD RID: 6589 RVA: 0x00010ED8 File Offset: 0x0000F0D8
|
|
[Token(Token = "0x60019BD")]
|
|
[Address(RVA = "0x2BAF1C0", Offset = "0x2BAE1C0", VA = "0x182BAF1C0", Slot = "25")]
|
|
public override long Seek(long offset, SeekOrigin origin)
|
|
{
|
|
return 0L;
|
|
}
|
|
|
|
/// <summary>Sets the length of this stream to the given value.</summary>
|
|
/// <param name="value">The new length of the stream.</param>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error has occurred.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support both writing and seeking.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">Attempted to set the <paramref name="value" /> parameter to less than 0.</exception>
|
|
// Token: 0x060019BE RID: 6590 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019BE")]
|
|
[Address(RVA = "0x2BAF450", Offset = "0x2BAE450", VA = "0x182BAF450", Slot = "26")]
|
|
public override void SetLength(long value)
|
|
{
|
|
}
|
|
|
|
/// <summary>Clears buffers for this stream and causes any buffered data to be written to the file.</summary>
|
|
/// <exception cref="T:System.IO.IOException">An I/O error occurred.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream is closed.</exception>
|
|
// Token: 0x060019BF RID: 6591 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019BF")]
|
|
[Address(RVA = "0x2BAE320", Offset = "0x2BAD320", VA = "0x182BAE320", Slot = "17")]
|
|
public override void Flush()
|
|
{
|
|
}
|
|
|
|
/// <summary>Ensures that resources are freed and other cleanup operations are performed when the garbage collector reclaims the <see langword="FileStream" />.</summary>
|
|
// Token: 0x060019C0 RID: 6592 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019C0")]
|
|
[Address(RVA = "0x2BAE010", Offset = "0x2BAD010", VA = "0x182BAE010", Slot = "1")]
|
|
protected override void Finalize()
|
|
{
|
|
}
|
|
|
|
/// <summary>Releases the unmanaged resources used by the <see cref="T:System.IO.FileStream" /> and optionally releases the managed resources.</summary>
|
|
/// <param name="disposing">
|
|
/// <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
|
|
// Token: 0x060019C1 RID: 6593 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019C1")]
|
|
[Address(RVA = "0x2BAD9D0", Offset = "0x2BAC9D0", VA = "0x182BAD9D0", Slot = "16")]
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
}
|
|
|
|
/// <summary>Asynchronously clears all buffers for this stream, causes any buffered data to be written to the underlying device, and monitors cancellation requests.</summary>
|
|
/// <param name="cancellationToken">The token to monitor for cancellation requests.</param>
|
|
/// <returns>A task that represents the asynchronous flush operation.</returns>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream has been disposed.</exception>
|
|
// Token: 0x060019C2 RID: 6594 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019C2")]
|
|
[Address(RVA = "0x2BAE090", Offset = "0x2BAD090", VA = "0x182BAE090", Slot = "18")]
|
|
public override Task FlushAsync(CancellationToken cancellationToken)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
/// <summary>Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests.</summary>
|
|
/// <param name="buffer">The buffer to write the data into.</param>
|
|
/// <param name="offset">The byte offset in <paramref name="buffer" /> at which to begin writing data from the stream.</param>
|
|
/// <param name="count">The maximum number of bytes to read.</param>
|
|
/// <param name="cancellationToken">The token to monitor for cancellation requests.</param>
|
|
/// <returns>A task that represents the asynchronous read operation. The value of the <paramref name="TResult" /> parameter contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the stream has been reached.</returns>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="buffer" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="offset" /> or <paramref name="count" /> is negative.</exception>
|
|
/// <exception cref="T:System.ArgumentException">The sum of <paramref name="offset" /> and <paramref name="count" /> is larger than the buffer length.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support reading.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream has been disposed.</exception>
|
|
/// <exception cref="T:System.InvalidOperationException">The stream is currently in use by a previous read operation.</exception>
|
|
// Token: 0x060019C3 RID: 6595 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019C3")]
|
|
[Address(RVA = "0x2BAEA30", Offset = "0x2BADA30", VA = "0x182BAEA30", Slot = "21")]
|
|
public override Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
/// <summary>Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.</summary>
|
|
/// <param name="buffer">The buffer to write data from.</param>
|
|
/// <param name="offset">The zero-based byte offset in <paramref name="buffer" /> from which to begin copying bytes to the stream.</param>
|
|
/// <param name="count">The maximum number of bytes to write.</param>
|
|
/// <param name="cancellationToken">The token to monitor for cancellation requests.</param>
|
|
/// <returns>A task that represents the asynchronous write operation.</returns>
|
|
/// <exception cref="T:System.ArgumentNullException">
|
|
/// <paramref name="buffer" /> is <see langword="null" />.</exception>
|
|
/// <exception cref="T:System.ArgumentOutOfRangeException">
|
|
/// <paramref name="offset" /> or <paramref name="count" /> is negative.</exception>
|
|
/// <exception cref="T:System.ArgumentException">The sum of <paramref name="offset" /> and <paramref name="count" /> is larger than the buffer length.</exception>
|
|
/// <exception cref="T:System.NotSupportedException">The stream does not support writing.</exception>
|
|
/// <exception cref="T:System.ObjectDisposedException">The stream has been disposed.</exception>
|
|
/// <exception cref="T:System.InvalidOperationException">The stream is currently in use by a previous write operation.</exception>
|
|
// Token: 0x060019C4 RID: 6596 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019C4")]
|
|
[Address(RVA = "0x2BAF680", Offset = "0x2BAE680", VA = "0x182BAF680", Slot = "24")]
|
|
public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
// Token: 0x060019C5 RID: 6597 RVA: 0x00010EF0 File Offset: 0x0000F0F0
|
|
[Token(Token = "0x60019C5")]
|
|
[Address(RVA = "0x2BAEDB0", Offset = "0x2BADDB0", VA = "0x182BAEDB0")]
|
|
private int ReadSegment(byte[] dest, int dest_offset, int count)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060019C6 RID: 6598 RVA: 0x00010F08 File Offset: 0x0000F108
|
|
[Token(Token = "0x60019C6")]
|
|
[Address(RVA = "0x2BAFA40", Offset = "0x2BAEA40", VA = "0x182BAFA40")]
|
|
private int WriteSegment(byte[] src, int src_offset, int count)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060019C7 RID: 6599 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019C7")]
|
|
[Address(RVA = "0x2BAE130", Offset = "0x2BAD130", VA = "0x182BAE130")]
|
|
private void FlushBuffer()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019C8 RID: 6600 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019C8")]
|
|
[Address(RVA = "0x2BAE120", Offset = "0x2BAD120", VA = "0x182BAE120")]
|
|
private void FlushBufferIfDirty()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019C9 RID: 6601 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019C9")]
|
|
[Address(RVA = "0x2BAF180", Offset = "0x2BAE180", VA = "0x182BAF180")]
|
|
private void RefillBuffer()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019CA RID: 6602 RVA: 0x00010F20 File Offset: 0x0000F120
|
|
[Token(Token = "0x60019CA")]
|
|
[Address(RVA = "0x2BAEBB0", Offset = "0x2BADBB0", VA = "0x182BAEBB0")]
|
|
private int ReadData(SafeHandle safeHandle, byte[] buf, int offset, int count)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060019CB RID: 6603 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60019CB")]
|
|
[Address(RVA = "0x2BAE4F0", Offset = "0x2BAD4F0", VA = "0x182BAE4F0")]
|
|
private void InitBuffer(int size, bool isZeroSize)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060019CC RID: 6604 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019CC")]
|
|
[Address(RVA = "0x2BAE3A0", Offset = "0x2BAD3A0", VA = "0x182BAE3A0")]
|
|
private string GetSecureFileName(string filename)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
// Token: 0x060019CD RID: 6605 RVA: 0x00002082 File Offset: 0x00000282
|
|
[Token(Token = "0x60019CD")]
|
|
[Address(RVA = "0x2BAE430", Offset = "0x2BAD430", VA = "0x182BAE430")]
|
|
private string GetSecureFileName(string filename, bool full)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
// Token: 0x04000D8C RID: 3468
|
|
[Token(Token = "0x4000D8C")]
|
|
internal const int DefaultBufferSize = 4096;
|
|
|
|
// Token: 0x04000D8D RID: 3469
|
|
[Token(Token = "0x4000D8D")]
|
|
private static byte[] buf_recycle;
|
|
|
|
// Token: 0x04000D8E RID: 3470
|
|
[Token(Token = "0x4000D8E")]
|
|
private static readonly object buf_recycle_lock;
|
|
|
|
// Token: 0x04000D8F RID: 3471
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4000D8F")]
|
|
private byte[] buf;
|
|
|
|
// Token: 0x04000D90 RID: 3472
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4000D90")]
|
|
private string name;
|
|
|
|
// Token: 0x04000D91 RID: 3473
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4000D91")]
|
|
private SafeFileHandle safeHandle;
|
|
|
|
// Token: 0x04000D92 RID: 3474
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4000D92")]
|
|
private bool isExposed;
|
|
|
|
// Token: 0x04000D93 RID: 3475
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4000D93")]
|
|
private long append_startpos;
|
|
|
|
// Token: 0x04000D94 RID: 3476
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4000D94")]
|
|
private FileAccess access;
|
|
|
|
// Token: 0x04000D95 RID: 3477
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
|
|
[Token(Token = "0x4000D95")]
|
|
private bool owner;
|
|
|
|
// Token: 0x04000D96 RID: 3478
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x55")]
|
|
[Token(Token = "0x4000D96")]
|
|
private bool async;
|
|
|
|
// Token: 0x04000D97 RID: 3479
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x56")]
|
|
[Token(Token = "0x4000D97")]
|
|
private bool canseek;
|
|
|
|
// Token: 0x04000D98 RID: 3480
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x57")]
|
|
[Token(Token = "0x4000D98")]
|
|
private bool anonymous;
|
|
|
|
// Token: 0x04000D99 RID: 3481
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4000D99")]
|
|
private bool buf_dirty;
|
|
|
|
// Token: 0x04000D9A RID: 3482
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x4000D9A")]
|
|
private int buf_size;
|
|
|
|
// Token: 0x04000D9B RID: 3483
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4000D9B")]
|
|
private int buf_length;
|
|
|
|
// Token: 0x04000D9C RID: 3484
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x64")]
|
|
[Token(Token = "0x4000D9C")]
|
|
private int buf_offset;
|
|
|
|
// Token: 0x04000D9D RID: 3485
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x4000D9D")]
|
|
private long buf_start;
|
|
|
|
// Token: 0x020002BC RID: 700
|
|
// (Invoke) Token: 0x060019D0 RID: 6608
|
|
[Token(Token = "0x20002BC")]
|
|
private delegate int ReadDelegate(byte[] buffer, int offset, int count);
|
|
|
|
// Token: 0x020002BD RID: 701
|
|
// (Invoke) Token: 0x060019D4 RID: 6612
|
|
[Token(Token = "0x20002BD")]
|
|
private delegate void WriteDelegate(byte[] buffer, int offset, int count);
|
|
}
|
|
}
|