Autor Beitrag
Moritz M.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Sa 07.12.02 12:33 
Hi

Mit meinem neuen Prog kann man Email verschicken, ohne einen pop3-Server oder sonstwas konfigurieren zu müssen. Einfach Empfänger, Absender, Betreff und Text angeben und die Email ist weg.

Download:
www.onz24.de/files/FastMail.zip
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 08.12.02 11:57 
Hi Onz.

1. Bedenken. An sich ist die Idee von einem kleinen, konfig-freien Mailer ja interessant. Aber genau da setzen bei mir die Sicherheitsbedenken ein. Weder im Programm noch auf deiner Homepage sagst du, wie die Infos verschickt werden, um paranoiden Zeitgenossen diese Bedenken zu nehmen. Auch die Info, wie dein Programm mit den (manchmal doch persönlichen) Mails umgeht, fehlen mir. Wer weiß denn, wohin Kopien dieser Mail gehen? :twisted:

Es ist nur meine persönliche Meinung: ich bin in solchen Dingen grundsätzlich für OpenSource. Dann kann man den Quellcode auf solche Sachen prüfen (lassen!) und sich das Programm auch guten Gewissens selbst kompilieren.
Oder, wenn der Programmierer sagt: Nein, ich gebe den Code nicht raus, dann muss man es ja nicht verwenden. (Lass dich mal nicht irritieren, wie gesagt: es ist nur meine persönliche Meinung.)

2. Das Design. Ich habe immer Schwierigkeiten mit Buttons, die nicht als solche zu erkennen sind. Oder Links, oder was immer sie darstellen sollen. Wenn sich wenigstens der Cursor ändern würde (in eine Hand; im System gibt es dafür eine Konstante IDC_HAND, so dass du nicht diesen hässlichen Delphi-Handcursor nehmen musst), dann könnte ich damit leben.

btw: wenn nichts eingegeben wurde, dann sollte man auch nicht senden können. Will sagen: den Senden-Link/Button solange deaktivieren, bis die notwendigen Felder ausgefüllt wurden!

3. Dialoge. Bist du ein MessageBox-Fetischist? Diese |?|-Links schreien geradezu nach kontextsensitiver Hilfe. Einfach ist es auch. Schreib eine kleine RTF-Datei mit den Texten, die du bisher via "MessageBox" einblendest. Schau dir einschlägige Tutorials an, wie man daraus eine HLP-Datei mit gemappten Topics (für die Kontext-Hilfe) macht. Oder nimm dir dieses Beispiel (4,78k) inkl. Hilfe-Sourcen und Delphi-Demo als Grundlage. :)

4. Fehlerkontrolle. Auf jeden Fall ein Bug dürften die Prüfungen sein. Die Angabe "abcdefgh" wird als Empfängeradresse akzeptiert. Weder @ noch Punkt sind erforderlich; das Fehlen wird auch nicht bemängelt. Das ist sehr schlecht. Auch scheint die Prüfung längenbezogen zu sein. Die Angabe "abcd" wird bemängelt; noch 4 Zeichen ran, und alles ist wieder in Butter ... Das gilt auch für die Absender-Adresse.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: So 08.12.02 15:19 
Hi

Danke für die vielen Hinweise.
Nein, ich bin kein showmessage-Fanatiker, ich hatte nur keine Lust was ausführlicheres zu Machen. Ich hab mir dein Beispiel angeschaut:
Super :!:
Ich habe die Befhele auch schon übernommen, nur weiß ich nicht, wo ich tutorials zum .hlp-Dateien machen finde.
Das mit OpenSource isch zwar egal, würde aber nichts bringen, da die Mail über einen PHP-Script (per get-Befehl von der Indy HttpClient Kompo) verschickt wird und ich einen php-script nicht os machen kann.
Ein Hinweis wäre aber angebracht, da gebe ich dir recht.
Die Email-Überprüfung ist noch sehr unausgereift. Ich habe "ausgerechnet", dass eine Email mindestens 8 Zeichen (m@msn.de) haben muss und hab das ganze mit ner einfachen if-Anweisung gemacht.
Die Label mit OnClick ereigniss werd ich noch frablich und aüßerlich etwas abändern, damit man deutlich sieht, dass das ein Button sein soll.
Weiß du wo es ein .hlp Tut gibt?

