title: Infotip shell-extension
body: <p>I have taken as a basis the following sample Shell-Extension sample code from an old MSDN journal.</p>
  <p><a href="https://docs.microsoft.com/en-us/archive/msdn-magazine/2000/march/windows-2000-ui-innovations-enhance-your-user-s-experience-with-new-infotip-and-icon-overlay-shell-extensions" rel="nofollow noreferrer">https://docs.microsoft.com/en-us/archive/msdn-magazine/2000/march/windows-2000-ui-innovations-enhance-your-user-s-experience-with-new-infotip-and-icon-overlay-shell-extensions</a></p>
  <p>I made minor modifications on it and compiled it as an x64 shell extension using VS 2019 toolset and, as a well written, it compiled and ran without a hitch whatsover.</p>
  <p>Essentially my requirement is to be informed of the full-path filename under the hovering mouse, a replacement of the old ListView_GetHotItem Macro.</p>
  <p>The sample extension worked delivered this as I can obtain the filename directly from the function GetInfoTip().</p>
  <p>To my dismay the extension works (in File Explorer) only if the mouse is hovering over fixed drives files, but not if it a file from a phone or my camera. In this instance GetInfoTip() does not receive the filename.</p>
  <p>I spent quite some time fiddling with the registry settings until it dawned on me that it is the CBmpTip class itself is missing a key interface in its derivation.</p>
  <p>Can someone please please offer a hint ?</p>