![]() |
Wieso geht dieser Code nicht? (Kompletter Code da)
Delphi-Quellcode:
unit Friends;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ExtCtrls, jpeg, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, OleCtrls, SHDocVw_TLB, urlMon; type TmainForm = class(TForm) MainMenu1: TMainMenu; Connect1: TMenuItem; World1: TMenuItem; Hilfe1: TMenuItem; Connect2: TMenuItem; N1: TMenuItem; Beenden1: TMenuItem; Panel1: TPanel; Image1: TImage; text: TEdit; bsend: TButton; nicks: TListBox; ftp: TIdFTP; chat: TWebBrowser_V1; Timer: TTimer; Memo1: TMemo; OpenDialog1: TOpenDialog; SaveDialog1: TSaveDialog; Button1: TButton; procedure Beenden1Click(Sender: TObject); procedure Connect2Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TimerTimer(Sender: TObject); procedure bsendClick(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var mainForm: TmainForm; implementation {$R *.dfm} procedure Delay(dwMilliseconds: Longint); var iStart, iStop: DWORD; begin iStart := GetTickCount; repeat iStop := GetTickCount; Application.ProcessMessages; until (iStop - iStart) >= dwMilliseconds; end; procedure TmainForm.Beenden1Click(Sender: TObject); begin mainForm.Close; end; procedure TmainForm.Connect2Click(Sender: TObject); begin ftp.Password := 'sag ich nicht ;)'; ftp.Username := 'friendsmain'; ftp.Host := 'friendsmain.fr.funpic.de'; ftp.Connect(true); chat.Navigate('friendsmain.funpic.de/chat.txt'); bsend.Enabled := true; timer.Enabled := true; end; procedure TmainForm.FormClose(Sender: TObject; var Action: TCloseAction); begin ftp.Disconnect; end; procedure TmainForm.TimerTimer(Sender: TObject); begin if ftp.Connected = true then begin chat.Navigate('friendsmain.funpic.de/chat.txt'); end; URLDownloadToFile(nil,pchar('http://friendsmain.fr.funpic.de/chat.txt'),pchar('C:\Fainds-Friends\chat.txt'), 0, nil); end; procedure TmainForm.bsendClick(Sender: TObject); begin timer.Enabled := false; with OpenDialog1 do begin Memo1.Lines.LoadFromFile('c:/Fainds-Friends/chat.txt'); end; Memo1.Lines.Text := Memo1.Lines.Text + #13 + text.Text; with savedialog1 do begin memo1.Lines.SaveToFile('c:/Fainds-Friends/chat.txt'); end; ftp.Put('c:/Fainds-Friends/chat.txt', 'chat.txt'); timer.Enabled := true; end; end. hi mit diesem Code will ich einen kleinen chat schreiben... aber keinen normalen! der eigentlich chat text soll auf dem angegebenen server gespeichert werden! Ich weiß, dass man einen chat auch leichter programmieren kann, aber ich habe mich für diese variante entschieden, weil hierraus später ein spiel werden soll... wäre nett, wenn ihr hier den fehler raus picken könntet! danke isofaind |
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
Sagst du uns wenigstens, WAS nicht funktioniert? :roll:
|
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
wie ist denn die Fehlermeldung ?
|
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
Was genau funktioniert denn nicht? Das Speicher, das Laden...
Mit ist noch aufgefallen, dass du
Delphi-Quellcode:
schreibst, das "= true" kannst du weglassen, also einfach
if ftp.Connected = true then
Delphi-Quellcode:
MfG Pr0g
if ftp.Connected then
|
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
also folgendes klappt:
ich starte das programm. dann klicke ich auf connect. nun ist er zum server connectet... unten in die edit box schreibe ich hallo rein. dann klicke ich auf send. Nun wir der komplette text + dem text unten in der edit hochgeladen! Das funktioniert auch alles. hjabe ich über ein ftp programm getestet! ich habe dem timer gesagt, dass er jede sekunde den chat text aktualisieren soll. das macht er aber nicht... ich muss also mein programm neustarten, damit der text angezeigt wird, den ich geschrieben habe! woran liegt das? isofaind |
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
Erstmal ein paar Änderungen:
Delphi-Quellcode:
procedure TmainForm.TimerTimer(Sender: TObject);
begin if ftp.Connected then begin chat.Navigate('friendsmain.funpic.de/chat.txt'); // was hat das eigendlich für einen sinn ??? end; URLDownloadToFile(nil,pchar('http://friendsmain.fr.funpic.de/chat.txt'),pchar('C:\Fainds-Friends\chat.txt'), 0, nil); Memo1.LoadfromFile ('c:/Fainds-Friends/chat.txt'); // damit lädt er das dann auch ... end; procedure TmainForm.bsendClick(Sender: TObject); begin timer.Enabled := false; Memo1.Lines.LoadFromFile('c:/Fainds-Friends/chat.txt'); Memo1.Lines.Add (text.Text); // Open und close-dialog brauchste nicht, wenn du sie nicht benutzt ... memo1.Lines.SaveToFile('c:/Fainds-Friends/chat.txt'); ftp.Put('c:/Fainds-Friends/chat.txt', 'chat.txt'); timer.Enabled := true; end; end. |
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
hi,
@jfheins: der sinn liegt darin, dass der browser ('chat'), jede sekunde den aktuellen chat text von dem ftp server anzeigen soll isofaind |
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
Zitat:
|
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
@luckie:
es ist egal wie ich den timer einstelle! habe auch schonmal mit einer minute versucht! ich kann sogar manuell per knopfdruck versuchen den browser zu aktivieren! der reagiert nicht! isofaind |
Re: Wieso geht dieser Code nicht? (Kompletter Code da)
das problem liegt darin: am anfang hab ich dem prog gesagt der browser soll eine bestimmte seite anzeigen... später kann ich diese seite nicht aktuallisieren... egal ob manuell oder mitm timer
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:14 Uhr. |
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