title: SelectDirectory/ShBrowseForFolder issue when having a lot of shell items
body: <p>I'm running into a very strange problem with the Vcl.FileCtrl function <strong>SelectDirectory</strong>  (which is a thin wrapper around the <strong>ShBrowseForFolder</strong> Win32 API).</p>
  
  <p>I'm using the following code to allow the user to browse for a file or a folder:</p>
  
  <pre><code>  if SelectDirectory('Sélectionnez un élément à ajouter :', '', S, [sdNewFolder,
      sdShowFiles, sdNewUI]) then
  </code></pre>
  
  <p>When executing this code, the "Browse for folder" dialog is correctly shown, displaying the content of the user's Desktop:</p>
  
  <p><img src="https://i.stack.imgur.com/JECN1.png" alt="SelectDirectory with less than 100 desktop files"></p>
  
  <p>But when the number of items in the Desktop folder is excessively large (on my computer, I can reproduce the problem by having approx. 100 desktop icons), the same call produces a totally different display:</p>
  
  <p><img src="https://i.stack.imgur.com/fqIbf.png" alt="SelectDirectory with more than 100 desktop files"></p>
  
  <p>In this case, the Desktop items aren't shown anymore. I'm only allowed to explore my home folder and since I've lost the "My Computer" icon I cannot select a file/folder outside of this directory.</p>
  
  <p>I'm searching what I'm missing here. Is there a limit in the number of subitems a root item can have for a correct display? Having a lot of desktop icons is certainely not a good practice, but as far as I know that shouldn't prevent this dialog to operate normally. I'm not sure if there is something wrong in the Delphi wrapper, or if that's a limitation of the API I didn't see on MSDN... </p>
  
  <p>Any hint appreciated!</p>