// Decompiled with JetBrains decompiler // Type: Rei.Fs.IO.Win32Native // Assembly: Rei.Fs, Version=1.13.2.8796, Culture=neutral, PublicKeyToken=null // MVID: D8B08A8B-697C-4439-9CFF-1BE4EE46F7B0 // Assembly location: F:\Eigene Dateien\Dropbox\portable Collection\Progs\CarotDAV\Rei.Fs.dll using Microsoft.VisualBasic.CompilerServices; using Microsoft.Win32.SafeHandles; using System; using System.IO; using System.Runtime.InteropServices; using System.Text; namespace Rei.Fs.IO { [StandardModule] public sealed class Win32Native { public const int MAX_PATH = 260; public const string LongFilePrefix = "\\\\?\\"; public const string LongFileUncPrefix = "\\\\?\\UNC\\"; public const uint MAX_PREFERRED_LENGTH = 4294967295; [DllImport("kernel32.dll")] public static extern Win32Native.ErrorModeType SetErrorMode(Win32Native.ErrorModeType uMode); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool GetFileAttributesEx(string lpFileName, Win32Native.GET_FILEEX_INFO_LEVELS fInfoLevelId, ref Win32Native.WIN32_FILE_ATTRIBUTE_DATA fileData); [DllImport("Netapi32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern int NetShareEnum(StringBuilder ServerName, int level, ref IntPtr bufPtr, uint prefmaxlen, ref int entriesread, ref int totalentries, ref int resume_handle); [DllImport("Netapi32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern int NetApiBufferFree(IntPtr buf); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern SafeFileHandle CreateFile(string lpFileName, uint dwDesiredAccess, uint dwShareMode, IntPtr lpAttributes, uint dwCreationDisposition, uint dwFlagsAndAttributes, IntPtr hTemplateFile); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern uint SetFilePointer(SafeFileHandle hFile, int lDistanceToMove, IntPtr lpDistanceToMoveHigh, Win32Native.MoveMethodType dwMoveMethod); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool SetFileTime(SafeFileHandle hFile, [In] ref System.Runtime.InteropServices.ComTypes.FILETIME lpCreationTime, [In] ref System.Runtime.InteropServices.ComTypes.FILETIME lpLastAccessTime, [In] ref System.Runtime.InteropServices.ComTypes.FILETIME lpLastWriteTime); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern SafeFindHandle FindFirstFile(string lpFileName, out Win32Native.WIN32_FIND_DATA lpFindFileData); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool FindNextFile(SafeFindHandle hFindFile, out Win32Native.WIN32_FIND_DATA lpFindFileData); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool FindClose(IntPtr hFindFile); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool CreateDirectory(string lpPathName, IntPtr lpSecurityAttributes); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool DeleteFile(string lpFileName); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool RemoveDirectory(string lpPathName); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool MoveFileEx(string lpExistingFileName, string lpNewFileName, Win32Native.MoveFileFlagType dwFlags); [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] public static extern bool CopyFile(string lpExistingFileName, string lpNewFileName, bool bFailIfExists); public struct WIN32_FILE_ATTRIBUTE_DATA { public FileAttributes dwFileAttributes; public System.Runtime.InteropServices.ComTypes.FILETIME ftCreationTime; public System.Runtime.InteropServices.ComTypes.FILETIME ftLastAccessTime; public System.Runtime.InteropServices.ComTypes.FILETIME ftLastWriteTime; public uint nFileSizeHigh; public uint nFileSizeLow; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)] public struct WIN32_FIND_DATA { public FileAttributes dwFileAttributes; public System.Runtime.InteropServices.ComTypes.FILETIME ftCreationTime; public System.Runtime.InteropServices.ComTypes.FILETIME ftLastAccessTime; public System.Runtime.InteropServices.ComTypes.FILETIME ftLastWriteTime; public uint nFileSizeHigh; public uint nFileSizeLow; public uint dwReserved0; public uint dwReserved1; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)] public string cFileName; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)] public string cAlternateFileName; } public enum GET_FILEEX_INFO_LEVELS { GetFileExInfoStandard, GetFileExMaxInfoLevel, } [Flags] public enum ErrorModeType : uint { System_DefalutDEFAULT = 0, SEM_FAILCRITICALERRORS = 1, SEM_NOALIGNMENTFAULTEXCEPT = 4, SEM_NOGPFAULTERRORBOX = 2, SEM_NOOPENFILEERRORBOX = 32768, } public enum CreateDispositionType : uint { CREATE_NEW = 1, CREATE_ALWAYS = 2, OPEN_EXISTING = 3, OPEN_ALWAYS = 4, TRUNCATE_EXISTING = 5, } [Flags] public enum FileAttributeType : uint { FILE_ATTRIBUTE_READONLY = 1, FILE_ATTRIBUTE_HIDDEN = 2, FILE_ATTRIBUTE_SYSTEM = 4, FILE_ATTRIBUTE_DIRECTORY = 16, FILE_ATTRIBUTE_ARCHIVE = 32, FILE_ATTRIBUTE_DEVICE = 64, FILE_ATTRIBUTE_NORMAL = 128, FILE_ATTRIBUTE_TEMPORARY = 256, FILE_ATTRIBUTE_SPARSE_FILE = 512, FILE_ATTRIBUTE_REPARSE_POINT = 1024, FILE_ATTRIBUTE_COMPRESSED = 2048, FILE_ATTRIBUTE_OFFLINE = 4096, FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 8192, FILE_ATTRIBUTE_ENCRYPTED = 16384, FILE_ATTRIBUTE_VIRTUAL = 65536, } public enum MoveMethodType : uint { FILE_BEGIN, FILE_CURRENT, FILE_END, } [Flags] public enum GenericAccessType : uint { GENERIC_READ = 2147483648, GENERIC_WRITE = 1073741824, GENERIC_EXECUTE = 536870912, GENERIC_ALL = 268435456, } [Flags] public enum FileShareType : uint { FILE_SHARE_READ = 1, FILE_SHARE_WRITE = 2, FILE_SHARE_DELETE = 4, } [Flags] public enum MoveFileFlagType : uint { MOVEFILE_REPLACE_EXISTING = 1, MOVEFILE_COPY_ALLOWED = 2, MOVEFILE_DELAY_UNTIL_REBOOT = 4, MOVEFILE_WRITE_THROUGH = 8, MOVEFILE_CREATE_HARDLINK = 16, MOVEFILE_FAIL_IF_NOT_TRACKABLE = 32, } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] public struct SHARE_INFO_0 { public string shi0_netname; } } }