title: Reading files from system32 fails directly after Windows boot, but succeeds later
body: <p>I'm running a C# Windows Service on Windows 10 that is constantly polling (each 5ms) for current running processes and for each of the processes is getting its fingerprint which consists in the creation date, size and MD5 checksum. The service start is set to automatic.</p>
  <p>For getting the creation date I'm using:
  <code>File.GetCreationTime(absolutePathToProcess)</code></p>
  <p>To get the checksum I'm doing:</p>
  <pre><code>using (var md5 = System.Security.Cryptography.MD5.Create())
  {
      using (var stream = File.OpenRead(absolutePathToProcess))
      {
          var hash = md5.ComputeHash(stream);
          return (hash);
      }
  }
  </code></pre>
  <p>All runs smooth except at the Windows startup, when for the processes started from
  c:\windows\system32\ (e.g. <em>svchost.exe, wininit.exe, csrss.exe, wudfhost.exe</em> etc.) I'm getting
  <strong>System.IO.IOException The media is write protected</strong>, both for creation date and checksum. This does not happen regularly, only for some boots, and after just a few polls cycles the exception is not received anymore. The service has no order dependency set.
  Is there a protection that is applied to the files from system32 at the startup which is later removed?</p>