Windows-Foto-Anzeige nutzen [Erledigt]

Fragen rund um diverse Windows-Versionen, ihr Verhalten unter Xbase++ und den Umgang mit der API

Moderator: Moderatoren

Antworten
Gerd König
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 193
Registriert: Fr, 09. Jun 2006 7:52
Wohnort: Nähe Sömmerda

Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Gerd König »

Hi,

ich experimentiere schon eine ganze Weile daran herum und habe noch keine Lösung gefunden:

Ich habe einen Ordner mit verschiedenen Dateien (vorwiegend PDFs, aber auch jpg-, bmp-, tif-Dateien)
PDFs öffne ich mit der Standardappliketion (Acrobat Reader)
Wenn ich die Standard-App auf Bilder anwende, startet immer ein Programm, mit dem ich auch die Bilder bearbeiten kann (z.B. Photoeditor).

Ich möchte aber einheitlich auf jedem PC im Netzwerk diese Bilder mit dem Windows-Photoviewer anzeigen und habe schon einiges mit RunShell() und Rundll32.exe ausprobiert.
Leider ohne Erfolg :banghead: :book: #-o

Vielleicht hat einer von Euch bereits dieses Problm gelöst?
Schon mal im Voraus herzlichen Dank
Gerd
Zuletzt geändert von Gerd König am Do, 17. Dez 2015 14:44, insgesamt 2-mal geändert.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen

Beitrag von brandelh »

Am einfachsten ist es das Standardprogramm festzulegen, aber wenn das nicht geht, müsste die EXE per Runshell funktionieren.

Kennst du die EXE dieses Windows-Photoviewers ?
Gruß
Hubert
Gerd König
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 193
Registriert: Fr, 09. Jun 2006 7:52
Wohnort: Nähe Sömmerda

Re: Windows-Foto-Anzeige nutzen

Beitrag von Gerd König »

Hallo Hubert,
der Photoviewer wird über die Rundll32.exe gestartet.

RunShell("PhotoViewer.dll ,ImageView_Edit +cFile","Rundll32.exe",.T.,.T.)

liefert z.B. den Fehler:

Problem beim Starten von PhotoViewer.dll
Das angegebene Modul wurde nicht gefunden.
Zuletzt geändert von Gerd König am Do, 17. Dez 2015 12:54, insgesamt 1-mal geändert.
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen

Beitrag von Rolf Ramacher »

Hallo Gerd

ich nutze ShellExecute - damit kannst du jede Art von Anzeige starten- ob PDF jpg, png

Code: Alles auswählen

