Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi email-Programm im Hintergrund (https://www.delphipraxis.net/3242-email-programm-im-hintergrund.html)

Hansa 2. Mär 2003 19:21


email-Programm im Hintergrund
 
Hi,

jetzt muß ich mich schon wieder mit der zumindest von mir gehaßten Winapi rumschlagen. :bouncing4: Ich lasse gerne ein email Programm im Hintergrund laufen. Soweit funktioniert das auch. Ich gebe Betreff, Text und Anhang in meinem Programm ein, dann steht das alles in Outlook drin. Ich will aber, daß man das Outlook überhaupt nicht bemerkt. Wenn ich bei Shellexecute als Parameter SW_HIDE mitgebe, klappt nicht. Tja ein Versuch wars Wert. 8) Wenn das überhaupt geht, dann anders.

Luckie 2. Mär 2003 21:15

Re: email-Programm im Hintergrund
 
Zitat:

Zitat von Hansa
Ich will aber, daß man das Outlook überhaupt nicht bemerkt.

Klingt eher so, als wenn du willst, dass der Benutzer nicht mekrt, dass eine Mail rausgeht. :roll:

Hansa 2. Mär 2003 23:05

Re: email-Programm im Hintergrund
 
Zitat:

Zitat von Luckie
Klingt eher so, als wenn du willst, dass der Benutzer nicht mekrt, dass eine Mail rausgeht. :roll:

das hab ich doch geschrieben:

Zitat:

Zitat von hansa
Ich gebe Betreff, Text und Anhang in meinem Programm ein, dann steht das alles in Outlook drin.

Genau das, was Outlook auch macht :!: Vertrauen ist gut, Kontrolle ist besser, das ist in diesem Fall aber etwas übertrieben. Wenn ich die Daten sowieso habe, warum soll ich dann Outlook etc. extra starten, darum geht es. Der User muß erst den Button "eMail senden" drücken. Tut er das, so will er wohl eine eMail versenden wollen, oder nicht? Ob Du es glaubst oder nicht, muß meinen Web-Space vergrößern, weil verschiedene mir gerne ihre Datensicherung per eMail schicken wollen, möglichst einfach! Anhang anfügen ist meistens schon zu viel. Und die verlassen sich noch darauf, daß alles geklappt hat, trotz Fehlermeldungen.

Hansa 3. Mär 2003 12:41

Da gibts noch was : wie kann ich eine Meldung präsentieren, daß die eMail erfolgreich versendet wurde ? Dazu bräuchte ich doch wohl einen Rückgabewert des eMail-Programmes ? Und wo ist der ?

@Luckie: Will ich die email so verschicken, daß niemand was merkt, brauche ich das natürlich nicht. Außerdem müßte ich noch bei einem Modem (gibts auch noch sehr viel) den Lautsprecher abschalten und sogar bei einem externen die LEDs :witch:

phlux 3. Mär 2003 13:09

Moin, versuch doch dasd ganze mit den Indy Komponenten, also einen mini email client nachzubauen ;)

Helld_River 3. Mär 2003 13:39

Wenn Du weisst, dass der User die Vollversion von Outlook einsetzt, dann kannst Du alles per Automation machen.
Wenn du dich mit der Automation von Outlook nicht auskennst, dann sag einfach nochmal bescheid, kann dir dann ein paar Zeilen schreiben. Wichtig ist halt, dass der User die Vollversion von Outlook einsetzt !!!

Gruß, Helld

Maa83 3. Mär 2003 13:42

guten tach

also ich kann nur soviel sagen:

es funktioniert das sich Outlook überhaupt nicht zeigt
und outlook gibt einen Parameter zurück der angibt ob die Mail versendet worden ist oder nicht...
mein problem ist nur das ich nicht mehr weiss wie das funkt da ich das in meiner anfangszeit im geschäft machen musste und unser oberchecker mir geholfen hat...

ich kann nur soviel sagen: saumäßig kompliziert :wink:

nur soviel dazu das du nicht aufgibst :D

vielleicht finde ich auch den Quelltext noch dann poste ich ihn hier mal... mach dir aber mal keine allzu großen hoffnungen da hier alles ziemlich drüber und drunter geht :D

