[
  {
    "Id": "727825",
    "ThreadId": "286735",
    "Html": "\r\n<p>My code is this:</p>\r\n<p></p>\r\n<div style=\"color:black; background-color:white\">\r\n<pre><span style=\"color:blue\"></span><pre><div style=\"color:black; background-color:white\"><pre><span style=\"color:blue\">Dim</span> args(2) <span style=\"color:blue\">As</span> <span style=\"color:blue\">String</span>\r\n<span style=\"color:blue\">Private</span> <span style=\"color:blue\">Sub</span> Buttonbackupjar_Click(sender <span style=\"color:blue\">As</span> System.Object, e <span style=\"color:blue\">As</span> System.EventArgs) <span style=\"color:blue\">Handles</span> Buttonbackjar.Click\r\n        <span style=\"color:blue\">Try</span>\r\n            <span style=\"color:blue\">Using</span> zip <span style=\"color:blue\">As</span> ZipFile = <span style=\"color:blue\">New</span> ZipFile(<span style=\"color:#a31515\">&quot;jar&quot;</span>)\r\n                <span style=\"color:green\">' Add the file to the Zip archive's root folder.</span>\r\n                zip.AddFile(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) &amp; <span style=\"color:#a31515\">&quot;\\AppData\\Roaming\\.minecraft\\bin\\minecraft.jar&quot;</span>)\r\n                <span style=\"color:green\">' Save the Zip file.</span>\r\n                zip.Save(Application.StartupPath &amp; <span style=\"color:#a31515\">&quot;\\backup\\backupjar.zip&quot;</span>)\r\n            <span style=\"color:blue\">End</span> <span style=\"color:blue\">Using</span>\r\n        <span style=\"color:blue\">Catch</span> ex <span style=\"color:blue\">As</span> Exception\r\n            MessageBox.Show(<span style=\"color:#a31515\">&quot;Error adding file to archive. &quot;</span> &#43; ex.Message)\r\n        <span style=\"color:blue\">End</span> <span style=\"color:blue\">Try</span>\r\n<span style=\"color:blue\">End</span> <span style=\"color:blue\">Sub</span>\r\n\r\n<span style=\"color:blue\">Private</span> <span style=\"color:blue\">Sub</span> Buttonjarre_Click(sender <span style=\"color:blue\">As</span> System.Object, e <span style=\"color:blue\">As</span> System.EventArgs) <span style=\"color:blue\">Handles</span> Buttonjarre.Click\r\n        args(0) = Application.StartupPath &amp; <span style=\"color:#a31515\">&quot;\\backup\\backupjar.zip&quot;</span>\r\n        args(1) = (Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) &amp; <span style=\"color:#a31515\">&quot;\\AppData\\Roaming\\.minecraft\\bin\\minecraft.jar&quot;</span>)\r\n        <span style=\"color:blue\">Dim</span> worker <span style=\"color:blue\">As</span> System.Threading.Thread\r\n        worker = <span style=\"color:blue\">New</span> System.Threading.Thread(<span style=\"color:blue\">New</span> System.Threading.ParameterizedThreadStart(<span style=\"color:blue\">AddressOf</span> Unzipjar))\r\n        worker.Start(args)\r\n        Labeljarentries.Visible = <span style=\"color:blue\">True</span>\r\n        Labeljarentries.Enabled = <span style=\"color:blue\">True</span>\r\n        <span style=\"color:blue\">Try</span>\r\n        <span style=\"color:blue\">Catch</span> ex2 <span style=\"color:blue\">As</span> Exception\r\n            Labeljarentries.Text = (<span style=\"color:#a31515\">&quot;Exception: &quot;</span> &amp; ex2.ToString)\r\n        <span style=\"color:blue\">End</span> <span style=\"color:blue\">Try</span>\r\n<span style=\"color:blue\">End</span> <span style=\"color:blue\">Sub</span>\r\n\r\n<span style=\"color:blue\">Private</span> <span style=\"color:blue\">Sub</span> Unzipjar(<span style=\"color:blue\">ByVal</span> args <span style=\"color:blue\">As</span> <span style=\"color:blue\">String</span>())\r\n        <span style=\"color:blue\">Using</span> zip <span style=\"color:blue\">As</span> ZipFile = ZipFile.Read(args(0))\r\n            <span style=\"color:blue\">Dim</span> entry <span style=\"color:blue\">As</span> ZipEntry\r\n            <span style=\"color:blue\">For</span> <span style=\"color:blue\">Each</span> entry <span style=\"color:blue\">In</span> zip\r\n                Updatejar(entry.FileName)\r\n                entry.Extract(args(1), ExtractExistingFileAction.OverwriteSilently)\r\n            <span style=\"color:blue\">Next</span>\r\n            Updatejar(<span style=\"color:blue\">String</span>.Format(<span style=\"color:#a31515\">&quot;{0} files restored!&quot;</span>, zip.Entries.<span style=\"color:blue\">Count</span>))\r\n        <span style=\"color:blue\">End</span> <span style=\"color:blue\">Using</span>\r\n<span style=\"color:blue\">End</span> <span style=\"color:blue\">Sub</span>\r\n\r\n<span style=\"color:blue\">Private</span> <span style=\"color:blue\">Sub</span> Updatejar(<span style=\"color:blue\">ByVal</span> filename <span style=\"color:blue\">As</span> <span style=\"color:blue\">String</span>)\r\n        <span style=\"color:blue\">If</span> <span style=\"color:blue\">Me</span>.InvokeRequired <span style=\"color:blue\">Then</span>\r\n            <span style=\"color:green\">'' invoke on the proper thread </span>\r\n            <span style=\"color:blue\">Me</span>.Invoke(<span style=\"color:blue\">New</span> Action(Of <span style=\"color:blue\">String</span>)(<span style=\"color:blue\">AddressOf</span> Updatejar), <span style=\"color:blue\">New</span> <span style=\"color:blue\">Object</span>() {filename})\r\n        <span style=\"color:blue\">Else</span>\r\n            Labeljarentries.Text = filename\r\n            <span style=\"color:blue\">MyBase</span>.Update()\r\n        <span style=\"color:blue\">End</span> <span style=\"color:blue\">If</span>\r\n<span style=\"color:blue\">End</span> <span style=\"color:blue\">Su</span><span style=\"color:blue\">b</span></pre>\r\n</div>\r\n</pre>\r\n</pre>\r\n</div>\r\n<p></p>\r\n<p>My error is this:</p>\r\n<p>&quot;Cannot create &quot;C:\\Users\\Soren\\AppData\\Roaming\\.minecraft\\bin\\minecraft.jar&quot; because a file or directory with the same name already exists.&quot;</p>\r\n<p>My backupjar.zip file have many subfolder! &quot;\\backup\\backupjar.zip\\Users\\Soren\\AppData\\Roaming\\.minecraft\\bin\\&quot;</p>\r\n<p>&nbsp;</p>\r\n<p>What have i done wrong? Please help me.</p>\r\n<p>Btw folder extraction works fine! (Great library!)</p>\r\n",
    "PostedDate": "2012-01-19T13:21:41.22-08:00",
    "UserRole": null,
    "MarkedAsAnswerDate": null
  }
]