private static void Main(string[] args) { if (args.Length < 2) { Console.WriteLine("USAGE: ArchiveMaker fileName.tar <fileToAdd.ext> [. more files..]"); return; } using (FileStream archUsTar = File.Create(args[0])) { using (TarWriter legacyTar = new TarWriter(archUsTar)) { for (int i = 1; i < args.Length; ++i) { legacyTar.Write(args[i]); } } } Console.WriteLine("Examine tar file: {0}", args[0]); using (FileStream examiner = File.OpenRead(args[0])) { TarReader tar = new TarReader(examiner); while (tar.MoveNext(true)) { Console.WriteLine("File: {0}, Owner: {1}", tar.FileInfo.FileName, tar.FileInfo.UserName); } } using (FileStream unarchFile = File.OpenRead(args[0])) { TarReader reader = new TarReader(unarchFile); reader.ReadToEnd("out_dir\\data"); } }
static void Main(string[] args) { #if DEBUG Console.WriteLine("Waiting for debugger"); while (!System.Diagnostics.Debugger.IsAttached) { Thread.Sleep(1500); } Console.WriteLine("Debugger attached, continuing"); #endif if (args.Length > 0 && args[0] != "/test") { Dokan.Mount(new Operations(@"TestFiles\bsd-hello.tar"), "T:", DokanOptions.StderrOutput | DokanOptions.DebugMode | DokanOptions.RemovableDrive); } else { Console.Error.WriteLine("Test mode, not invoking Dokan driver at all"); TarReader reader = new TarReader(@"TestFiles\bsd-hello.tar"); var test = reader.ToDirectoryListing(); } }
public void ReadTarFile (string cleanUrl, Coherent.UI.ResourceResponse response) { string archivePath = Path.Combine(GetArchiveFolder(), m_ArchiveName); using (FileStream unarchFile = File.OpenRead(archivePath)) { TarReader reader = new TarReader(unarchFile); while (reader.MoveNext(true)) { var path = reader.FileInfo.FileName; if (path == cleanUrl) { using (MemoryStream ms = new MemoryStream((int)reader.FileInfo.SizeInBytes)) { reader.Read(ms); byte[] buffer = ms.GetBuffer(); RespondWithBytes(buffer, response); } break; } } } }
private void tbcPages_SelectedIndexChanged(object sender, EventArgs e) { Refresh(); btnBack.Enabled = (tbcPages.SelectedTab != tabCSR && tbcPages.SelectedTab != tabFinish); btnNext.Enabled = true; if (tbcPages.SelectedTab == tabFinish) { btnNext.Text = "&Finish >"; btnCancel.Enabled = false; } if (tbcPages.SelectedTab == tabParameters && !File.Exists(Icinga2InstallDir + "\\etc\\icinga2\\pki\\agent\\agent.crt")) { byte[] bytes = Convert.FromBase64String(txtBundle.Text); MemoryStream ms = new MemoryStream(bytes); GZipStream gz = new GZipStream(ms, CompressionMode.Decompress); MemoryStream ms2 = new MemoryStream(); byte[] buffer = new byte[512]; int rc; while ((rc = gz.Read(buffer, 0, buffer.Length)) > 0) ms2.Write(buffer, 0, rc); ms2.Position = 0; TarReader tr = new TarReader(ms2); tr.ReadToEnd(Icinga2InstallDir + "\\etc\\icinga2\\pki\\agent"); } if (tbcPages.SelectedTab == tabConfigure) { Thread thread = new Thread(ConfigureService); thread.Start(); } }