Windows Vorschau in eigenem Programm

Für allgemeine Fragen zur Programmierung mit PureBasic.
PureFreak
Beiträge: 11
Registriert: 07.01.2013 20:04

Windows Vorschau in eigenem Programm

Beitrag von PureFreak »

Hallo alle zusammen,

hat sich bereits jemand mit dem Thema Vorschauhandler in Purebasic beschäftigt?
Ich möchte die Windowsvorschau von Dateien in einem Purebasic-Programm verwenden.
Die Informationen sind recht dünn gesät zu diesen Thema und schon gar keine Infos
in Zusammenhang mit Purebasic.

Wäre schön wenn bereits jemand Erfahrungen gesammelt hat und diese mit mir teilen würde.

gruß PureFreak
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Windows Vorschau in eigenem Programm

Beitrag von RSBasic »

Welche Vorschau meinst du genau?
Möchtest du z.B. Bilder im OpenFileRequester als Vorschau anzeigen lassen? Oder was anderes?
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
PureFreak
Beiträge: 11
Registriert: 07.01.2013 20:04

Re: Windows Vorschau in eigenem Programm

Beitrag von PureFreak »

Nein, nicht nur Bilder oder thumbnails im Filerequester, sondern die richtige Dateivorschau wie im Windowsexplorer wo
z.B. der Inhalt von Excel, Word oder PDF Dateien nach dem anklicken angezeigt werden.
Diese möchte ich dann in einer Picturebox oder Canvasgadget anzeigen.

gruß PureFreak
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Windows Vorschau in eigenem Programm

Beitrag von RSBasic »

Also meinst du ExplorerListGadget (ListView) von Windows mit den verschiedenen Ansichten und mit der Vorschaufunktion bei größerer Ansicht.
Aber wie ich dich richtig verstanden habe, möchtest du garnicht ExplorerListGadget verwenden, sondern selber machen.
Vielleicht ist dieser Code was für dich? http://www.purebasic.fr/english/viewtop ... 12&t=54947 (Beispiel für Grafikdateien)
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
PureFreak
Beiträge: 11
Registriert: 07.01.2013 20:04

Re: Windows Vorschau in eigenem Programm

Beitrag von PureFreak »

Hallo RSBasic,

ich möchte kein ExplorerListGadget erstellen oder nachahmen. Ich habe hier für uns in der Firma
eine Projektdatenbank programmiert. Wir arbeiten damit jetzt bereits zwei Jahre. Es werden alle
Anfrage die wir bekommen in einem Projekt abgelegt. In dieses Projekt kommen alle Mails, Anfragen,
PDFs, Zeichnungen, Notizen, Kalkulationen zu dieser Anfrage. Im Prinzip werden alle Dateien in einem
speziellen Listview Gadget angezeigt. Ist so eine Art abgewandelte DokumentenManagement Software.
Für die derzeit angewählte Datei wird rechts daneben eine Vorschau angezeigt. PDFs, Grafikformate
(JPG,TIFF usw) und Textdateien zeige ich über SumatraPDF direkt als Vorschau in meinem Fenster an.
Mails wandle ich direkt nach dem hinzufügen durch Drag and Drop in HTML um und lasse sie über ein
WebGadget anzeigen. Das funktioniert auch alles wie es soll.

Viele der Dokumente liegen aber z.B. als Word, Excel oder PowerPoint Dateien vor.
Für diese habe ich keine Möglichkeit zum anzeigen. Windows zeigt mir diese jedoch im Explorer an.
Diese Vorschau möchte ich nutzen. Das ganze wird über sogenannte Preview Handler erledigt.
Nur wie man diese in Purebasic verwendet, entzieht sich derzeit meiner Kenntnis.

Ich hoffe jetzt ist klar was ich machen will, oder?

gruß PureFreak
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Windows Vorschau in eigenem Programm

Beitrag von RSBasic »

Eine fertige Preview-Funktion für alle Dateiformate ist mir nicht bekannt. Da musst du alles selber bauen bzw. eine Abfrage erstellen und die jeweilige Funktion erstellen oder einbinden:
  • Wenn die Datei ein Bild (bmp, png, jpg, gif, ...) ist, dann ImageGadget.
  • Wenn die Datei eine Reintext-Datei (txt, ...) oder RTF-Datei ist, dann EditorGadget.
  • Wenn die Datei ein Word-/Excel/(...)-Dokument ist, dann die COMatePlus-Komponente verwenden.
  • Wenn die Datei eine Sound- oder Videodatei ist, dann PlayMovie.
  • Wenn die Datei eine lokal gespeicherte Website (html, htm, mht, ...) ist, dann WebGadget.
  • Wenn die Datei ein PDF-Dokument ist, dann eine PDF-Komponente verwenden oder falls ein PDF-Plugin im IE installiert ist, dann WebGadget.
  • Wenn die Datei ein Archiv ist (zip, cab, ...), dann WebGadget.
  • ...
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
PureFreak
Beiträge: 11
Registriert: 07.01.2013 20:04

Re: Windows Vorschau in eigenem Programm

Beitrag von PureFreak »

Und genau an dem Punkt wo Du eben geschrieben hast, das man da alles selber machen muß, setzen
eben die Preview Handler an. Nachfolgend ein Link zu dem Thema:

https://www.codeproject.com/Articles/19 ... dows-Vista

Hier wird ein Ausschnitt eines solchen Codes gezeigt. Ich habe aber keine Möglichkeit den
Beispielsource zu testen oder zu verändern. Deswegen dachte ich jemand hätte so etwas bereits
getan.

gruß PureFreak
Benutzeravatar
Bisonte
Beiträge: 2429
Registriert: 01.04.2007 20:18

Re: Windows Vorschau in eigenem Programm

Beitrag von Bisonte »

In dem verlinktem werden Interfaces benutzt und Instanzen erstellt. Das sieht extrem nach .NET Programmierung aus, wo ich
RSBasic's Vorschlag mit COMate definitiv unterstütze.
PureBasic 6.10 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: Windows Vorschau in eigenem Programm

Beitrag von ccode_new »

Schon mal einen Office-Webviewer probiert ?
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
PureFreak
Beiträge: 11
Registriert: 07.01.2013 20:04

Re: Windows Vorschau in eigenem Programm

Beitrag von PureFreak »

Webviewer könnte eine Lösung für das Problem sein, muß ich mal testen.

COMate war auch mein erster Gedanke gewesen. Ich wollte ein embedded
Excel einbinden und die Datei normal laden. Das Beispiel hat bei mir allerdings nie
funktioniert. Verwende COMate nur zum Export von Daten aus der Betriebsdatenerfassung
die ich auch mit Purebasic erstellt habe.

Ich werde mal die Sache mit den Webviewer testen und ansonsten mich in die Materie
mal einarbeiten. Irgendwie hat es immer zu einer Lösung gereicht.

Gruß PureFreak
Antworten