AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Aus Dll Exe Instanz starten und Parameter übergeben
Thema durchsuchen
Ansicht
Themen-Optionen

Aus Dll Exe Instanz starten und Parameter übergeben

Ein Thema von etom291272 · begonnen am 5. Nov 2006 · letzter Beitrag vom 7. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#1

Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:21
Hallo Gemeinde

Ich möchte folgendes Lösen:
Aus einer 4GL Programmiersprache wird eine dll von mir aufgerufen der aus der 4GL Sprache mehrere Parameter unterschiedlicher Typen (keine objekte nur strings, zahlen) übergeben werden.
Ich möchte nun in der DLL aus diesem Parametern ein Record oder Objekt erzeugen.
Die Dll soll nun eine Instanz einer Exe starten und genau diesen Record oder Objekt an die Exe übergeben.

Zum besseren Verständnis schematisch

4GL ruft dll Funktion mit mehreren Paramtern auf->
Dll arbeitet diese Paramter ab und erzeugt ein Record (oder schöner Objekt)
Dll Startet Exe Anwendung und übergibt Record (bzw Objekt) und kehrt in die 4GL Anwendung zurück
4GL Anwendung läuft weiter
Exe läuft als eigene Instanz im eigenständigen Fenster und bearbeitet dan übergebenen Record bzw. Objekt

welche möglichkeiten gibt es da bin gespannt auf vorschläge
Danke an alle die sich gedanken machen

über zwischendateien zu gehen möchte ich vermeiden
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:25
Dein Problem wird sein, daß die Dll keine Exe mit einem Record/Objekt aufrufen kann, du mußt also die Parameter an die Exe übergeben und diese dann den Record/das Objekt erzeugen lassen.
Markus Kinzler
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#3

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:28
das das möglich ist, ist schon klar ich muß aber vorher über die dll gehen

eine möglichkeit die mir einfallen würde wäre das record in einen memorystream und diesen in einem memory mapped file zu speichern daß von der exe wieder ausgelesen wird.

ich habe aber gehofft daß es vielleicht möglich ist einen zeiger auf den erzeugten record zu übergeben
oder so ähnlich

weitere ideen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:29
Warum schelifst du die Parameter nicht 1:1 durch?
Markus Kinzler
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#5

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:31
meinst du 1:1 über die stringliste die man im programmaufruf übergeben kann

MeineAnwendung.exe bla blub huh 1234
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:32
ja so in etwa hatte ich das gemeint. Dürfte die einfachste Möglichkeit sein.
Markus Kinzler
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#7

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:35
diese möglichkeit habe bis jetzt gewählt wenn ich sowas brauchte aber erstens ist man auf strings begrenzt und ich finde es einfach unschön und unsauber 20 Parameter oder so in son einer schlange zu übergeben.

weitere meinungen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:39
Man ist nicht unbedingt auf Strings beschränkt, man kann ja die anderen typen casten
-Du könntest auch das Programm starten und ihm dann die Werte senden.
-Das Programm COM-fahig machen
...
Markus Kinzler
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#9

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 5. Nov 2006, 20:52
Das Programm COM-fahig machen
was meinst du damit (bitte ein wenig genauer)

ist es nicht einfach möglich einen zeiger auf ein record zu übergeben
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#10

Re: Aus Dll Exe Instanz starten und Parameter übergeben

  Alt 6. Nov 2006, 14:44
habe jetzt ein wenig experimentiert und herausgefunden daß zeiger nur innerhalb eines prozesses gültig sind.

ich habe aber in anderen threads gelesen daß sowas ähnliches gemacht wurde, bin für jeden lösungsansatz dankbar

  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 08:35 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