Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi datei oeffnen mit createprocess (https://www.delphipraxis.net/101217-datei-oeffnen-mit-createprocess.html)

soulies 10. Okt 2007 06:35


datei oeffnen mit createprocess
 
hoi,

wollte als ersatz für shellexecute eine datei mit createprocess öffnen.
gelingt mir aber mit folgendem nicht:
Delphi-Quellcode:
createprocess( nil,
               Pchar(eine PDF Datei),
               nil,
               nil,
               false,
               0,
               nil,
               nil,
               startupinfo,
               processinfo ) ;
# besteht überhaupt die Möglichkeit ne PDF Datei so zu öffnen ?
# wenn ich den vollständigen Pfad zur Datei als ersten parameter übergebe [als wenns ne Anwendung wär] gehts auch net

liegt mein denkfehler im zuteilen falscher parameter ?

cya
soulies

OldGrumpy 10. Okt 2007 07:13

Re: datei oeffnen mit createprocess
 
CreateProcess funktioniert nur mit direkt ausführbaren Dateien. Für alle anderen Typen musst du entweder shellexecute benutzen oder schauen welches Programm für dein Zielfile mit welchen Parametern wie aufgerufen werden will. Das wäre dann shellexecute zu Fuss ;)

Luckie 10. Okt 2007 08:39

Re: datei oeffnen mit createprocess
 
Wie der Name schon sagt, erzeugt CreateProcess einen neuen Prozess und eine PDF-Datei kann wohl kaum einen Prozess erzeugen. Genau dafür ist aber auch ShellExecute da.

Aike 7. Jan 2008 20:11

Re: datei oeffnen mit createprocess
 
Ich hab mal eine Frage zu CreateProcess und das scheint hier rein zu passen:

Ich möchte eine exe-Datei mit CreateProcess starten, leider weiß ich nicht so genau, was ich dem Parameter "lpEnvironment" zuweisen soll. Was packt man denn da rein? (Bitte mit Beispielangabe)

Bei mir sieht das gerade so aus:
Delphi-Quellcode:
CreateProcess(PChar(Dateipfad),nil,nil,nil,false,high_priority_class,?,nil,nil)
[edit]Öh, was man in STARTUPINFO schreiben soll, weiß ich auch nicht so recht :-/[/edit]

turboPASCAL 7. Jan 2008 20:17

Re: datei oeffnen mit createprocess
 
Hier im Forum suchenCreateProcess fördert wohl nichts zu Tage ? :gruebel:
Es sollten eigentlich recht viele Beispiele zu finden sein. ;)

Christian Seehase 7. Jan 2008 20:18

Re: datei oeffnen mit createprocess
 
Moin Aike,

steht doch im PSDK:

Zitat:

Zitat von PSDK - CreateProcess - lpEnviroment
Pointer to an environment block for the new process. If this parameter is NULL, the new process uses the environment of the calling process.

Das Environment sind die Umgebungsvariablen.
Wenn Du nichts spezielles vorhast, kannst Du hier einfach nil übergeben.

Aike 7. Jan 2008 23:18

Re: datei oeffnen mit createprocess
 
Zur Suche im Forum: Da gibt es sieben Seiten mit Ergebnissen. Ich hab mir 10 Threads durchgelesen und nirgendwo stand eine Anwendung, nur in einem und da wurde für STARTUPINFO der Wert "pi" angegeben, der bei mir aus verständlichen Gründen nicht funktioniert. Dieser Thread hier hat den passenden Titel zu meiner Frage, also warum nicht hier posten?

Weiterhin besteht das Problem, dass ich nicht weiß, was ich in STARTUPINFO eintragen soll.

Luckie 8. Jan 2008 09:07

Re: datei oeffnen mit createprocess
 
Zitat:

Zitat von Aike
Zur Suche im Forum: Da gibt es sieben Seiten mit Ergebnissen. Ich hab mir 10 Threads durchgelesen und nirgendwo stand eine Anwendung, nur in einem und da wurde für STARTUPINFO der Wert "pi" angegeben, der bei mir aus verständlichen Gründen nicht funktioniert. Dieser Thread hier hat den passenden Titel zu meiner Frage, also warum nicht hier posten?

Ich sag nichts mehr: http://www.delphipraxis.net/internal...ht=startupinfo


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz