Batch als *.exe Nur wie?
Batch als *.exe Nur wie?
Hallo,
seit langen brauch wieder mal Pure Basic.
Ich habe folgendes Problem.
Das Photo Programm "Affinity Photo 2" installiert sich nun als Windows app.
Ich möchte hier Affinity mit einem externen Raw Konverter starten.
Dieser verlangt aber eine *.exe zur Auswahl.
Das ist Ansich kein Problem den Pfad zur *exe anzugeben und zu starten.
Aber bei jedem Update, wird sich der Pfad ändern und ich muss ihn wieder manuell einpflegen.
Über eine Batchdatei,
"start /b affinityphoto2.exe %1
exit"
lässt sich Affinity starten.
Wie kann ich die Ausführung über "RunProgram"
realisieren?
Danke
seit langen brauch wieder mal Pure Basic.
Ich habe folgendes Problem.
Das Photo Programm "Affinity Photo 2" installiert sich nun als Windows app.
Ich möchte hier Affinity mit einem externen Raw Konverter starten.
Dieser verlangt aber eine *.exe zur Auswahl.
Das ist Ansich kein Problem den Pfad zur *exe anzugeben und zu starten.
Aber bei jedem Update, wird sich der Pfad ändern und ich muss ihn wieder manuell einpflegen.
Über eine Batchdatei,
"start /b affinityphoto2.exe %1
exit"
lässt sich Affinity starten.
Wie kann ich die Ausführung über "RunProgram"
realisieren?
Danke
I7 2600K; 8 GB RAM ; Win10 Pro x64 | NVidia GTX 750 TI 2048MB ; Realtec OnBoard Sound;
- jacdelad
- Beiträge: 341
- Registriert: 03.02.2021 13:39
- Computerausstattung: Ryzen 5800X, 108TB Festplatte, 32GB RAM, Radeon 7770OC
- Wohnort: Riesa
- Kontaktdaten:
Re: Batch als *.exe Nur wie?
Code: Alles auswählen
Parameter$="Datei.png"
SetCurrentDirectory("C:\VerzeichnisVonAffinity2");Verzeichnis von Affinity2
RunProgram("affinityphoto2.exe "+Parameter$)
Code: Alles auswählen
Parameter$="Datei.png"
Verzeichnis$="C:\VerzeichnisVonAffinity2"
RunProgram(Verzeichnis$+"affinityphoto2.exe "+Parameter$)
Ich verstehe nicht ganz, warum sich nach einem Update die Pfade ändern, kannst du das erklären?
PureBasic 6.04/XProfan X4a/Embarcadero RAD Studio 11/Perl 5.2/Python 3.10
Windows 11/Ryzen 5800X/32GB RAM/Radeon 7770 OC/3TB SSD/11TB HDD
Synology DS1821+/36GB RAM/130TB
Synology DS920+/20GB RAM/54TB
Synology DS916+ii/8GB RAM/12TB
Windows 11/Ryzen 5800X/32GB RAM/Radeon 7770 OC/3TB SSD/11TB HDD
Synology DS1821+/36GB RAM/130TB
Synology DS920+/20GB RAM/54TB
Synology DS916+ii/8GB RAM/12TB
Re: Batch als *.exe Nur wie?
Hallo @jacdelad
erstmal Danke für Deine Hilfe.
Das mit der Pfadänderung habe ich aus dem Affinity Forum entnommen.
Anscheinend, kann ich noch nicht bestätigen, wird bei den Windows App's, der Pfad nach einem Update, geändert.
z.B. ist aktuelle Pfad bei mir "C:\Program Files\WindowsApps\SerifEuropeLtd.AffinityPhoto2_2.0.0.1640_x64__3cqzy0nppv2rt\App"
Hier wird die Version mit angegeben -> "AffinityPhoto2_2.0.0.1640_x64"
Sollte es ein Update auf 2.1.... geben, ändert sich hier automatisch die Pfadangabe.
Es geht hier um eine Installation eine Win app (*.msix") und nicht um ein "normales" setup wo in den Program Ordner installiert wird.
Was hier immer die "Unbekannte" ist, wäre was für eine Datei, Png, Jpg, Dng, ... Übergeben wird
und natürlich auch der Pfad zur *exe Datei.
Nutze ich diese Batch Datei, kann ich alles was Affinity öffnen kann, per drag n drop auf die Batch ziehen, und Affinity wird mit dieser Bilddatei geöffnet.
Ich hoffe es ist nicht ganz zu kompliziert beschrieben.
Edit:
Der Start der Exe funktioniert so
jetzt wollte ich per ProgramParameter die Bilddatei übergeben, aber hier scheine ich noch einen Denkfehler zu haben.
erstmal Danke für Deine Hilfe.
Das mit der Pfadänderung habe ich aus dem Affinity Forum entnommen.
Anscheinend, kann ich noch nicht bestätigen, wird bei den Windows App's, der Pfad nach einem Update, geändert.
z.B. ist aktuelle Pfad bei mir "C:\Program Files\WindowsApps\SerifEuropeLtd.AffinityPhoto2_2.0.0.1640_x64__3cqzy0nppv2rt\App"
Hier wird die Version mit angegeben -> "AffinityPhoto2_2.0.0.1640_x64"
Sollte es ein Update auf 2.1.... geben, ändert sich hier automatisch die Pfadangabe.
Es geht hier um eine Installation eine Win app (*.msix") und nicht um ein "normales" setup wo in den Program Ordner installiert wird.
Was hier immer die "Unbekannte" ist, wäre was für eine Datei, Png, Jpg, Dng, ... Übergeben wird
und natürlich auch der Pfad zur *exe Datei.
Nutze ich diese Batch Datei, kann ich alles was Affinity öffnen kann, per drag n drop auf die Batch ziehen, und Affinity wird mit dieser Bilddatei geöffnet.
Ich hoffe es ist nicht ganz zu kompliziert beschrieben.
Edit:
Code: Alles auswählen
Parameter$ = ProgramParameter()
;Parameter$="Datei.png"
;Verzeichnis$="C:\VerzeichnisVonAffinity2"
RunProgram("affinityphoto2.exe "+Parameter$)
jetzt wollte ich per ProgramParameter die Bilddatei übergeben, aber hier scheine ich noch einen Denkfehler zu haben.
I7 2600K; 8 GB RAM ; Win10 Pro x64 | NVidia GTX 750 TI 2048MB ; Realtec OnBoard Sound;
Re: Batch als *.exe Nur wie?
Sorry, nochmals.
ich hatte das Problem 2008 schon einmal
http://forums.purebasic.com/german/view ... p?p=213564
Ich werd mir das nochmals anschauen.
ich hatte das Problem 2008 schon einmal
http://forums.purebasic.com/german/view ... p?p=213564
Ich werd mir das nochmals anschauen.
I7 2600K; 8 GB RAM ; Win10 Pro x64 | NVidia GTX 750 TI 2048MB ; Realtec OnBoard Sound;
- jacdelad
- Beiträge: 341
- Registriert: 03.02.2021 13:39
- Computerausstattung: Ryzen 5800X, 108TB Festplatte, 32GB RAM, Radeon 7770OC
- Wohnort: Riesa
- Kontaktdaten:
Re: Batch als *.exe Nur wie?
Wenn du das Bild bisher auch als Parameter Übergeben wird es so auch gehen. Kapsel mal den Bildnamen in " ein.
PureBasic 6.04/XProfan X4a/Embarcadero RAD Studio 11/Perl 5.2/Python 3.10
Windows 11/Ryzen 5800X/32GB RAM/Radeon 7770 OC/3TB SSD/11TB HDD
Synology DS1821+/36GB RAM/130TB
Synology DS920+/20GB RAM/54TB
Synology DS916+ii/8GB RAM/12TB
Windows 11/Ryzen 5800X/32GB RAM/Radeon 7770 OC/3TB SSD/11TB HDD
Synology DS1821+/36GB RAM/130TB
Synology DS920+/20GB RAM/54TB
Synology DS916+ii/8GB RAM/12TB
Re: Batch als *.exe Nur wie?
Die einzelnen Parameter die Leerzeichen enthalten müssen mit #DQUOTE$ gekapselt werden
Schon mal in die PB-Hilfe geschaut
Schon mal in die PB-Hilfe geschaut
Code: Alles auswählen
Parameter0$ = ProgramParameter()
Prog$ = "C:\VerzeichnisVonAffinity2\" + affinityphoto2.exe
If RunProgram(Prog$, #DQUOTE$ + Parameter0$ + #DQUOTE$)
;
Else
;
EndIf
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
- TroaX
- Beiträge: 659
- Registriert: 08.03.2013 14:27
- Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
- Wohnort: NRW
- Kontaktdaten:
Re: Batch als *.exe Nur wie?
Warum? So ganz komme ich da jetzt nicht drauf o.O
Ich nutze Affinity selber, komme aber nicht dahinter, warum sich der Pfad ändern sollte?
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Re: Batch als *.exe Nur wie?
Hallo @Torax
Das mit der Pfadänderung habe aus dem Forum, muss ja nicht Stimmen, aber wenn ich den Ordnername anschaue,
kann ich mir das durchaus gut vorstellen.
Muss ja nicht bedeuten das ich hier richtig liege.
@mk-soft , , Danke für Deine Hilfe.
Denn Pfad zur exe muss ich nicht angeben, hier reicht nur das "affinityphoto2.exe"
Der Name scheint registriert zu sein.
Das kann man mittels "Ausführen" überprüfen.
Affinity 2 wird bei mir auch gestartet.
Ich muss mir noch das mit der Parameter Übergabe genauer anschauen und auch verstehen.
Das mit der Pfadänderung habe aus dem Forum, muss ja nicht Stimmen, aber wenn ich den Ordnername anschaue,
kann ich mir das durchaus gut vorstellen.
Muss ja nicht bedeuten das ich hier richtig liege.
@mk-soft , , Danke für Deine Hilfe.
Denn Pfad zur exe muss ich nicht angeben, hier reicht nur das "affinityphoto2.exe"
Der Name scheint registriert zu sein.
Das kann man mittels "Ausführen" überprüfen.
Affinity 2 wird bei mir auch gestartet.
Ich muss mir noch das mit der Parameter Übergabe genauer anschauen und auch verstehen.
I7 2600K; 8 GB RAM ; Win10 Pro x64 | NVidia GTX 750 TI 2048MB ; Realtec OnBoard Sound;