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

  • ☆ SUB4SUB CENTER! ☆ spam here

    ☆ SUB4SUB

    22 ŞUBAT 2010
  • John Lynn

    John Lynn

    8 Ocak 2010
  • Video-Tutorials.Net

    Video-Tutori

    15 Mart 2011