Olá, Aureliano, tudo bom?<br><br>Não costumo ter tempo de ver emails do grupo, nem de participar dos encontros. Lamentável.<br><br>Mas a ausência de respostas dessa thread, aliado a um eventual whisky descompromissado na frente do PC, fez eu estar aqui respondendo :)<br>
<br>Desconheço os módulos que você está usando, nunca precisei deles. Mas dei uma olhada no seu código, e duas coisas chamaram minha atenção:<br><br>1. Você disse ter problemas para salvar um arquivo binário em ambiente Windows.<br>
<br>2. Você passou o seguinte código:<br>open IN, $ARGV[0] or die $!;<br>save_vd (vdid($_)) foreach (<IN>);<br><br>Sendo que essa save_vd não tem uma instrução binmode. Tá com cara que você precisa dar um binmode. Vou explicar...<br>
<br>Quando precisamos salvar em disco um arquivo binário dentro de um "not Windows", a gente escreve o arquivo e pronto. Dentro de um Windows, não basta escrever o arquivo, tem que colocar uma instrução (após o open) dizendo que o arquivo é binário. Tipo isso:<br>
<span style="font-family:courier new,monospace">open (OUT, ">video.flv");<br><b>binmode(OUT);</b><br>print OUT $bytes;<br>close(OUT);<br></span><br>Já segue o link para o Perldoc :)<br><a href="http://perldoc.perl.org/functions/binmode.html">http://perldoc.perl.org/functions/binmode.html</a><br>
<br>Perl Forever!!!!<br><br>Um abraço.<br><br><br><br><div class="gmail_quote">2012/10/28 Aureliano Guedes <span dir="ltr"><<a href="mailto:guedes_1000@hotmail.com" target="_blank">guedes_1000@hotmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div><div dir="ltr">
Ola Monges,<br>Mais uma vez venho incomodar com meus problemas.<br><br>Aparentemente o modulo <a href="https://metacpan.org/module/WWW::YouTube::Download" target="_blank">WWW::YouTube::Download</a> não tem nenhum problema, mas quando eu uso em ambiente Windows ele salva o arquivo com defeitos, de forma que acaba não sendo lido pelos reprodutores de audio e video.<br>
<br>meu codigo -> <a href="http://pastebin.com/k7v6rWCr" target="_blank">http://pastebin.com/k7v6rWCr</a><br><br>Ja estou sem ideia de o que fazer. Imagino que isso se deva porque o Perl do Windows (como ja havia dito o Stanislaw) subistitui o CR por CRLF, isso deveria ser contornado usando binmode no filehandle.<br>
No caso deste modulo, isso já é feito:<br><div><code> 99    </code><code>open</code> <code>my</code> <code>$wfh</code><code>, </code><code>'>'</code><code>, </code><code>$file</code> <code>or Carp::croak </code><code>$file</code><code>, </code><code>" $!"</code><code>;</code></div>
<div><code>100    </code><code>binmode</code> <code>$wfh</code><code>;</code></div><br><br>ref: <a href="https://metacpan.org/source/XAICRON/WWW-YouTube-Download-0.41/lib/WWW/YouTube/Download.pm" target="_blank">https://metacpan.org/source/XAICRON/WWW-YouTube-Download-0.41/lib/WWW/YouTube/Download.pm</a><br>
<br><br>Não entendo portanto porque o arquivo vem com problemas.<br><br>Sera que se eu abrir o arquivo em modo binario e trocar todos CRLF por CR funcionaria?? Se sim como fazer isso??<br>                                        </div></div>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><br>