0

.zip ファイルをパス「C:\Program Files (x86)」に解凍するプロジェクトを行っています。エラーを返します:

タイプ 'System.UnauthorizedAccessException' の未処理の例外が Ionic.Zip.dll で発生しました

私はよく検索しますが、この問題を解決する方法を理解できません。お願い助けて 。

私のコード:

namespace UTAD__VPN_w7
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }

        private void buscarpasta()
        {
            DialogResult result = this.folderBrowserDialog1.ShowDialog();
            if (result == DialogResult.OK)
            {

                /*string pedro = folderBrowserDialog1.SelectedPath;
                string pedro2 = pedro.Replace("\\", "\\\\");
                textBox1.Text = pedro2;*/
                string pasta1 = folderBrowserDialog1.SelectedPath;
                var pasta2 = pasta1.Replace(@"\", @"\\");
                textBox1.Text = pasta2;

            }
        }

        private void MyExtract()
        {


            string zipToUnpack = "C:\\Users\\Zé Eduardo\\Music\\Cisco.zip";
            string unpackDirectory = textBox1.Text;
            using (ZipFile zip1 = ZipFile.Read(zipToUnpack))
            {
                // here, we extract every entry, but we could extract conditionally
                // based on entry name, size, date, checkbox status, etc.  
                foreach (ZipEntry e in zip1)
                {

                    e.Extract(unpackDirectory, ExtractExistingFileAction.OverwriteSilently);
                }
            }
        }





        private void button1_Click(object sender, EventArgs e)
        {
            buscarpasta();




        }
}

フォルダーbrowserdialog1でパスを取得し、ボタン1をクリックして解凍します

4

3 に答える 3

2

プログラムは、昇格されたアクセス許可 (管理者など) で実行する必要がある可能性があります。アプリを昇格が必要であることを示すマニフェストの作成については、MSDN のドキュメントを参照してください ( http://msdn.microsoft.com/en-us/library/windows/desktop/bb756973.aspx )。要点は次のとおりです。

<requestedExecutionLevel level="requireAdministrator"/>
于 2013-05-10T14:30:17.860 に答える
0

解凍するデータがアプリケーションに属している場合、そのデータを保存するのに適した場所は、

Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)

音楽ファイルを扱っているようです。その場合は、代わりに MyMusic ディレクトリを検討することをお勧めします。

システム特殊フォルダの一覧があります。それらを使用すると、プログラムがさまざまなバージョンの Windows で確実に動作し、適切なフォルダーを使用する場合、ファイル システムのアクセス許可に問題はありません。

于 2013-05-13T17:52:12.253 に答える