Windows PhotoViewer

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Windows PhotoViewer

Beitrag von Velindos »

Hallo Leuter,
jemand eine Ahnung wie man den Windows PhotoViewer mit einen Fotopfad aufrufen kann?

Das alles funzt nicht:

Code: Alles auswählen

; rundll32.exe "c:\Program Files\Windows Photo Viewer\PhotoViewer.dll", ImageView_Fullscreen 

RunProgram("rundll32.exe 'c:\Program Files\Windows Photo Viewer\PhotoViewer.dll'",Chr(34)+"D:\Pictures\Photo Calender Malle 2017 Part 2\WIN_20170923_15_56_49_Pro.jpg"+Chr(34),"")
; RunProgram("rundll32.exe"+ " %ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll",Chr(34)+PhotoCalender_VollstaendigerPfadZurExe$+Chr(34),"")
Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Windows PhotoViewer

Beitrag von RSBasic »

Code: Alles auswählen

RunProgram("rundll32.exe", Chr(34) + "C:\Program Files\Windows Photo Viewer\PhotoViewer.dll" + Chr(34) + ",ImageView_Fullscreen D:\Pictures\Photo Calender Malle 2017 Part 2\WIN_20170923_15_56_49_Pro.jpg", "")
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Windows PhotoViewer

Beitrag von Sicro »

Code: Alles auswählen

Program$    = "rundll32.exe"
Parameter1$ = #DQUOTE$ + "%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll" + #DQUOTE$
Parameter2$ = "D:\Pictures\Photo Calender Malle 2017 Part 2\WIN_20170923_15_56_49_Pro.jpg"

RunProgram(Program$, Parameter1$ + " " + Parameter2$, "")
;RunProgram(Program$, Parameter1$ + ",ImageView_Fullscreen " + Parameter2$, "")
How to run Photoviewer.dll in command line

Evtl. könnte dies deine nächste Frage sein:
Open multiple files using photo viewer
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Windows PhotoViewer

Beitrag von RSBasic »

@Sicro
Hast du deinen Code überhaupt getestet?
1. Man muss zuerst die DLL-Funktion ImageView_Fullscreen aufrufen und als Parameter den Pfad zur Grafikdatei übergeben.
2. Du kannst keine Umgebungsvariablen direkt in RunProgram() einfügen. Du musst GetEnvironmentVariable() benutzen, um %ProgramFiles% aufzulösen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Windows PhotoViewer

Beitrag von Velindos »

Hallo Leute!

Eure Hilfe ist schneller als der Blitz, DANKE!

Habe die Sache wie folgt eingefügt:

Code: Alles auswählen

RunProgram("rundll32.exe", Chr(34) + "C:\Program Files\Windows Photo Viewer\PhotoViewer.dll" + Chr(34) + ",ImageView_Fullscreen "+PhotoCalender_VollstaendigerPfadZurExe$, "")
Und die FUNZT!
Du kannst keine Umgebungsvariablen direkt in RunProgram() einfügen.
Wollte mal das mit den Umgebungsvariablen, ging aber nicht. Also Verzeichnisse wie /Bilder etc. konnte ich nicht einbinden!

Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Windows PhotoViewer

Beitrag von Sicro »

@RSBasic:
Den Code habe ich nicht getestet, da ich aktuell nur noch eine WindowsXP-VM zur Verfügung habe und dort das Programm nicht vorhanden ist.
Zu 1.: Jo, ist ja eine DLL und kein Programm und daher kann der Parameter "ImageView_Fullscreen" gar nicht optional sein … :coderselixir:
Zu 2.: Ok, ich dachte die rundll32.exe löst die Umgebungsvariable selber auf.
Ich werde zukünftig Codes entsprechend kennzeichnen, wenn sie nicht getestet sind.
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Antworten