Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Erkennen wie Programm gestartet wurde (https://www.delphipraxis.net/109665-erkennen-wie-programm-gestartet-wurde.html)

RavenIV 5. Mär 2008 16:02


Erkennen wie Programm gestartet wurde
 
Hallo

Kann ich irgendwie ermitteln, wie mein Programm gestartet wurde?

Hintergrund:
Ich habe ein Programm, das sich anderst verhalten soll, wenn es im Explorer mit Doppelklick gestartet wird und wenn es per Batch oder cmd oder Taskplaner gestartet wurde.
Wenn es per Doppelklick gestartet wird, soll Form1 angezeigt werden.
Bei Start per batch oder cmd oder Taskplaner soll man Parameter mitgeben müssen, nun soll direkt Form2 angezeigt werden. Wenn dann keine Parameter angegeben sind, soll eine Fehlermeldung kommen.

Danke schon mal.

Apollonius 5. Mär 2008 16:03

Re: Erkennen wie Programm gestartet wurde
 
Du könntest aus dem Explorer einen bestimmten Parameter mitgeben.
Oder du verwendest die ToolHelp-Funktionen, um die Prozess-Id des Eltern-Prozesses zu erhalten.

RavenIV 5. Mär 2008 16:06

Re: Erkennen wie Programm gestartet wurde
 
Zitat:

Zitat von Apollonius
Du könntest aus dem Explorer einen bestimmten Parameter mitgeben.
Oder du verwendest die ToolHelp-Funktionen, um die Prozess-Id des Eltern-Prozesses zu erhalten.

Das Programm soll auf verschiedenen PCs laufen, somit scheidet der Parameter im Explorer schonmal aus.

Hast Du da eine konkrete Idee für die ToolsAPI?

mkinzler 5. Mär 2008 16:08

Re: Erkennen wie Programm gestartet wurde
 
Am Besten verwendest du den Parameter für den Batch/Task

RavenIV 5. Mär 2008 16:12

Re: Erkennen wie Programm gestartet wurde
 
Zitat:

Zitat von mkinzler
Am Besten verwendest du den Parameter für den Batch/Task

Wenn dann aber kein Parameter angegeben wird beim Start per batch/cmd/Taskplaner, dann soll eine Fehlermeldung angezeigt werden.

Beim Start per Explorer sollen keine Parameter mitgegeben werden. Dann soll die Applikation normal laufen.

s-off 5. Mär 2008 16:13

Re: Erkennen wie Programm gestartet wurde
 
Such mal nach MSDN-Library durchsuchenProcess32First

RavenIV 5. Mär 2008 16:17

Re: Erkennen wie Programm gestartet wurde
 
Zitat:

Zitat von s-off
Such mal nach MSDN-Library durchsuchenProcess32First

das hilft mir erstmal nicht weiter.

Gibt es nicht so was wie Application.CallingThread oder Application.Caller oder so?

P.S. Feierabend. Morgen geht es weiter. :lol:

Apollonius 5. Mär 2008 16:22

Re: Erkennen wie Programm gestartet wurde
 
Nur Mut, RavenIV: MSDN-Library durchsuchenCreateToolHelp32Snapshot, MSDN-Library durchsuchenProcess32First, MSDN-Library durchsuchenPROCESSENTRY32

rollstuhlfahrer 5. Mär 2008 16:40

Re: Erkennen wie Programm gestartet wurde
 
Process32First geht net. oder hat einer hier Windows CE
Zitat:

Zitat von Microsoft
OS Versions: Windows CE 2.0 and later.
Header: Tlhelp32.h.
Link Library: Toolhelp.lib.

rollstuhlfahrer

s-off 5. Mär 2008 16:42

Re: Erkennen wie Programm gestartet wurde
 
Zitat:

Zitat von rollstuhlfahrer
Process32First geht net. oder hat einer hier Windows CE
Zitat:

Zitat von Microsoft
OS Versions: Windows CE 2.0 and later.
Header: Tlhelp32.h.
Link Library: Toolhelp.lib.

rollstuhlfahrer

Man sollte schon an der richtigen Stelle schauen ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:24 Uhr.
Seite 1 von 3  1 23      

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