Hi,
open (MAIL, "|-")
was glaubst Du damit zu bewirken?
|| exec $mailprog,$Formular{'email'}
Was immer $mailprog ist - Du solltest Dir die Doku dazu durchlesen. sendmail beispielsweise (das Du zu verwenden scheinst) erlaubt sowohl, den Mailtext nach Empfängern zu durchsuchen, als auch, einen Return-Pfad im Falle von Bounces anzugeben. Beides ist für Dich sinnvoll, wenn ich Dein Problem richtig verstehe.
Es reicht übrigens, mit open zu arbeiten. Das ist die gängige Methode - wenn nicht Net::SMTP verwendet wird, was empfehlenswert ist.
|| die "Can't open $mailprog!\n";
Hier sollte noch $! und ggf. $? ausgegeben werden, damit Du im Zweifel die Fehlerursache erfährst.
Cheatah