Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Datenübertragung anhand einer IP (https://www.delphipraxis.net/141134-datenuebertragung-anhand-einer-ip.html)

alleinherrscher 5. Okt 2009 15:56

Re: Datenübertragung anhand einer IP
 
Zitat:

Zitat von Tyrael Y.
Ich rate mal wie es geht...

1. man erstellt einen Service mit dem man "von aussen" kommunizieren kann
2. dieser Service kann Programme ausführen, es braucht nur das Verzeichnis und den Programmnamen
3. man kopiert diesen Service auf einen Client Rechner in das Admin$ Verzeichnis (Rechte dazu vorausgesetzt)
4. man installiert den Service auf diesem Client
5. man startet den Service auf dem Client
6. man kopiert eine "Echse" in das Admin$ Verzeichnis
7. man gibt dem Service den "Befehl" eine "Echse" im angegeben Verzeichnis zu starten

...sollte theoretisch so laufen

Voraussetzung man hat Rechte auf diesem Client Rechner.


Exakt so geht es. Zum Schluss löscht der Service sich selbst, glaub ich (meine ich hätte das gelesen)

Aber warum kann ich nicht einfach mit entsprechenden Rechten meine Echse direkt in das Admin$ Verzeichnis kopieren und dort starten? Warum den Umweg über den Service - der kann ja scheinbar auch remote gestartet werden - also warum nicht die echse?

Tyrael Y. 5. Okt 2009 16:01

Re: Datenübertragung anhand einer IP
 
Ganz einfach, wenn du eine Echse einfach so startest, dann wird es bei dir auf dem Rechner gestartet und nicht auf dem Client ;)

...also muss ein Benutzer des Client Rechners das starten und ein Service ist ein Benutzer des Client Rechners

alleinherrscher 5. Okt 2009 16:11

Re: Datenübertragung anhand einer IP
 
Zitat:

Zitat von Tyrael Y.
Ganz einfach, wenn du eine Echse einfach so startest, dann wird es bei dir auf dem Rechner gestartet und nicht auf dem Client ;)

...also muss ein Benutzer des Client Rechners das starten und ein Service ist ein Benutzer des Client Rechners


Okay, ich merk schon...mein Wissen in diesem Bereich ist zu beschränkt. :wall: Aber ich glaube, über die WMI kann man da irgendwas machen oder? Zumindest findet sich bei Google einiges an Sample Code, wenn man nach "Remote Create Process" sucht. Ein bisschen Code hab ich sogar für Delphi gefunden...

Guckst du hier:
http://entwickler-forum.de/showthread.php?t=16232

mjustin 5. Okt 2009 17:06

Re: Datenübertragung anhand einer IP
 
Zitat:

Zitat von Tyrael Y.
Ich rate mal wie es geht...

1. man erstellt einen Service mit dem man "von aussen" kommunizieren kann
2. dieser Service kann Programme ausführen, es braucht nur das Verzeichnis und den Programmnamen
3. man kopiert diesen Service auf einen Client Rechner in das Admin$ Verzeichnis (Rechte dazu vorausgesetzt)
4. man installiert den Service auf diesem Client
5. man startet den Service auf dem Client
6. man kopiert eine "Echse" in das Admin$ Verzeichnis
7. man gibt dem Service den "Befehl" eine "Echse" im angegeben Verzeichnis zu starten

...sollte theoretisch so laufen

Voraussetzung man hat Rechte auf diesem Client Rechner.

Hier wird beschrieben wie psexec es macht - die Schritte werden tatsächlich so ausgeführt wie 'geraten':

http://www.ntkernel.com/w&p.php?id=15

psexec enthält eine Resource PSEXESVC, dies eine PE Executable, die psexec dann einfach auf den Zielrechner kopiert, und dort als Dienst installiert wird ...

alleinherrscher 5. Okt 2009 21:44

Re: Datenübertragung anhand einer IP
 
Zitat:

Zitat von mjustin

Hier wird beschrieben wie psexec es macht - die Schritte werden tatsächlich so ausgeführt wie 'geraten':

http://www.ntkernel.com/w&p.php?id=15

psexec enthält eine Resource PSEXESVC, dies eine PE Executable, die psexec dann einfach auf den Zielrechner kopiert, und dort als Dienst installiert wird ...


Siehe Post #5 ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:12 Uhr.
Seite 2 von 2     12   

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