Hi!
hätte eine Frage zur ListBox!
Ich möchte über ein Multiselect mehrere Gruppe auswählen, von denen dann via
sql abfrage aus einer
access datenbank die email-adr. herausgefiltert wird.
jedoch funtkioniert das nicht! es immer nur die daten aus einer gruppe ans mail programm übertragen.
ist da ein fehler in der schleife, oder wird dann der string zu groß, und kann nicht mehr im addressfeld des mailprogarmm aufgenommen werden?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Betreff: string;
Inhalt: string;
i: integer;
empfaenger: string;
begin
Betreff:=Edit1.Text;
Inhalt:=Memo.Text;
empfaenger:='';
for i:=0 to ListBox1.Items.Count-1 do
begin
if ListBox1.Selected[i]=True then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:='SELECT [EMailAdresse].[EMail-Adresse] FROM EMailAdresse WHERE (([EMailAdresse].[Gruppe])=:Gruppe)';
ADOQuery1.Parameters.ParamValues['Gruppe']:= Listbox1.Items[Listbox1.ItemIndex];
ADOQuery1.Open;
ADOQuery1.First;
WHILE NOT (ADOQuery1.Eof) DO
begin
empfaenger:=empfaenger+ADOQuery1.FieldByName('EMail-Adresse').AsString+';';
ADOQuery1.Next;
end;
end;
end;
//empfaenger:=Edit2.Text;
ShellExecute(Application.Handle, 'open',PChar('mailto:'+empfaenger+'?subject='+Betreff+'&body='+Inhalt), nil, nil, sw_ShowNormal);
end;
Weiß jemand vielleicht rat?
viele grüße
tini