PDA

Visualizza la versione completa : [DELPHI] Visualizzazione notifica a fine operazione


camaleonteplus
15-03-2009, 13:23
procedure TForm1.SpedisciClick(Sender: TObject);
begin
//setup SMTP
SMTP.Host := Server.Text;
SMTP.Port := 25;
SMTP.MailAgent := Agent.Text;
//setup mail message
MailMessage.From.Address := Da.Text;
MailMessage.From.Name := Nome.Text;
if Lista.ItemIndex>-1 then
MailMessage.Recipients.EMailAddresses :=
A.Text + ' ' + Lista.Items[Lista.ItemIndex] else;
MailMessage.CCList.EMailAddresses := CC.Text;
MailMessage.BccList.EMailAddresses := Ccn.Text;
MailMessage.Subject := Oggetto.Text;
MailMessage.Body.Text := Messaggio.Text;
if FileExists(Allegato.Text) then
TIdAttachment.Create(MailMessage.MessageParts,
Allegato.Text);
//send mail
try
try
SMTP.Connect(10000);
SMTP.Send(MailMessage);
except on E:Exception do
Messaggio.Lines.Insert(0, 'ERROR: ' + E.Message);
end;
finally
if SMTP.Connected then
SMTP.Disconnect;
Status.Caption := ('Email Inviata');
end;
end;

per ogni volta che mando una email volevo un avviso di invio ci sono riuscito ma non mi ritorna allo stato iniziale mi rimane la voce 'Email Inviata' ho provato a usare lo sleep e anche il time ma l'unico risultato che ricevo un rellettamento. mi dici cosa posso fare?

camaleonteplus
15-03-2009, 18:57
procedure TForm1.SpedisciClick(Sender: TObject);
var stinga:string;
begin
stringa:=Status.caption;
Status.caption:='Invio in corso...';
//setup SMTP
SMTP.Host := Server.Text;
SMTP.Port := 25;
SMTP.MailAgent := Agent.Text;
//setup mail message
MailMessage.From.Address := Da.Text;
MailMessage.From.Name := Nome.Text;
if Lista.ItemIndex>-1 then
MailMessage.Recipients.EMailAddresses :=
A.Text + ' ' + Lista.Items[Lista.ItemIndex] else;
MailMessage.CCList.EMailAddresses := CC.Text;
MailMessage.BccList.EMailAddresses := Ccn.Text;
MailMessage.Subject := Oggetto.Text;
MailMessage.Body.Text := Messaggio.Text;
if FileExists(Allegato.Text) then
TIdAttachment.Create(MailMessage.MessageParts,
Allegato.Text);
//send mail
try
try
SMTP.Connect(10000);
SMTP.Send(MailMessage);
except on E:Exception do
Messaggio.Lines.Insert(0, 'ERROR: ' + E.Message);
end;
finally
if SMTP.Connected then
SMTP.Disconnect;
Status.Caption := 'Email Inviata';
end;
Sleep(2000);
Status.Caption :=stringa;
end;
end;

mi da un errore con la stringa, mi dice:
[Error] Email.pas(109): Undeclared identifier: 'stringa'
[Error] Email.pas(145): '.' expected but ';' found
[Warning] Email.pas(229): Unsafe type 'PChar'

Dove l'errore?

oregon
15-03-2009, 19:05
Rileggi quello che hai scritto ... se non lo fai quando hai un errore, non lo troverai mai ...

Se c'e' un errore nella variabile

stringa

FORSE l'hai scritto male ...

camaleonteplus
15-03-2009, 19:07
grazie! mi devi scusare sono dislessico facile per me commettere orrori del genere.

oregon
15-03-2009, 19:13
Originariamente inviato da camaleonteplus
grazie! mi devi scusare sono dislessico facile per me commettere orrori del genere.

Dato che e' facile, rileggi 6 volte prima di postare nel forum ... :)

Loading