dahall / WinClassicSamplesCS

A duplication in C# of the "Windows-classic-samples" using Vanara libraries.
44 stars 8 forks source link

CloudMirror ThumbnailProvider doesn't provide thumbnails #6

Open PrimalZed opened 3 months ago

PrimalZed commented 3 months ago

The CloudMirror doesn't generate thumbnails using the ThumbnailProvider.

The Initialize method correctly gets called for each path, but the GetThumbnail doesn't seem to ever get called. Ultimately, the thumbnail does not load to the client.

image

I looked at #2, but that seems to be about the more general shell registration. The shell registration and registered handlers (or at least the custom command, I haven't tried the others) do work, including the call to ThumbnailProvider.Initialize.

C++ version

Running the latest from Windows-classic-samples gets thumbnails in the file explorer. (Oddly, breakpoints in GetThumbnail are not hit, ~and wprintf added to it does not show up in the console~. I don't know whether that means it's actually getting the thumbnail in some other way, or that it's some threading change that runs the GetThumbnail method in some other context outside the debugger/console.) image

PrimalZed commented 3 months ago

A quick correction: The windows-classic-samples c++ version does log from wprintf in the GetThumbnails. While it does not hit breakpoints, neither does it hit breakpoints in Initialize. There might be something about breakpoints with C++ that I'm not getting here.

dahall commented 2 months ago

There are so many problems with that project conversion. Sorry. Personally, I would look to the ShellIconExtractor class if you need that support.