RunProgram: Bilder werden nicht geladen
RunProgram: Bilder werden nicht geladen
Hallo,
Wenn ich ein Unterprogramm eines Programmes von mir mit RunProgram("data\new.exe") starte, dann werden nie die Images im gestarteten Programm angezeigt. Wenn ich es manuell starte dann schon. Woran liegt den dass?
Wenn ich ein Unterprogramm eines Programmes von mir mit RunProgram("data\new.exe") starte, dann werden nie die Images im gestarteten Programm angezeigt. Wenn ich es manuell starte dann schon. Woran liegt den dass?
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Am fehlendem dritten Parameter
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

@DrNo
Wenn du ein Bild mit Paint öffnen möchtest:
Aber wenn du ein Bild mit deinem eigenen Programm öffnen möchtest, dann musst du erst den Parameter bei deinem Programm ermitteln:
Parameter$ = ProgramParameter()
\\Edit:
@ts-soft
Achso stimmt.
Wenn du ein Bild mit Paint öffnen möchtest:
Code: Alles auswählen
RunProgram("mspaint.exe","Bild.bmp","",0)
Parameter$ = ProgramParameter()
\\Edit:
@ts-soft
Achso stimmt.
Zuletzt geändert von RSBasic am 27.10.2008 18:58, insgesamt 1-mal geändert.
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Ich denke mal, RSBasic hat die Frage nicht verstanden.
Die zu startende Exe findet ihre Bilder nicht, da der Pfad nicht gesetzt wird,
diesen kann man im dritten Parameter übergeben. Das Programm ist
anscheinend zu blöd, selbst den Pfad zur eigenen Exe einzustellen.
Die zu startende Exe findet ihre Bilder nicht, da der Pfad nicht gesetzt wird,
diesen kann man im dritten Parameter übergeben. Das Programm ist
anscheinend zu blöd, selbst den Pfad zur eigenen Exe einzustellen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Bei solchen Fehlern gewöhnt man sich schnell an, die Pfade in jedem Programm immer selbst festzulegen bzw. rauszufinden (und das als erstes z.B. GetCurrentDirectory() )
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Okay, ich hau gleich
entweder in der New.exe:
Oder im anderen Programm:
PS: GetCurrentdirectory kann nicht funktionieren, wenn Du nicht die zweite
Variante nutzt, das verweist nämlich sonst nicht automatisch auf das eigene
Verzeichnis. Sollte man sich also merken, GetCurrentDirectory zeigt nur
auf das eigene Verzeichnis, wenn "Ausführen in" angegeben wurde, oder
bei start mit doppelklick in irgendeinem Dateimanager.

entweder in der New.exe:
Code: Alles auswählen
SetCurrentDirectory(GetPathPart(ProgramFilename()))
Code: Alles auswählen
RunProgram("data\new.exe", "", {pfad zur new.exe})
Variante nutzt, das verweist nämlich sonst nicht automatisch auf das eigene
Verzeichnis. Sollte man sich also merken, GetCurrentDirectory zeigt nur
auf das eigene Verzeichnis, wenn "Ausführen in" angegeben wurde, oder
bei start mit doppelklick in irgendeinem Dateimanager.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Und wieder was dazugelerntts-soft hat geschrieben:...PS: GetCurrentdirectory kann nicht funktionieren, wenn Du nicht die zweite
Variante nutzt, das verweist nämlich sonst nicht automatisch auf das eigene
Verzeichnis. Sollte man sich also merken, GetCurrentDirectory zeigt nur
auf das eigene Verzeichnis, wenn "Ausführen in" angegeben wurde, oder
bei start mit doppelklick in irgendeinem Dateimanager.

Naja... bisher ein Programm das ein eigenes Programm aufruft hab ich bisher auch noch nie gebraucht... passte bisher immer in eines

PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
...dafür gibts doch GetExePath..?
btw. wie ist das eigentlich... gilt die CurrentDirectory systemweit oder nur Taskweise?
wenn Ersteres der Fall ist, kann die doch sonstwas zurückliefern, wenn man die mit nem anderen Prog ändert...
btw. wie ist das eigentlich... gilt die CurrentDirectory systemweit oder nur Taskweise?
wenn Ersteres der Fall ist, kann die doch sonstwas zurückliefern, wenn man die mit nem anderen Prog ändert...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.