Exemple #1
0
        public static void SaveMD5Stream(AlternateDataStreamInfo md5StreamInfo, byte[] fileHash, DateTime fileWriteTimeUtc)
        {
            FileStream    md5Stream  = md5StreamInfo.OpenWrite();
            MD5Descriptor descriptor = new MD5Descriptor();

            descriptor.FileHash         = fileHash;
            descriptor.FileWriteTimeUtc = fileWriteTimeUtc;
            descriptor.WriteToStream(md5Stream);
            md5Stream.Close();
        }
        public void SetZoneIdentifier()
        {
            var fileInfo = new FileInfo(path);

            var ads = new AlternateDataStreamInfo(path, "Zone.Identifier", null, false);
            using(var stream = ads.OpenWrite())
            using(var writer = new StreamWriter(stream))
            {
                writer.WriteLine("[ZoneTransfer]");
                writer.WriteLine("ZoneId=3");
            }
        }
Exemple #3
0
        static void Main(string[] args)
        {
            try
            {
                const string Path       = @"E:\123.txt";
                const string StreamName = "stream1";

                //FileInfo file = new FileInfo(Path);
                //if (!file.Exists)


                //if (!file.AlternateDataStreamExists(StreamName))
                //{
                //}

                if (!File.Exists(Path))
                {
                    throw new FileNotFoundException(null, Path);
                }

                if (!FileSystem.AlternateDataStreamExists(Path, StreamName))
                {
                    Console.WriteLine("Stream not found; creating it...");

                    AlternateDataStreamInfo data = FileSystem.GetAlternateDataStream(Path, StreamName);
                    FileStream fsWriter          = data.OpenWrite();
                    fsWriter.WriteByte(65);
                    fsWriter.Close();
                }
                else
                {
                    AlternateDataStreamInfo data = FileSystem.GetAlternateDataStream(Path, StreamName);
                    FileStream fsWriter          = data.OpenWrite();
                    fsWriter.WriteByte(97);
                    fsWriter.Close();
                }

                AlternateDataStreamInfo data1 = FileSystem.GetAlternateDataStream(Path, StreamName);

                FileStream fsReader1 = data1.OpenRead();
                byte[]     buffer    = new byte[100];
                fsReader1.Read(buffer, 0, Convert.ToInt32(fsReader1.Length));
                FileStream fsWriter1 = data1.OpenWrite();
                fsWriter1.WriteByte(49);
                fsWriter1.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            Console.ReadKey();
        }
Exemple #4
0
        public void SetZoneIdentifier()
        {
            var fileInfo = new FileInfo(path);

            var ads = new AlternateDataStreamInfo(path, "Zone.Identifier", null, false);

            using (var stream = ads.OpenWrite())
                using (var writer = new StreamWriter(stream))
                {
                    writer.WriteLine("[ZoneTransfer]");
                    writer.WriteLine("ZoneId=3");
                }
        }
Exemple #5
0
        private static Guid _GetID(string uri)
        {
            const string TID = "lguid";

            if (File.Exists(uri) || Directory.Exists(uri))
            {
                if (FileSystem.AlternateDataStreamExists(uri, TID))
                {
                    Logger.D("{0} begin reader", uri);
                    AlternateDataStreamInfo adfs = FileSystem.GetAlternateDataStream(uri, TID);

                    FileStream   fs   = adfs.OpenRead();
                    StreamReader sr   = new StreamReader(fs);
                    string       guid = sr.ReadToEnd();
                    Logger.D("{0} begin close", uri);
                    sr.Close();
                    fs.Close();
                    sr.Dispose();
                    fs.Dispose();
                    Logger.D("{0} close reader", uri);
                    return(Guid.Parse(guid));
                }
                else
                {
                    Guid id = Guid.NewGuid();
                    AlternateDataStreamInfo adfs = FileSystem.GetAlternateDataStream(uri, TID);
                    FileStream   fs = adfs.OpenWrite();
                    StreamWriter sw = new StreamWriter(fs);
                    sw.WriteLine(id.ToString());
                    sw.Close();
                    fs.Close();
                    sw.Dispose();
                    fs.Dispose();
                    return(id);
                }
            }
            else
            {
                return(Guid.NewGuid());
            }
        }
Exemple #6
0
 private static void writeZoneIdentifier(string fileName, int zoneId, string referrerUrl, bool quietMode, AlternateDataStreamInfo ads)
 {
     using (var stream = ads.OpenWrite())
         using (var writer = new StreamWriter(stream))
         {
             if (!quietMode)
             {
                 Console.WriteLine("Writing Zone.Identifier value {0} to file {1}.", zoneId, fileName);
             }
             writer.WriteLine("[ZoneTransfer]");
             writer.WriteLine("ZoneId={0}", zoneId);
             if (referrerUrl.Length > 0)
             {
                 if (!quietMode)
                 {
                     Console.WriteLine("Writing ReferrerUrl value: {0}", referrerUrl);
                 }
                 writer.WriteLine("ReferrerUrl={0}", referrerUrl);
             }
         }
 }