AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

'Prozessübergreifender' Funktionsaufruf

Ein Thema von c113plpbr · begonnen am 2. Jun 2004 · letzter Beitrag vom 2. Jun 2004
Antwort Antwort
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#1

'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 19:56
Folgendes:
Ich habe 2 (verschiedene) Programme. In einem ist eine Funktion eingebaut, die das andere Programm aufrufen soll.
Wie stelle ich das an, bzw. geht das überhaupt?

(kommunikation zwischen den beiden programmen ist kein problem, d.h. ich kann z.B. pointer übertragen, o.ä.)

ciao und thx, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: 'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 20:01
Dafür gibt es viele Möglichkeiten:

1, Du erstellst für das aufzurufende Programm eine COM/Automatisierungsschnittstelle
Vorteil: Programmiersprachenunabhängig
Nachteil: Schnittstelle muß registriert werden (Admin-Rechte), nur Windows

2, Du definierst Windows-Messages, die für das Hauptfenster aufgerufen werden
Nachteil: Eingeschränkt bezüglich übergabe von größeren Daten

3, Du erstellst Named-Pipes oder ähnliches Kommunikationskanäle
Nachteil: Evtl. Firewall-"Gefährtet"
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: 'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 20:03
Moin Philipp,

such' hier mal nach Hier im Forum suchenRegisterWindowMessage
Da müsstest Du einige Beispiele finden, wie Du mit Hilfe selbstdeklarierter Messages Programme miteinander kommunizieren lassen kannst.

BTW:
Wenn Du schon Pointer überträgst, kannst Du deren Wert ja auch als Kommando für den Aufruf bestimmter Funktionen benutzen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#4

Re: 'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 20:13
Alles was mit Fenstern und Fensternachrichten zu tun hat ist in diesem Fall unbrauchbar, da eigentlich eine spezielle dll (von der anwendung unabhängig) mit einer anwendung 'kommuniziert'. Da diese Kommunikation *sehr* schnell ablaufen muss, dachte ich, dass das vielleicht callback-funktion-ähnlich funktionieren könnte, da die funktion auch noch einiges zurückgeben muss.

Aber ich denke, dass das nicht so funktionieren wird, wie ich mir das vorstelle ... muss mir wohl nen anderen weg suchen ... falls jemand noch vorschläge hat, nur her damit!
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: 'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 21:01
Prozessübergreifende Kommunikation ist unter Windows immer um Welten langsamer als ein prozessinterner aber threadübergreifende Kommunikation, da ein nötiger Kontextwechsel immer einiges an Zeit benötigt.

Auch ist es Problematisch zwischen Prozessen mit Pointern zu arbeiten, da diese umgesetzt werden müssen.

Wenn die Funktion eh in 'ner DLL ist, so ist die COM-Lösung evtl. ganz brauchbar. Diese kann als In-Prozess-Server realisiert weden und läuft damit im Prozessraum des Anwendung (und ist damit *ziemlich* schnell. Fast so schnell wie ein normaler DLL-Aufruf).
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#6

Re: 'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 21:26
Ich werds mir mal anschauen ...
Gibts zu COM irgendwo nen gutes tutorial?
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: 'Prozessübergreifender' Funktionsaufruf

  Alt 2. Jun 2004, 22:44
Tutorial kenn ich aktuell keins, aber m.E. die Bibel dafür im deutschsprachigen Raum: COM, DCOM, COM+ mit Delphi von A. Kosch. Behandelt so ziemlich alles zu dem Thema
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:56 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