AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Pfad der Exe-Datei von einem Dienst feststellen
Thema durchsuchen
Ansicht
Themen-Optionen

Pfad der Exe-Datei von einem Dienst feststellen

Ein Thema von Mandi Nice · begonnen am 2. Jun 2010 · letzter Beitrag vom 2. Jun 2010
Antwort Antwort
Seite 1 von 2  1 2      
Mandi Nice

Registriert seit: 16. Sep 2006
46 Beiträge
 
Delphi 2006 Professional
 
#1

Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 09:42
Hallöchen

Ich bin gerade dabei eine ältere Anwendung so umzustellen, dass diese als Dienst läuft.
Habe von der "Dienst" - Programmierung wenig Ahnung.
Im Internet findet man auch nicht wirklich viel.

Kann mir jemand eine Buch, Anleitung, Tutorial oder ähnliches dafür empfehlen ?

Aber hier mein erstes Problem.
In der alten Anwendung sind dieverse Einstellungen in einem INI-File gespeichert.
Mit ExtractPath(Application.ExeName) stelle ich fest wo die EXE-Datei liegt und wo daher auch die INI-Datei liegt.

Aber in einem Dienst geht das nicht.

Wie kann ich nun feststellen wo die Datei liegt ?

Danke für Eure Hilfe.

hmg
Mandi
Manfred Schön
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 09:44
Aus der Registry auslesen.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 09:58
Abgesehn davon gehören solche Daten eh nicht mehr in das Programmverzeichnis (vorallem nicht von installierten Programmen).

Dafür gibt es bestimmte Verzeichnisse, wo sowas hingehört.

Aber wenn du eh umstellst, dann schreib diese Daten doch gleich direkt in die Registry, anstatt der INI.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#4

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 09:59
Hi,

Du must nicht zwingend den Umweg über die Registry gehen!
Du kannst den Pfad auch folgendermassen ermitteln :

  sAppDir := ExtractFilePath(ParamStr(0)); Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
Benutzerbild von Der.Kaktus
Der.Kaktus

Registriert seit: 22. Jan 2008
Ort: Erfurt
958 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 10:05
Hallo,

Du kannst Deine Applikation doch als Dienst laufen lassen. Da gibts nen Tool..AppToService(ApptoService (old-Version))..die iss "noch" Freeware..die neueren Shareware...geht prima..habe ich auch schon oft benutzt.
Gruss Kaki

Repeat Until true=false;
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 10:32
Zitat von Der.Kaktus:
Du kannst Deine Applikation doch als Dienst laufen lassen. Da gibts nen Tool..AppToService(ApptoService (old-Version))..die iss "noch" Freeware..die neueren Shareware...geht prima..habe ich auch schon oft benutzt.
Auch mit Vista/W2008/W7 und aktiver UAC? Solche Tools bzw. die zugrundeliegenden Programme scheitern oft aufgrund der verschärften Default-Rechte eines Prozesses.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
taveuni

Registriert seit: 3. Apr 2007
Ort: Zürich
534 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 10:39
Zitat von Mandi Nice:
Mit ExtractPath(Application.ExeName) stelle ich fest wo die EXE-Datei liegt und wo daher auch die INI-Datei liegt.

Aber in einem Dienst geht das nicht.
Abgesehen von allem anderen:
Weshalb sollte das nicht gehen?

Edit: Natürlich so wie von DataCool geschrieben.
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
  Mit Zitat antworten Zitat
Mandi Nice

Registriert seit: 16. Sep 2006
46 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 10:54
Hallo DataCool

Wenn das wirklich so einfach geht. Super. Danke.


Hallo taveuni

Weil Application bei einem Dienst die Eigenschaft ExeName nicht kennt



hmg
Mandi
Manfred Schön
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 10:57
Application.ExeName ist nur eine Weiterleitung zu ParamStr(0)
und dieses holt sich den Dateinamen zum geladenen Image der Anwendung, welches immer existiert.
$2B or not $2B
  Mit Zitat antworten Zitat
Mandi Nice

Registriert seit: 16. Sep 2006
46 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Pfad der Exe-Datei von einem Dienst feststellen

  Alt 2. Jun 2010, 11:00
Hallo Der.Kaktus

>> Da gibts nen Tool..AppToService(ApptoService (old-Version)).

Sowas war auch mal im CT' zu finden.
Wäre auf meinem Rechner OK.
Ist mir aber bei meinem Kunden zu riskant.


Hallo himitsu

>> Abgesehn davon gehören solche Daten eh nicht mehr in das Programmverzeichnis (vorallem nicht von installierten Programmen).

Ich gebe Dir Recht. Für große Anwendungen soll man es nicht machen.

Meinen Anwendungen müssen normaler nicht installiert werden.
Es gibt meist ein Setup, aber es reicht die Dateien einzukopieren.
Und die meisten Kunden sind froh das Setup nicht ausführen zu müssen.
Die meisten haben auf dem Rechner nämlich keine Admin-Rechte !


hmg
Mandi
Manfred Schön
  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 21:43 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