Abfragen ob das Programm mittels Doppelklick gestartet wurde

Für allgemeine Fragen zur Programmierung mit PureBasic.
melow
Beiträge: 32
Registriert: 04.02.2006 05:05
Wohnort: Thailand

Abfragen ob das Programm mittels Doppelklick gestartet wurde

Beitrag von melow »

Hallo Leute

gibt es eine Möglichkeit abzufragen ob das Programm mittels (Doppel)Klick gestartet wurde?

Hintergrund:
Bei einen manuellen Start des Programms mittels Doppelklick möchte ich gern eine kurze "Welcome Message" anzeigen.
Aber nur wenn das Programm manuell gestartet wurde, also mittels Doppelklick.

Wird das Programm jedoch automatisch gestartet, zB durch eine Verknüpfung im Autostart Folder, oder einen der Registry Autostart Einträge, dann soll keine Welcome Message erscheinen.

Mittels Programm Parametern könnte man das zwar auch steuern, aber ich würds am liebsten ohne machen.

Danke für jeden Tipp von Euch.

Schöne Grüße
Melow

:)
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Abfragen ob das Programm mittels Doppelklick gestartet w

Beitrag von STARGÅTE »

Programme können auch mit "Enter" gestartet werden, bzw mit eingabe Aufforderung.
Anhand es Doppel-Klicks würde ich es also nicht festmachen.

Du müsstest vermutlich ehr innerhalb der EnvironmentVariables gucken, ob das Programm von etwas anderem als dem Exporer gestartet wurde, ggf. ändert sich dadurch auch das Arbeitsverzeichnis, was du mit dem Programm-Verzeichnis vergleichen kannst.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
melow
Beiträge: 32
Registriert: 04.02.2006 05:05
Wohnort: Thailand

Re: Abfragen ob das Programm mittels Doppelklick gestartet w

Beitrag von melow »

STARGÅTE hat geschrieben:Programme können auch mit "Enter" gestartet werden
Stimmt, Du hast Recht. Oder auch über die Schnellstartleiste per SingleClick.

Nee ich glaub ich mach es dann doch lieber klassisch per Programm Parameter... das ist sicherer.

Aber Generell... rein interessehalber... ist es eigentlich möglich unter Windows zu prüfen ob das Programm speziell, sagen wir per Doppelklick, gestartet wurde?

Danke aber aufjedenfall für Deinen Hinweis.

lg Melow
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Abfragen ob das Programm mittels Doppelklick gestartet w

Beitrag von RSBasic »

Unter Windows kannst du nur ermitteln, ob deine Anwendung direkt ausgeführt wurde (Ausführen der Executable-Datei) oder mit Hilfe einer Verknüpfung: http://www.rsbasic.de/aktualisierung/wi ... 20wurde.pb
Aber wie der Benutzer auf die Datei geklickt hat, ob Doppelklick, Rechtsklick o.ä., kannst du nicht ermitteln.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Derren
Beiträge: 558
Registriert: 23.07.2011 02:08

Re: Abfragen ob das Programm mittels Doppelklick gestartet w

Beitrag von Derren »

Man kann aber ermitteln, ob das Programm mit dem vollen Pfad (wenn die Dateien im gleichen Ordner liegen oder in einem Ordner der in der Path-Variable aufgeführt ist (Systemordner etc)) aufgerufen wurde, oder ohne die Datei-Erweiterung, wie man es aus der Eingabeaufforderung gewöhnt ist.

http://purebasic.fr/english/viewtopic.php?f=13&t=44212

Wenn du dein Programm aufrufst, kannst du einfach ".exe" weglassen

Code: Alles auswählen

path.s = "C:\Pfad_usw...\"
RunProgram(path + "test.exe") ;Wird "test.exe" ausgeben
RunProgram(path + "test") ;Wird "test" ausgeben
Signatur und so
Antworten