maa

APP 3. Mär 2003 17:34

Hallo,
Ich muß gestehen ich habe noch nicht genau verstanden was Du machen möchtest.
Falls Du Outlook (nicht die Express-Variante) automatisieren möchtest, dann schau mal unter Wie kann ich Outlook mit OLE-Automation steuern? auf Delphi-Source.de nach.
Oder du benutzt die Funktion JclSimpleSendMail der Jedi JCL Lib, welche nach erfolgreicher Sendung True zurückgibt .

Ich veranlasse Outlook mit JclSimpleSendMail zu senden, allerdings ist das mit dem 'geheimen' Senden so eine Sache, bei mir in der Fa. benutzen wir Outlook XP, welches eine Warnmessage aufpoppt mit dem Hinweis das 'Jemand' eine Nachricht mit Outlook versenden möchte (Der User kann so das Senden verhindern).
(Ich finde das aber O.K., dass der User Informiert wird das eine Nachricht versendet wird)

Armin

Hansa 3. Mär 2003 20:42

Liste der Anhänge anzeigen (Anzahl: 1)
Ich fass das langsam nicht mehr. :wall:

Zitat:

Zitat von APP
... allerdings ist das mit dem 'geheimen' Senden so eine Sache, bei mir in der Fa. benutzen wir Outlook XP, welches eine Warnmessage aufpoppt mit dem Hinweis das 'Jemand' eine Nachricht mit Outlook versenden möchte (Der User kann so das Senden verhindern).
(Ich finde das aber O.K., dass der User Informiert wird das eine Nachricht versendet wird)

Da ist nichts Geheimes :!: Der User muß mehrere Eingaben tätigen, um überhaupt die email zu versenden. Es soll lediglich einfacher gehen, als mit Outlook. Wer will, kann sich im Anhang den Bildschirm ansehen, so wie das im Moment aussieht. Vor allem soll vermieden werden, daß letztenendes ich selber jemand erklären muß, wo er die email-Adresse eingibt, wo er einen Anhang beifügt usw. Oder sogar, wie er Outlook so verstellt, daß sichergestellt ist, daß nichts mehr klappt. :P Natürlich könnte ich noch eine solche Meldung einbauen :[QU
  • 1. Sie haben sich entschieden, eine email zu versenden
    2. Sie haben einen Betreff eingegeben
    3. Sie haben einen Text eingegeben
    4. Sie haben eine Datei angefügt
    5. Sind Sie im Vollbesitz ihrer geistigen Kräfte und wollen das senden ?
    6. Falls Ja, sind sie sich sicher?
    7. Wirklich absolut sicher?
    9. Falls Ja bitte Button "JA" klicken
    10. Die email wird nun unwiderruflich gesendet
    11. Falls Sie das noch verhindern möchten bitte während des Versands der email Stecker des Rechners aus Steckdose ziehen.
:mrgreen: :mrgreen:

Helld_River 20. Mär 2003 11:41

Hier ein Funktion, die eine Mail per Outlook verschickt:

Delphi-Quellcode:
USES Outlook8;
Delphi-Quellcode:
function SendEMail(empfaenger, betreff, text : string): boolean;
Var OutApp : TOutlookApplication;
    mItem : Variant;
    oNS   : NameSpace;
begin
  try
    OutApp := TOutlookApplication.Create(nil);
    OutApp.ConnectKind := ckRunningOrNew;
    OutApp.Connect;
    oNS:=OutApp.GetNameSpace;
    oNS.LogOn('','',FALSE,FALSE);
    mItem := OutApp.CreateItem(olMailItem);
    mItem.Recipients.Add(empfaenger);
    mItem.Subject:= betreff;
    mItem.Body:=text;
    mItem.Send;
    OutApp.Disconnect;
    oNS.Free;
    OutApp.Free;
    Result:=true;
  except
    Result:=false;
  end;
end;
Wenn noch Fragen offen sind, dann einfach nochmals nachfragen !

GRuß, Helld


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:24 Uhr.
Seite 1 von 2  1 2      

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