2014-09-02 15 views
6

ile OpenExisting başarısız olur Sistem eşleşmesi bilgileri alt klasöründe bellek eşlemeli dosyayı açmaya çalışıyorum. Biliyorum ve explorer'da orada olduğunu ve yolun doğru olduğunu (kaşifden kopyala yapıştırılmış) biliyorum, ayrıca bu yol için File.Exists doğru geliyor, ancak MemoryMappedFile.OpenExisting DirectoryNotFoundException ile başarısız oluyor. Niye ya? (Sistem hacmi bilgi klasörü ve alt klasörleri için tüm haklara sahibim).File.Exists true değerini döndürür ve DirectoryNotFoundException

Bazı kod:

const string filePath = @"C:\\System Volume Information\\Foo\\2.ext"; 

bool exists = File.Exists(filePath); //is true 
using (MemoryMappedFile bitmapFile = MemoryMappedFile.OpenExisting(filePath, MemoryMappedFileRights.Read)) //Throws DirectoryNotFoundException 
{ 
    ... 
} 

cevap

1

Bunları API'ler kullanmadıysanız, ama öncelikle belleğe dosyayı eşlemek gerekir inanıyoruz. MemoryMappedFile.CreateFromFile

İlgili konular