cu

Onz
bis11
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1247
Erhaltene Danke: 2

Apple Mac OSX 10.11

BeitragVerfasst: So 08.12.02 15:34 
Hier im Forum unter Tutorial.

CHM-Dateien
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 08.12.02 19:20 
Onz hat folgendes geschrieben:
Nein, ich bin kein showmessage-Fanatiker

:wink:

Zitat:
Ich habe die Befhele auch schon übernommen, nur weiß ich nicht, wo ich tutorials zum .hlp-Dateien machen finde.

Na ja, die ältere Version findest du unter dem Link, den dir bis11 genannt hat. Etwas aktueller ist das Tutorial (vom selben Autor) in Luckies Win32-API-Tutorials. Eine noch aktuellere Version dieser Tutorials folgt hoffentlich noch in diesem Jahr. :)

Zitat:
Ein Hinweis wäre aber angebracht, da gebe ich dir recht.

Yo.

Zitat:
Ich habe "ausgerechnet", dass eine Email mindestens 8 Zeichen (m@msn.de) haben muss und hab das ganze mit ner einfachen if-Anweisung gemacht.

Das mag sein, aber ist -wie du selbst merkst- sehr unzuverlässig. Ich würde mir entweder eine Prüffunktion selbst schreiben, bzw. mal gucken. "MatchesMask" (Unit Masks) dürfte Ansatzpunkte bieten.
Das Problem wäre sowieso, dass du zumindest die Eingabe des Empfängers auseinandernehmen musst. Es können ja mehrere Empfänger angegeben werden, und demzufolge wären vor dem Senden alle Adressen auf Gültigkeit zu prüfen, und ungültige Adressen müssten übergangen werden.

Ein Protokoll am Ende wäre dann nicht schlecht, so dass man solche Probleme mitbekommt.

Zitat:
Die Label mit OnClick ereigniss werd ich noch frablich und aüßerlich etwas abändern, damit man deutlich sieht, dass das ein Button sein soll.

Wenn du Interesse hast, suche ich mal die Idee mit dem Handcursor raus. Ich hatte das für ein Programm verwendet, ´s ging ganz gut.

Schon gefunden! Laut PSDK (Aug 2002) gilt das folgende mittlerweile auch uneingeschränkt für Win98. Ich nehme also mal an, wenn man einen aktuellen IE (ab Version 4?) installiert hat, dürfte man auf den Cursor zugreifen können.
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
// globale Konstante (ist empfehlenswert)
const
  crHandshake = 1;

{ ... }

begin
  Screen.Cursors[crHandshake] := LoadCursor(0,IDC_HAND);

  // und jetzt z.B. für einen Button
  Button1.Cursor := crHandshake;

  // usw.
end;

Das war´s. :)
Popov
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mo 09.12.02 21:28 
Zu der EMail-Adressen Prüfung. Ich hab vor einigen Wochen auch das Problem gehabt und nichts im Internet gefunden. Deshalb hab ich mir eine eigene Prüfungsfunktion geschrieben. Kannst mal testen und mir sagen ob dir noch was einfällt:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
// Testet URL und EMail-Adresse auf korrekte Schreibweise.
function UrlMailTest2({var} S: String): Byte;
var
  i: Integer;
begin
  Result := 0;

  if Pos(#32, S) > 0 then Exit;

  //Prüfung auf URL
  //...

  //Prüfung auf EMail
  if (Pos('@', S) = 0) or (Pos('@', S) = 1) then Exit;
  if (Pos('@', S) <> LastDelimiter('@', S)) then Exit;
  if (Pos('.', S) = Length(S)) then Exit;
  if (LastDelimiter('@', S) > LastDelimiter('.', S)) then Exit;
  //...
  Result := 2;
end; {popov}


Das hier ist eine etwas verkürzte Version von Url und Mail-Test, da du nur einen EMail-Adressentest braucht. Ist das Result größer Null, dann ist die Adresse korrekt geschrieben.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Mo 09.12.02 21:55 
Danke. Wobei die volle Version auch gut wäre, der man ja an mehrere Empfänger senden kann.