AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Dll- Form als Dialog verwenden

Ein Thema von Flippo · begonnen am 15. Jul 2006 · letzter Beitrag vom 19. Jul 2006
Antwort Antwort
Flippo

Registriert seit: 26. Sep 2004
111 Beiträge
 
Delphi 2005 Personal
 
#1

Dll- Form als Dialog verwenden

  Alt 15. Jul 2006, 13:20
Hallo,
ich hab schon wieder ein Problem... ich habe eine Anwendung, die durch Plugins in Form von Dlls erweiterbar ist. Diese Plugins werden vom User dann gestartet und brauchen noch bestimmte Informationen... kein Problem hab ich mir gedacht mit einer Form, in der ich einfach die benötigden Daten abfrage. Nun hab ich aber 3 Probleme:
1.Ich kriege immer einen Fehler:Zugriffsverletzung << Das Problem hat sich erledigt (Form Create hatte ich vergessen )

In meiner Dll hab ich einfach eine form hinzugefügt und mache die sichtbar wenn ich damit die Daten abfrage.

Delphi-Quellcode:
function TPlugInChild.GetNeededParams:string;
var Start : Longint;
begin
   Form1:=TForm1.Create(Form1);
   form1.visible:=true; // Hier kommt die Zugriffsverletzung
   Start := GetTickCount;
   repeat
   Sleep(100);
   //application.processmessages;
   until (GetTickCount - Start > 10000) or (unit1.aufgabe<>'Keine'); }
   Result:=unit1.Aufgabe;
end;
2.Problem << hat sich auch mit dem ersten erledigt ich weiss zwar nicht warum aber es funktioniert


3.Meine Schleifenkonstruktion in der ich 10 Sekunden warte oder bis ich den wert hab finde ich auch nicht so elegant, kann man das anders lösen, also kann ich die form evtl. irgendwie so behandeln als wär sie ein Dialog, also das ich die Form in der Funktion aufrufe und es erst weitergeht wenn in der Form was ausgewählt und diese geschlossen wurde?


Hoffe ich konnte meine Gedanken halbwegs klar ausdrücken

MFG

Flippo
  Mit Zitat antworten Zitat
andreash

Registriert seit: 22. Jun 2006
Ort: Dörverden
60 Beiträge
 
Delphi 7 Professional
 
#2

Re: Dll- Form als Dialog verwenden

  Alt 19. Jul 2006, 10:28
Hallo,

verwende statt form1.visible:=true; lieber form1.show; Wenn du statt dessen form1.showmodal; verwendest, sollte die Anforderung erfüllt sein, dass du die Programmkontrolle erst wieder erhältst, wenn der Dialog abgeschlossen wurde.
Andreas
Der Optimist glaubt, wir leben in der besten aller möglichen Welten. Der Pessimist befürchtet, daß das stimmt.
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

Re: Dll- Form als Dialog verwenden

  Alt 19. Jul 2006, 10:44
Form1:=TForm1.Create(Form1); also das Klappt nie so ist das richtig Form1:=TForm1.Create(Nil);
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 22:38 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