There is a problem. It is necessary to catch errors when working with the file system. While the majority of errors cause an IOException to separate one bug from another is obtained only on the text of the exception or HResult code. What could be codes HResult from IOException (the chart on MSDN do not offer — there are 16 thousand codes, need only IOException)?