2

FileStream指定されたファイルを作成するために使用していますLengthOpenFileDialogファイルを開きFolderBrowserDialog、場所を取得します。問題は、D:\ または E:\ ドライブの場所を選択すると、ファイルが正常に作成されることです。しかし、C:\ ドライブを選択すると、Exception同様の結果UnauthorizedAccessException was unhandled.
C:\file.mp4 is denied. が表示されます デスクトップを宛先として選択すると、「いいえException」と「ファイルを作成しません」が表示されます。私はこのコードを使用しています

    private void createFile()
    {
        long size = fileInfo.Length;
        string name = file.FileName.Substring(file.FileName.LastIndexOf('\\') + 1, (file.FileName.Length - (file.FileName.LastIndexOf('\\') + 1)));
        string filename = "" + location.SelectedPath + name;

        FileStream outFile = new FileStream(filename, FileMode.Create);
        outFile.SetLength(size);
        outFile.Close();
    }

UAC が無効になっており、管理者ユーザーでもあります。Windows 8 Pro を使用しています。誰が解決策を説明できますか? 前もって感謝します。

4

2 に答える 2

5

許可の問題。Vista/Windows 7/8 の場合、C:\ドライブはシステムと見なされ、その直下にファイルを作成するには、プロセスの昇格された特権が必要になります。プロセスまたは Visual Studio を管理者として実行してみてください。動作するはずです。

それが役に立てば幸い。

于 2013-01-04T09:18:54.120 に答える
0

exeを右クリック=>管理者として実行=>続行=>今すぐチェック。今すぐ動作するはずです。

于 2014-08-24T15:23:04.660 に答える