#include "Common.ch"
#include "Gra.ch"
#include "Xbp.ch"
#include "Appevent.ch"
#include "Font.ch"
#include "Inkey.ch"
#include "dll.ch"

    #DEFINE  SW_HIDE              0
    #DEFINE  SW_SHOWNORMAL        1
    #DEFINE  SW_NORMAL            1
    #DEFINE  SW_SHOWMINIMIZED     2
    #DEFINE  SW_SHOWMAXIMIZED     3
    #DEFINE  SW_MAXIMIZE          3
    #DEFINE  SW_SHOWNOACTIVATE    4
    #DEFINE  SW_SHOW              5
    #DEFINE  SW_MINIMIZE          6
    #DEFINE  SW_SHOWMINNOACTIVE   7
    #DEFINE  SW_SHOWNA            8
    #DEFINE  SW_RESTORE           9
    #DEFINE  SW_SHOWDEFAULT      10

    FUNCTION ShellExecute( hWnd,cOperation,cFile,cParameters,cDir,nShowCmd )
    LOCAL hDLL
    LOCAL nResult
    DEFAULT cOperation TO "open"
    DEFAULT cParameters TO ""
    DEFAULT cDir TO SubStr(cFile,1,RAT("\",cFile)-1)
    DEFAULT nShowCmd TO SW_SHOW
      hDLL := DLLLoad("Shell32.DLL")
      IF hDll > 0
        nResult := DLLCall( hDll,DLL_STDCALL,"ShellExecuteA",hWnd,@cOperation,@cFile,@cParameters,@cDir,nShowCmd )
        DllUnload(hDll)
      ELSE
        nResult := -1
      ENDIF
    RETURN( nResult )
In diesem fall eine PDF

Code: Alles auswählen

	cVerz:=CurDrive()+":\"+CurDir()
			cFile:="inventurbeschreibung.pdf"
			ShellExecute(Nil,"open",cFile,Nil,cVerz)
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen

Beitrag von Jan »

Rolf,

das hilft leider nicht. Denn damit wird die Datei mit dem konfigurierten Standardprogramm geöffnet. Aber genau das will Gerd nicht haben. Der will ein selber fest vorgegebenes Programm nutzen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Gerd König
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 193
Registriert: Fr, 09. Jun 2006 7:52
Wohnort: Nähe Sömmerda

Re: Windows-Foto-Anzeige nutzen

Beitrag von Gerd König »

DIe Aufrufe

Code: Alles auswählen

i:=RunShell('"C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen "'+cFile,"Rundll32.exe",.T.,.F.)
i:=RunShell('"%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll, ImageView_Fullscreen "'+cFile,"Rundll32.exe",.T.,.F.)
liefern zwar keinen Fehler, aber es wird auch nichts angezeigt.

Im I-Net habe ich jetzt den Hinweis gefunden, eine Batch-Datei aufzurufen und dieser die anzuzeigende Datei als Parameter zu übergeben.
...aber irgendwie ist das von hinten durch die Brust ins Auge...

Gerd
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Windows-Foto-Anzeige nutzen

Beitrag von Werner_Bayern »

Servus Gerd,

zeig sie halt selber in einem xbPStatic an, ist doch trivial?
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen

Beitrag von brandelh »

Gerd König hat geschrieben:

Code: Alles auswählen

i:=RunShell('"C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen "'+cFile,"Rundll32.exe",.T.,.F.)[/quote]

fehlt da nicht ein [b],[/b] nach [b]ImageView_Fullscreen[/b] ?

[quote="Gerd König"]
Im I-Net habe ich jetzt den Hinweis gefunden, eine Batch-Datei aufzurufen und dieser die anzuzeigende Datei als Parameter zu übergeben.
...aber irgendwie ist das von hinten durch die Brust ins Auge...
Gerd[/quote]

wie sieht denn die Batch aus ?

Man kann darin die Syntax sehen UND man kann solche ja auch dynamisch erzeugen und ausführen (so fällt es niemand auf).
Gruß
Hubert
Gerd König
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 193
Registriert: Fr, 09. Jun 2006 7:52
Wohnort: Nähe Sömmerda

Re: Windows-Foto-Anzeige nutzen

Beitrag von Gerd König »

Vielen Dank für die Hinweise, folgender Code funktioniert:

Code: Alles auswählen

i:=RunShell("C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen "+cFile,"Rundll32.exe",.T.,.F.)
Gerd
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von brandelh »

Jetzt sehe ich es auch ... ( Blanks zwischen ' und " zur Verdeutlichung eingefügt.)

Code: Alles auswählen

i := RunShell ( '  "C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen "  '+cFile  ,"Rundll32.exe",.T.,.F.)
wurde als Parameter zu ...

Code: Alles auswählen

"C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen "MeinDateiname.PNG
dein neuer Vorschlag wird übersetzt nach

Code: Alles auswählen

C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen MeinDateiname.PNG
was auf jeden Fall geht, solange cFile keine Blanks enthält. Eventuell auch mit Blanks, ich weiß es nicht. Ansonsten so versuchen ...

Code: Alles auswählen

i := RunShell ( chr(34) + 'C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen ' + cFile + chr(34)  ,"Rundll32.exe",.T.,.F.)
möglicherweise auch so (ich kenn die Syntax von dem Viewer nicht):

Code: Alles auswählen

i := RunShell ( 'C:\WINDOWS\System32\shimgvw.dll, ImageView_Fullscreen ' + chr(34) + cFile + chr(34)  ,"Rundll32.exe",.T.,.F.)
Gruß
Hubert
Gerd König
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 193
Registriert: Fr, 09. Jun 2006 7:52
Wohnort: Nähe Sömmerda

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Gerd König »

Auch mit Blanks im Dateinamen funktioniert die Anzeige.

Gerd
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von brandelh »

schön :D
Gruß
Hubert
Benutzeravatar
Klaus Schuster
Foren-Administrator
Foren-Administrator
Beiträge: 366
Registriert: Do, 24. Jan 2008 10:01
Wohnort: 90762 Fürth
Hat sich bedankt: 9 Mal
Danksagung erhalten: 9 Mal

Re: Windows-Foto-Anzeige nutzen

Beitrag von Klaus Schuster »

Werner_Bayern hat geschrieben: Do, 17. Dez 2015 14:15 Servus Gerd,

zeig sie halt selber in einem xbPStatic an, ist doch trivial?
Helfe mir auf die Sprünge, Werner: Wie trivial ist es ein JPG/PDF etc innerhalb eines XbpStatic anzuzeigen? Zum Beispiel mit MuPDF.
Gruß Klaus
Benutzeravatar
azzo
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 483
Registriert: So, 28. Mär 2010 19:21
Danksagung erhalten: 11 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von azzo »

Hallo Gerd,
hast du ChatGPT schon gefragt?

LG
Otto


Es scheint, als ob du eine Lösung suchst, um auf verschiedenen PCs in deinem Netzwerk Bilder standardmäßig mit dem Windows-Fotoviewer anzuzeigen, unabhängig von der aktuell eingestellten Standardanwendung. Eine Möglichkeit, dies zu erreichen, wäre die Verwendung eines Skripts oder einer Gruppenrichtlinie, die die Standardanwendung für Bildformate auf den Windows-Fotoviewer setzt.

Hier ist ein Ansatz, wie du dies mit einem Skript umsetzen könntest:

1. **Erstellen eines Registry-Skripts**: Du kannst ein Registry-Skript erstellen, das die Standardanwendung für Bildformate wie JPG, BMP, TIFF usw. auf den Windows-Fotoviewer setzt. Ein solches Skript könnte beispielsweise Einträge in der Windows-Registry ändern, um den Windows-Fotoviewer als Standardanwendung für diese Dateitypen festzulegen.

2. **Verteilung und Ausführung des Skripts**: Dieses Skript kann dann auf allen PCs im Netzwerk verteilt und ausgeführt werden. Du kannst das Skript manuell ausführen oder automatisiert über Gruppenrichtlinien oder ein Netzwerkverwaltungstool verteilen und ausführen lassen.

3. **Beachten von Betriebssystemversionen**: Es ist wichtig zu beachten, dass die Schritte oder Registry-Einträge je nach Version des Windows-Betriebssystems variieren können. Stelle sicher, dass das Skript mit den Versionen von Windows kompatibel ist, die in deinem Netzwerk verwendet werden.

4. **Testen**: Vor der breiten Implementierung ist es ratsam, das Skript auf einem einzelnen PC zu testen, um sicherzustellen, dass es wie erwartet funktioniert und keine unerwünschten Nebeneffekte hat.

5. **Backup der Registry**: Vor jeglichen Änderungen an der Registry ist es empfehlenswert, ein Backup zu erstellen, um eventuelle Probleme rückgängig machen zu können.

Beachte, dass das Ändern von Registry-Einstellungen Risiken birgt und sorgfältig durchgeführt werden sollte. Es ist auch wichtig, die IT-Richtlinien deiner Organisation zu beachten, bevor du Änderungen im Netzwerk vornimmst.
Benutzeravatar
azzo
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 483
Registriert: So, 28. Mär 2010 19:21
Danksagung erhalten: 11 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von azzo »

Noch ein Nachtrag


Ich denke, es ist wichtig, dass wir Harbour/Clipper/xBase/etc. Fragen an ChatGPT stellen.
ChatGPT lernt!





ZB bin ich der einzige Benutzer von Harbourino, aber ich erziele bereits einige gute Ergebnisse mit meinen Fragen an ChatGPT.
***
Dieser Ansatz, ermöglicht durch Harbourino, macht Ihren Code organisierter und leichter zu warten. Jede Funktion oder jedes Modul kann in separaten Dateien gehalten werden, was die Codebasis sauberer und modularer macht.

Harbourino scheint ein Preprozessor-Werkzeug zu sein, das in Verbindung mit mod_harbour und Fivewin verwendet wird, die beide mit der Programmiersprache Harbour in Verbindung stehen. Harbour ist ein Open-Source-Compiler für die xBase-Supersprache, die oft zur Erstellung von Datenbankanwendungen verwendet wird.

Verwendung in mod_harbour: Harbourino scheint eine bedeutende Rolle bei der Vereinfachung des Quellcodes für mod_harbour-Anwendungen zu spielen. Laut einem Beitrag eines Benutzers namens Otto im mod_harbour-Forum hilft Harbourino dabei, den Quellcode lesbarer und wartbarer zu machen. Dies wird durch seine Patcher- und Preprozessor-Fähigkeiten erreicht, die einen organisierteren und gestrafften Codierungsprozess ermöglichen. In mod_harbour-Anwendungen kann das Hauptprogramm mit Harbourino auf nur wenige Zeilen vereinfacht werden, was den Aufbau des Anwendungsframeworks erleichtert.

Anwendung in Fivewin: Harbourino ist nicht auf mod_harbour beschränkt; es wird auch in Fivewin-Umgebungen verwendet. Fivewin ist ein Werkzeug zur Erstellung grafischer Benutzeroberflächen für Harbour-Anwendungen. In diesem Kontext hilft Harbourino dabei, komplexe Funktionen in einfachere, handhabbarere Module aufzuteilen. Dieser modulare Ansatz ermöglicht laut den FiveTech Software Tech Support-Foren eine einfachere Verwaltung verschiedener Teile einer Anwendung, wie z.B. xBrowse. Durch das Patchen einzelner .prg-Dateien in eine einzige Datei verbessert Harbourino die Organisation und Handhabbarkeit des Codes.

Diese Erkenntnisse deuten darauf hin, dass Harbourino ein unschätzbares Werkzeug für Entwickler ist, die mit Harbour arbeiten, insbesondere bei der Entwicklung von Web- und GUI-Anwendungen. Es verbessert die Lesbarkeit, Wartbarkeit und Modularität des Codes, die für eine effiziente Softwareentwicklung entscheidend sind.


Zum Harbourino-Dokument:

Das Dokument über Harbourino bietet Einblicke in seine Funktionalität als Preprozessor. Wichtige Punkte umfassen:

Funktionalität: Harbourino ist ein Preprozessor, der die Entwicklung, Lesbarkeit und Modifikation von Code vereinfacht. Er nimmt eine Textdatei, die in einer bestimmten Programmiersprachensyntax geschrieben ist, und gibt eine andere Textdatei in der Syntax einer anderen Sprache aus.
Features: Es bietet Dateieinbindung, Substitutionsmöglichkeiten und bedingte Kompilierung.
Modularität: Harbourino ermöglicht das Aufteilen komplexer Funktionen oder Klassen in kleinere, handhabbare Dateien. Beispielsweise kann man für jede Methode einer Klasse eine separate Datei haben, was den Programmierbestpraktiken entspricht, wie etwa Funktionen auf einer einzigen gedruckten Seite zu halten.
Syntaxbeispiele:
$-> wird verwendet, um Include-Dateien zu verlinken und einfache Textersetzungen vorzunehmen.
Platzhalter wie |UNIQUEID| oder |Platzhalter| werden verwendet.
Befehle wie $-> Dateiname 9999: Platzhalter=xxxxxxxx; ermöglichen spezifische Dateioperationen.
Kommentare können in Include-Dateien mit |- gemacht werden und erscheinen nicht in der gepatchten Release-Datei.
Preprozessor in Absätzen: Es ermöglicht das Preprocessing innerhalb von Absätzen für eine sauberere Code-Struktur, wie in einem Beispiel mit HTML- und JavaScript-Code gezeigt.
Pfadverwaltung: Harbourino kann Pfade im Quellcode über Platzhalter und Einstellungen in einer INI-Datei verwalten.
Harbourino-Manager: Es wird erwähnt, dass alle Funktionen von Harbourino von einer Konsole aus verwaltet werden können.
Dieses Dokument bietet einen guten Überblick über die Fähigkeiten von Harbourino und betont seinen Nutzen, den Code handhabbarer und wartbarer zu machen, besonders für Anfänger oder weniger erfahrene Programmierer.
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Windows-Foto-Anzeige nutzen

Beitrag von Werner_Bayern »

Klaus Schuster hat geschrieben: Do, 16. Nov 2023 9:10
Werner_Bayern hat geschrieben: Do, 17. Dez 2015 14:15 Servus Gerd,

zeig sie halt selber in einem xbPStatic an, ist doch trivial?
Helfe mir auf die Sprünge, Werner: Wie trivial ist es ein JPG/PDF etc innerhalb eines XbpStatic anzuzeigen? Zum Beispiel mit MuPDF.
Servus Klaus,

da ging es um die Aufgabe:
Ich möchte aber einheitlich auf jedem PC im Netzwerk diese Bilder mit dem Windows-Photoviewer anzeigen und habe schon einiges mit RunShell() und Rundll32.exe ausprobiert.
Du willst PDF anzeigen? Oder Bilder aus PDFs extrahieren und anzeigen?
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Klaus Schuster
Foren-Administrator
Foren-Administrator
Beiträge: 366
Registriert: Do, 24. Jan 2008 10:01
Wohnort: 90762 Fürth
Hat sich bedankt: 9 Mal
Danksagung erhalten: 9 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Klaus Schuster »

Servus Werner, ja, genau. Ein PDF innerhalb einer XbpStatic-Groupbox anzeigen. Ich bin mittlerweile am Testen, ob ich mit der Win-Api und setParent in der User32.dll weiterkomme.

NACHTRAG: Mit

EXTERN LONG SetParent( hWndChild AS LONG, hWndNewParent AS LONG ) IN User32

klappt es. Mit der Funktion ListWindowTitles(), die Du vor geraumer Zeit im Forum eingestellt hast, kann ich ganz einfach das handle des PDF-Viewers ermitteln und in hWndChild übergeben. Der Wert in hWndNewParent stammt aus ::oGbHtmlDokument:GetHwnd(). Vielen Dank Werner für ListWindowTitles()! Unsicher bin ich noch, wie schnell ListWindowTitles() das handle einer kurz zuvor geöffneten Applikation ermittelt. Gefühlt, ist es nicht sofort sichtbar. Deshalb wartet das Programm eine Sekunde zwischem dem Aufruf von SumatraPDF und ListWindowTitles(). Vielleicht hast Du ja Erfahrungswerte?
Gruß Klaus
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Werner_Bayern »

Servus Klaus,

das freut mich, dass Du da eine Lösung gefunden hast. Dürfte einzigartig sein, Respekt.

Ja, wenn Du den Viewer per shellexecute startest, hast nicht sofort einen Fenstertitel. Ich mache das in einer Schleife (Code geändert, ohne auf Syntax zu prüfen):

Code: Alles auswählen

   starteDatei(cProgramm)
   oXbp := hinweis(cProgramm + " wird gestartet, bitte warten...")
   nStartSekunden := seconds() + WARTEZEITPROGSTART
   DO WHILE seconds() < nStartSekunden  .AND. nProgHandle == 0
      sleep(50)  // 1/2 Sekunde warten
      nProgHandle := WindowsFensteroffen(cProgramm)
   ENDDO
   oXbp:destroy()
Damit wartest nicht stur eine fixe Zeit.

PS: Ist das nicht Diebstahl, was Du da machst? :wink:
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Klaus Schuster
Foren-Administrator
Foren-Administrator
Beiträge: 366
Registriert: Do, 24. Jan 2008 10:01
Wohnort: 90762 Fürth
Hat sich bedankt: 9 Mal
Danksagung erhalten: 9 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Klaus Schuster »

was genau meinst Du, hätte ich gestohlen?
Gruß Klaus
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Werner_Bayern »

Klaus Schuster hat geschrieben: Mo, 20. Nov 2023 8:24 was genau meinst Du, hätte ich gestohlen?
Du klaust dem PDF-Viewers seinen Parent und schiebst ihm einfach einen anderen unter :badgrin:
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Klaus Schuster
Foren-Administrator
Foren-Administrator
Beiträge: 366
Registriert: Do, 24. Jan 2008 10:01
Wohnort: 90762 Fürth
Hat sich bedankt: 9 Mal
Danksagung erhalten: 9 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Klaus Schuster »

mea culpa, mea maxima culpa...
Gruß Klaus
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Tom »

Nur mal so am Rande bemerkt:

Wenn ich dem XbpHtmlViewer2 per Navigate-Methode den Namen einer PDF-Datei reiche, verhält er sich als PDF-Viewer. Und JPG, PNG usw. kann er ja sowieso. Oder XML.
Herzlich,
Tom
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Werner_Bayern »

Korrekt Tom,

aber Klaus hat auch das Viewer2-Runtime Problem. Jetzt hat er ja eine brauchbare Lösung im entsprechenden Thread. :wink:
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Windows-Foto-Anzeige nutzen [Erledigt]

Beitrag von Tom »

Ich denke, das XbpHtmlViewer2-Runtime-Problem wird sich lösen, und dann hat man eine kompakte, steuerbare, schnell und ohne Zusatzaufwand verwendbare Komponente, die u.v.a.m. PDFs anzeigen (und drucken, speichern, skalieren - alles steuerbar!) kann. Die ich auch mit dem kleinen Hakeligkeitsproblem (das die PDF-Anzeige m.E. nicht betrifft) jederzeit diesem Parent-Rauben einer extern gestarteten Komponente mit Warteschleife und Dutzenden Eventualitäten vorziehen würde. Ganz persönlich. Was natürlich völlig unmaßgeblich ist. 8)

Und ich wollte nur noch einmal darauf hingewiesen haben. Wer mit Foxit, VSPDF, Sumatra usw. hantiert und da irgendwie versucht, alle Widrigkeiten zu umschiffen - PDF-Viewing gibt's an Bord für lau.
Herzlich,
Tom
Antworten