Exemple #1
0
 public static string ReadAllText(string path)
 {
     using (var stream = FileMethods.CreateFileStream(path,
                                                      DesiredAccess.GENERIC_READ, ShareMode.FILE_SHARE_READWRITE, CreationDisposition.OPEN_EXISTING))
     {
         using (var reader = new System.IO.StreamReader(stream))
         {
             return(reader.ReadToEnd());
         }
     }
 }
Exemple #2
0
 public static void WriteAllText(string path, string text)
 {
     using (var stream = FileMethods.CreateFileStream(path,
                                                      DesiredAccess.FILE_GENERIC_WRITE, ShareMode.FILE_SHARE_READWRITE, CreationDisposition.OPEN_ALWAYS))
     {
         using (var writer = new System.IO.StreamWriter(stream))
         {
             writer.Write(text);
         }
     }
 }
Exemple #3
0
 public static string ReadAllText(string path)
 {
     using (var stream = FileMethods.CreateFileStream(path,
                                                      DesiredAccess.GenericRead, ShareModes.ReadWrite, CreationDisposition.OpenExisting))
     {
         using (var reader = new System.IO.StreamReader(stream))
         {
             return(reader.ReadToEnd());
         }
     }
 }
Exemple #4
0
 public static void WriteAllText(string path, string text)
 {
     using (var stream = FileMethods.CreateFileStream(path,
                                                      DesiredAccess.GenericWrite, ShareModes.ReadWrite, CreationDisposition.OpenAlways))
     {
         using (var writer = new System.IO.StreamWriter(stream))
         {
             writer.Write(text);
         }
     }
 }
Exemple #5
0
 public static void WriteAllBytes(string path, byte[] data)
 {
     using (var stream = FileMethods.CreateFileStream(path,
                                                      DesiredAccess.GenericWrite, ShareModes.ReadWrite, CreationDisposition.OpenAlways))
     {
         using (var writer = new System.IO.BinaryWriter(stream))
         {
             writer.Write(data);
         }
     }
 }
Exemple #6
0
        public string CreateTestFile(string content, string basePath = null)
        {
            string testFile = GetTestPath(basePath);

            using (var stream = FileMethods.CreateFileStream(testFile,
                                                             DesiredAccess.FILE_GENERIC_READWRITE, ShareMode.FILE_SHARE_READWRITE, CreationDisposition.CREATE_NEW))
            {
                using (var writer = new StreamWriter(stream))
                {
                    writer.Write(content);
                }
            }

            return(testFile);
        }
Exemple #7
0
        public string CreateTestFile(byte[] content, string basePath = null)
        {
            string testFile = GetTestPath(basePath);

            using (var stream = FileMethods.CreateFileStream(testFile,
                                                             DesiredAccess.GenericReadWrite, ShareModes.ReadWrite, CreationDisposition.CreateNew))
            {
                using (var writer = new BinaryWriter(stream))
                {
                    writer.Write(content);
                }
            }

            return(testFile);
        }
Exemple #8
0
        /// <param name="tempRootDirectoryName">The subdirectory to use for temp files "MyApp"</param>
        public TestFileCleaner()
        {
            TempFolder = Path.Combine(s_rootTempFolder, Path.GetRandomFileName());
            string flagFile = Path.Combine(TempFolder, WinteropFlagFileName);

            lock (s_CleanLock)
            {
                // Make sure we fully lock the directory before allowing cleaning
                FileHelper.CreateDirectoryRecursive(TempFolder);

                // Create a flag file and leave it open- this way we can track and clean abandoned (crashed/terminated) processes
                _flagFile = FileMethods.CreateFileStream(flagFile,
                                                         DesiredAccess.GENERIC_READWRITE, ShareMode.FILE_SHARE_NONE, CreationDisposition.CREATE_NEW);

                var writer = new StreamWriter(_flagFile);
                writer.WriteLine("Temporary Flag File");
                writer.Flush();
            }
        }
 public void CreateStreamSystemIoDefines()
 {
     using (var cleaner = new TestFileCleaner())
     {
         string filePath = cleaner.GetTestPath();
         using (var stream = FileMethods.CreateFileStream(
                    path: filePath,
                    fileAccess: System.IO.FileAccess.Write,
                    fileShare: System.IO.FileShare.ReadWrite,
                    fileMode: System.IO.FileMode.Append,
                    fileAttributes: 0,
                    securityFlags: WInterop.Support.Environment.IsWindowsStoreApplication()
                 ? SecurityQosFlags.None
                 : SecurityQosFlags.QosPresent | SecurityQosFlags.Anonymous))
         {
             stream.Should().NotBeNull();
         }
     }
 }