頻繁に変更されるファイルでSHA1を計算する必要があります。私はコピー、貼り付け、Windowsエクスプローラでアーカイブを開くことができますが、using
命令でUnauthorizedAccessExceptionが発生します。例外は、ファイルのプロパティには当てはまらない読み取り専用ファイルがあることを示しています。Windowsエクスプローラでペーストを開いたり、アーカイブを開くことはできますが、コードから読み取ることはできませんか?
アーカイブは、フルアクセス権を持つ場所の共有ドライブにあります。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Security.Cryptography;
namespace TheTest
{
public class MakeSha1
{
static void Main(string[] args)
{
using (FileStream fs = new FileStream(@"###.xml.gz", FileMode.Open))
{
using (SHA1Managed sha1 = new SHA1Managed())
{
byte[] hash = sha1.ComputeHash(fs);
StringBuilder formatted = new StringBuilder(hash.Length);
foreach (byte b in hash)
{
formatted.AppendFormat("{0:X2}", b);
}
Console.WriteLine(formatted.ToString());
}
Console.ReadKey();
}
}
}
}
あなたが例外に言及した場合、少なくともメッセージを含めてください。 – Reniuz