我一直在使用MIME::Lite一段时间,直到现在都没有问题。
我正在尝试附加.txt
文件,但该文件(发送后)内部没有内容。
我知道该文件中包含一些内容,因为我在同一个脚本中创建了.txt
文件。我知道文件的位置并且可以看到它的内容,但是当我告诉MIME::Lite
附加.txt
文件时,电子邮件只带有文件名,只有64个字节。
以下是我脚本MIME::Lite
部分的代码:
$msg = new MIME::Lite(From => $from,To => $to,Subject => $subject,Data => "Data",Type => "multipart/mixed",);
$msg->attach(Type => 'TEXT', Data => @message);
$msg->attach(Type => 'TEXT', Path => $stat_file);
$msg->send();
$stat_file
= /in/some/dir/cheese/txt/somefile.txt
除第3行外,一切正常。它是正确的发现&附加我指向的文件,但当它到达我的电子邮件时,它是一个64字节的空白.txt
文件。
我已尝试过此代码的前3行中的每一行的几种变体,但不知道我缺少的是什么。
任何人都会看到这个脚本按照说明执行的原因吗?
答案 0 :(得分:9)
你说你正在创建程序中$stat_file
指向的文件,对吧?也许你没有关闭文件句柄到那个文件,可能它没有被刷新到磁盘?