AGB  ·  Datenschutz  ·  Impressum  







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

Komponente in Unit ohne Form

Ein Thema von fortuneNext · begonnen am 27. Aug 2008 · letzter Beitrag vom 30. Aug 2008
Antwort Antwort
fortuneNext

Registriert seit: 11. Aug 2007
Ort: Neuss
133 Beiträge
 
Delphi 7 Enterprise
 
#1

Komponente in Unit ohne Form

  Alt 27. Aug 2008, 18:03
Hi (mal wieder...)

Ich stehe mal wieder vor einem scheinbar nahezu unlösbaren Problem.
Und zwar möchte ich eine Komponente (in meinem Fall ein Indy IdFTP) in eine Unit implementieren, die keine Form besitzt und auch nicht besitzen darf.
Bisher habe ich dazu gefunden:
http://www.delphidev.de/forum/viewtopic.php?pid=11756

Das Prinzip von Parent und Owner habe ich soweit verstanden. Was ich jetzt aber nicht verstanden habe:
Was kann ich denn jetzt eigentlich unter Create angeben?

Delphi-Quellcode:
type
   TFNAGBasicControl = class(TObject)
   private
    DL_FTP: TIdFTP;
   public
    {}
   end;

procedure TFNAGBasicControl.DL_Connect;
begin
  FNAGBasicControl.DL_FTP.Create({WAS KOMMT HIER HIN?});
end;
Ich bekomme bei allem
Zitat:
(Fehler): Inkompatible Typen: 'TComponent' und 'Class reference'
Eine Form habe ich wie gesagt nicht, worauf ich auch zB die Komponente ziehen könnte. Ich muss das Ding also komplett von Hand erstellen und die ganzen Parameter angeben. Doch schon beim Create scheitert es... ich möchte auch nach Möglichkeit keinen Gebrauch von der Forms-Unit machen müssen.
Und: Da ich wahrscheinlich sowieso wieder alles falsch mach was geht, frag ich direkt:
Gibt es bei diesem Vorhaben irgendwelche häufigen dummen Fettnäpfchen in die ich treten könnte?

mfg
fortuneNext
Tim
"Hilfe & Support konnte nicht geöffnet werden. Bitte öffnen sie Hilfe & Support, um das Problem zu beheben."
"No Keyboard found. Press F1 to continue."
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#2

Re: Komponente in Unit ohne Form

  Alt 27. Aug 2008, 18:16
Hast Du es mal mit nil versucht?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
fortuneNext

Registriert seit: 11. Aug 2007
Ort: Neuss
133 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Komponente in Unit ohne Form

  Alt 27. Aug 2008, 18:19
Klar... AV schon beim Create
Tim
"Hilfe & Support konnte nicht geöffnet werden. Bitte öffnen sie Hilfe & Support, um das Problem zu beheben."
"No Keyboard found. Press F1 to continue."
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#4

Re: Komponente in Unit ohne Form

  Alt 27. Aug 2008, 18:21
Hatte gar nicht den ganzen Source gelesen.
Delphi-Quellcode:
type
   TFNAGBasicControl = class(TObject)
   private
    DL_FTP: TIdFTP;
   public
    {}
   end;

procedure TFNAGBasicControl.DL_Connect;
begin
  DL_FTP := TIdFTP.Create(nil);
end;
So müsste es klappen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
fortuneNext

Registriert seit: 11. Aug 2007
Ort: Neuss
133 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Komponente in Unit ohne Form

  Alt 28. Aug 2008, 16:55
Nicht... schonwieder...
Warum passiert mir das eigentlich immer?
Nil klappt aber so, danke!

Nun gut... diesmal ist es aber nicht der Fehler!

Und zwar habe ich nun alles implementiert mit der Komponente. Jetzt möchte ich vom FTP-Server ein IniFile auslesen. Dazu habe ich mit eine TIniFile Variable erstellt. Nun muss ich logischerweise den Pfad angeben, doch wie ist es richtig?
Delphi-Quellcode:
  InfoFile := TIniFile.Create('info.ini');
  InfoFile := TIniFile.Create(//absoluter pfad zum ftp);
  InfoFile := TIniFile.Create(DL_FTP.RetrieveCurrentDir + '/info.ini');
sind alle Fehlerhaft.
Ins richtige Verzeichnis habe ich schon ge changedired ... connected bin ich auch. Es gibt keine Fehlermeldung etc, aber beim anschließenden ReadInteger kommt immer der Defaultwert raus, also ist das File wohl nicht richtig erstellt.
Wie gebe ich den Pfad richtig an?
mfg
Tim
"Hilfe & Support konnte nicht geöffnet werden. Bitte öffnen sie Hilfe & Support, um das Problem zu beheben."
"No Keyboard found. Press F1 to continue."
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#6

Re: Komponente in Unit ohne Form

  Alt 28. Aug 2008, 16:57
Du erstellst eine Ini und willst anschließend direkt daraus lesen? Wie soll das denn gehen?

[edit] Sry, wieder nur die Hälfte gelesen. Du wirst die Ini wohl erst herunterladen müssen. [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
fortuneNext

Registriert seit: 11. Aug 2007
Ort: Neuss
133 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Komponente in Unit ohne Form

  Alt 30. Aug 2008, 14:43
Na gut... dann klappts. Optimal Danke!

(sorry für die kleine Verspätung, hatte viel zu tun )
Tim
"Hilfe & Support konnte nicht geöffnet werden. Bitte öffnen sie Hilfe & Support, um das Problem zu beheben."
"No Keyboard found. Press F1 to continue."
  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 05:01 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