in reply to Pass parameter in email subject and body through MIME::Lite;

Have you checked that your problem is related to MIME::Lite at all?

The following program shows that you never read the parameters properly:

#!perl use strict; use warnings; my $parameter = 'Hello World'; &SendMail($parameter); sub SendMail() { my $service = @_; print "Service is: [$service]\n"; my $msgSubject = '$service '; print "msgSubject is: [$msgSubject]\n"; }

Single quotes do not interpolate variables.

Parameters need to assigned in subroutines as:

my ($service) = @_;