ola pessoal,<div><br></div><div><br></div><div>Estou fazendo um programa que coleta um arquivo.zip e envia via smtp como anexo.</div><div>Ao tentar abrir o anexo que chegou por email, ocorre o seguinte erro:</div><div><br>
</div><div>End-of-central-directory signature not found. Either this file is not a Zip file, or it constitutes one disk of a multi-part Zip </div><div><br></div><div>Sobre o código:</div><div><br></div><div>use MIME::Base64;</div>
<div>use Socket;</div><div><br></div><div>Para abrir o arquivo:</div><div><br></div><div><div>  open $a, &quot;&lt;$fname&quot; or exec close_error (&quot; $fname&quot; );</div><div>        binmode $a;</div></div><div><br>
</div><div>Para ler os dados, estou usando readline e encaminhando para o encode</div><div><div>$ans=&#39;&#39;;</div><div>         while (&lt;$a&gt;) {</div><div>         $ans=$ans.(encode_base64($_));</div><div>                }</div>
<div>        close($a)       or die &quot;close: $!&quot; ;</div><div>        return $ans;</div></div><div><br></div><div>E o conteúdo dessa variável é encaminhada via socket.</div><div>Eu acho que meu erro está na conversão para Base64, pois já fiz teste com um arquivo já convertido e o zip abriu corretamente.</div>
<div><br></div><div>Alguém já obteve o erro acima?</div><div><br></div><div>Obrigada pela ajuda.</div><div>[]&#39;s</div><div>Eliane</div><div><br></div><div><br></div><div><br></div><div> </div><div><br></div>