docs: def GetWindowsInfo(self):
          '''Gets information from the #WINDOWS file.
          Checks the #WINDOWS file to see if it has any info that was
          not found in #SYSTEM (topics, index or default page.
          '''
          result, ui = chmlib.chm_resolve_object(self.file, '/#WINDOWS')
          if (result != chmlib.CHM_RESOLVE_SUCCESS):
              return -1
  
          size, text = chmlib.chm_retrieve_object(self.file, ui, 0l, 8)
          if (size < 8):
              return -2
  
          buff = array.array('B', text)
          num_entries = self.GetDWORD(buff, 0)
          entry_size = self.GetDWORD(buff, 4)
  
          if num_entries < 1:
              return -3
  
          size, text = chmlib.chm_retrieve_object(self.file, ui, 8l, entry_size)
          if (size < entry_size):
              return -4
  
          buff = array.array('B', text)
          toc_index = self.GetDWORD(buff, 0x60)
          idx_index = self.GetDWORD(buff, 0x64)
          dft_index = self.GetDWORD(buff, 0x68)
  
          result, ui = chmlib.chm_resolve_object(self.file, '/#STRINGS')
          if (result != chmlib.CHM_RESOLVE_SUCCESS):
              return -5
  
          size, text = chmlib.chm_retrieve_object(self.file, ui, 0l, ui.length)
          if (size == 0):
              return -6
  
          if (not self.topics):
              self.topics = self.GetString(text, toc_index)
              if not self.topics.startswith("/"):
                  self.topics = "/" + self.topics
  
          if (not self.index):
              self.index = self.GetString(text, idx_index)
              if not self.index.startswith("/"):
                  self.index = "/" + self.index
  
          if (dft_index != 0):
              self.home = self.GetString(text, dft_index)
              if not self.home.startswith("/"):
                  self.home = "/" + self.home