SORU
15 ŞUBAT 2012, ÇARŞAMBA


Nasıl Değil-Yeterli Disk Alanı-İstisna tipi, IOException olmadığını kontrol edin.

Ne varsa IOException "yetersiz disk alanı" özel durum türü? eğer bir kontrol edebilirim

Eğer bu mesaj bir şey gibi maçlar olmadığını görmek için kontrol ediyorum şu anda "yetersiz disk alanı", ama ben bu OS dili İngilizce değil ise işe yaramaz.

CEVAP
15 ŞUBAT 2012, ÇARŞAMBA


ERROR_DISK_FULL (0x70) ERROR_HANDLE_DISK_FULL (0x27) karşı HResult ve test kontrol etmeniz gerekir

Özel bir durum için HResult almak için kullanın. Marshal.GetHRForException

static bool IsDiskFull(Exception ex)
{
    const int ERROR_HANDLE_DISK_FULL = 0x27;
    const int ERROR_DISK_FULL = 0x70;

    int win32ErrorCode = Marshal.GetHRForException(ex) & 0xFFFF;
    return win32ErrorCode == ERROR_HANDLE_DISK_FULL || win32ErrorCode == ERROR_DISK_FULL;
}

GetHRForException, Web belgeleri: bir yan etkisi olduğunu unutmayın

Bu notuGetHRForExceptionyöntem ayarlarIerrorınfobu geçerli iş parçacığı. Bu gibi yöntemler için beklenmedik sonuçlara neden olabilir ThrowExceptionForHR kullanarak varsayılan yöntemleriIerrorınfobu eğer geçerli iş parçacığı ayarlanır.

Ayrıca How do I determine the HResult for a System.IO.IOException? bkz

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BeginnersTech

    BeginnersTec

    8 NİSAN 2011
  • HowcastSportsFitness

    HowcastSport

    11 Mayıs 2011
  • Rayone GB

    Rayone GB

    14 Temmuz 2007