Laden...

[erledigt] Windows API Code Pack Thumbnail

Erstellt von Diräkt vor 8 Jahren Letzter Beitrag vor 8 Jahren 3.262 Views
D
Diräkt Themenstarter:in
615 Beiträge seit 2009
vor 8 Jahren
[erledigt] Windows API Code Pack Thumbnail

Liebe Leute 😃

Problematik:

Thumbs generieren funktioniert in WinForms Applikation.
Thumbs generieren funktioniert auch in WebForms, aber nicht für PDF ?! (hier erhalte ich nur das PDF Icon anstatt die erste Seite als Vorschau)

Code:


 public Bitmap GetBitmapFromFilePath(string filePath)
        {
            ShellFile sFile = ShellFile.FromFilePath(filePath);
            sFile.Thumbnail.FormatOption=ShellThumbnailFormatOption.ThumbnailOnly; ***
            return sFile.Thumbnail.MediumBitmap;
        }

*** Wenn ich dieses Property setze erhalte ich in der WebForms Applikation folgende Exception:
ohne diese Zeile erhalte ich bei Webforms das PDF Icon und bei Winforms die erste Seite als Preview.

( Class not registered (Ausnahme von HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)) )
(Soll wohl soviel heissen wie; keine Vorschau vorhanden)


=> Ich benutze den selben Rechner für Winform und Webform Test => Ich benutze das selbe File für Winform und Webform Test

Jemand eine Idee ?

( Hier scheint jemand das gleiche Problem zu haben, leider ohne Lösung )
Stackoverflow - Windows Api Code Package Shell Thumbnail Generation

Beste Grüsse

Diräkt

1.029 Beiträge seit 2010
vor 8 Jahren

Hi,

das Property basiert prinzipiell auf der IShellItemImageFactory. (lt. IlSpy)

Basierend auf folgendem: http://stackoverflow.com/questions/12654835/accessing-thumbnails-that-dont-exist - würde ich für meinen Teil vermuten, dass es mit dem UAC-Level zu tun hat.

Das könnte z.B. daran liegen, dass diese native Methode versucht die Bilder zu cachen.
Zudem ist der Handler für Thumbnails ja ein anderer (wahrscheinlich von Acrobat) wie der für Icons (Microsoft)....

Was ich mir auch noch vorstellen kann:
Gerade diese PDF-Handler haben (soweit mir bekannt) auch ein Problem mit MTA-Applikationen. (COM-Interop & Co. scheint wohl eher für STA-Applikationen?)

Ich hatte vor einer halben Ewigkeit auch mal eine Art Hack (Titel hatte was mit "bypassing COM" zu tun) gefunden, der das ganze für den PDF-Preview-Handler irgendwie umgangen hatte. Leider finde ich es nicht mehr -.- Vielleicht hast du ja mehr Glück...

LG

F
10.010 Beiträge seit 2004
vor 8 Jahren

Naja, WebForms läuft unter einem WebServer, also zu 90% unter IIS.
Und der läuft unter einem anderen User.

D
Diräkt Themenstarter:in
615 Beiträge seit 2009
vor 8 Jahren

Herzlichen Dank für die Tipps.

Da ShellFile das File von Windows representiert, sind Thumbs nur verfügbar wenn die entsprechenden Programme auch auf dem Server installiert sind, daher ist es für WEB sowieso das Falsche.

Besten Dank und beste Grüsse

Diräkt