AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Programmpfad einer fremden Anwendung ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

Programmpfad einer fremden Anwendung ermitteln

Ein Thema von Jean312 · begonnen am 4. Mär 2016 · letzter Beitrag vom 6. Mär 2016
Antwort Antwort
Seite 1 von 2  1 2      
Jean312

Registriert seit: 1. Dez 2013
55 Beiträge
 
#1

Programmpfad einer fremden Anwendung ermitteln

  Alt 4. Mär 2016, 05:43
Hallo,

in einer Anwendung prüfe ich, ob ein bestimmtes Programm schon läuft (IsExeRunning). Nun möchte ich aber, für den Fall, dass die Anwendung noch nicht läuft, diese starten.
Dafür muss ich den Pfad, in dem sich die exe befindet, herausfinden.
Ich habe es mit ExtractFileDir(exe-Name) versucht, erhalte aber einen leeren string zurück.

Wie kann man das am besten umsetzen?

Viele Grüße.
  Mit Zitat antworten Zitat
4dk2

Registriert seit: 4. Sep 2007
176 Beiträge
 
#2

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 4. Mär 2016, 08:15
Hallo,
ist dir denn der Pfad bekannt, wo die sich befinden muss?
z.b. c:\programme\abc\xyz.exe ?
ExtractFileDir liefert dir nur den pgrogrammpfad von dem übergebenen:
ExtractFileDir(c:\programme\abc\xyz.exe) = "c:\programme\abc\"
ExtractFileDir(xyz.exe) = ""
Die Routine sucht nicht nach der Ausführbaren Datei!
  Mit Zitat antworten Zitat
wwwolfgang

Registriert seit: 18. Mär 2012
1 Beiträge
 
Delphi XE8 Professional
 
#3

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 4. Mär 2016, 11:58
Vielleicht hilft das hier weiter: http://www.entwickler-ecke.de/topic_...chen_94,0.html
  Mit Zitat antworten Zitat
Jean312

Registriert seit: 1. Dez 2013
55 Beiträge
 
#4

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 5. Mär 2016, 04:36
Den Pfad kenne ich nicht, das ist das Problem.
Die entsprechenden Programme, die ich prüfen will, ob sie bereits laufen, können vom Anwender ja auch benutzerdefiniert installiert worden sein.

Wenn dieses Anwendungen also noch nicht laufen, dann sollen sie gestartet werden, vorausgesetzt, dass sie überhaupt installiert worden. Die Namen der ausführbaren exe(n) (dieser fremden Anwendungen) sind mir bekannt.
Daher möchte ich den Pfad ermitteln, wenn diese sich auf dem PC des Anwenders befinden.
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#5

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 5. Mär 2016, 04:42
Dann wirst du suchen müssen. Wie anders soll das funktionieren? Einen Pfad einer Anwendung, die nicht läuft, kann nicht mal Chuck Norris ermitteln. OK, der vielleicht schon, aber ich nehme nicht an, dass der es nötig hätte, hier zu fragen .

MfG Dalai
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#6

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 5. Mär 2016, 17:52
Wenn die Programme bekannt sind muss man doch nur in der Registry nachsehen, ob und wo sie installiert sind. Anständig installierte Programme hinterlassen hier ihre Spuren, z.B. einen Uninstall-String. Hilft das nicht weiter, dann einmal die Platte(n) nach den Echsen absuchen und sich die Pfade merken.
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#7

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 5. Mär 2016, 21:22
MSDN-Library durchsuchenFindExecutable
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
wuschel2016
(Gast)

n/a Beiträge
 
#8

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 5. Mär 2016, 22:58
Wenn die Programme bekannt sind muss man doch nur in der Registry nachsehen, ob und wo sie installiert sind. Anständig installierte Programme hinterlassen hier ihre Spuren, z.B. einen Uninstall-String. Hilft das nicht weiter, dann einmal die Platte(n) nach den Echsen absuchen und sich die Pfade merken.
Manche Programme sind "portable" und hinterlassen daher fast bis nichts in der Registry, ausser im "recently"-Zweig (oder wie das Ding heisst, wo die zuletzt gestarteten Programme gemerkelt werden).
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#9

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 6. Mär 2016, 03:53
Ob die Anwendung läuft findet man nur heraus, wenn man die eindeutig beschreiben kann. Diese Eindeutigkeit bekomme ich durch die Angabe des vollständigen Pfads zur Exe.

Alles andere fällt in den Bereich Spekulation.

Die Delphi IDE selber ist da ein gutes Beispiel. Die Exe heisst bds.exe ... immer, egal welche Version. Und welche von den möglichen ist jetzt konkret gemeint?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Jean312

Registriert seit: 1. Dez 2013
55 Beiträge
 
#10

AW: Programmpfad einer fremden Anwendung ermitteln

  Alt 6. Mär 2016, 04:15
@Dalai: Mal sehen, ob Chuck Norris antwortet.

@mm1256: Die Registry befragen war schon als Alternative vorgesehen.

@himitsu: FindExecutable klingt ja schon mal gut. Das werde ich mir mal anschauen.

@Sir Rufo: Das stimmt wohl. Ob die Anwendung und wenn, wo die Anwendung installiert ist, weiß ich nicht. Daher muss ich wohl mit der Spekulation leben.
Mal schauen, wie weit mich FindExecutable und die Registry bringen.

Danke für die Denkansätze.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:19 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