PHP-GTK: Criando Aplicações Gráficas com PHP Adianti Framework para PHP PHP Programando com Orientação a Objetos Criando Relatórios com PHP

[PHP-GTK] Para Pablo, ve se vc consegue me ajudar!!

Matheus Neder matheusneder em gmail.com
Sábado Agosto 19 16:14:44 CDT 2006


vc precisa ver o seguinte, qual o tamanho do arquivo que vc quer alterar, se
a memoria que está disponivel para o php cabe o arquivo inteiro (isso pode
ser alterado no php.ini) eu acho q por padrao é liberado somente 8 megas

outra coisa, da forma que eu te passei, só vai funcionar direito se alterar
apenas um byte, nao mais que isso, caso haja necessidade de alterar mais de
um, muda o seguinte

$nova_string = substr($dados, 0, $offset-1) . $bin . substr($dados,
$offset+strlen($bin)-1); // gera a nova string

On 8/19/06, Matheus Neder <matheusneder em gmail.com> wrote:
>
> tenta fazer o seguinte
>
> $manipulador = fopen($caminho_para_o_arquivo, "r"); // abre o aquivo para
> leitura
>
> $dados = "";
>
> while(!feof($manipulador))
>
>    $dados .= fgets($manipulador, 1024)
>
> @fclose($manipulador); // fecha o arquivo
>
>
> On 8/19/06, Erick - PlaynowGames < erick em criarsites.com.br> wrote:
>
> >  Cara, eu fiz aqui, bom, agora vc já me deu luz de como fazer, eu até
> > tinha feito algo parecido, cheguei a usar a função unpack();, eu esbarrei no
> > seguinte
> >
> > $manipulador = fopen($caminho_para_o_arquivo, "r"); // abre o aquivo
> > para leitura
> >
> > $dados = fgets($manipulador); // passa o conteudo do arquivo para string
> > $dados
> >
> > @fclose($manipulador); // fecha o arquivo
> >
> > me parece q em $dados não vai todo o conteudo do arquivo, assim fica
> > impossivel de manipular. é ai q estou parado....sem ter o arquivo todo numa
> > variavel num tenho como manipular.
> >
> > vai uma foto de como fica o arquivo depois de sobrescrito!
> > www.wenomine.com.br/hexa2.jpg
> >
> > abração, vlw pelo retorno!!
> >
> > **
> >
> >  *On Sat, 19 Aug 2006 02:35:50 -0200, Erick - PlaynowGames wrote*
> >
> > > *Muito Obrigado matheus, te agradeço muito mesmo, vo tentara aqui e te
> > falo se deu certo*
> > > *On Sat, 19 Aug 2006 00:03:21 -0300, Matheus Neder wrote*
> > > > bom, acho melhor desconsiderar a mensagem anterior, experimenta ai e
> > ve o que da certo
> > > >
> > > > On 8/18/06, Matheus Neder < matheusneder em gmail.com > wrote:
> >
> >
> > > > > ERRATA
> > > > >
> > > > > depois de $offset = 2;
> > > > > coloque $offset++
> > > > >
> > > > >
> > > > > On 8/18/06, Matheus Neder < matheusneder em gmail.com > wrote:
> > > >
> > > >
> > > > > > bom... nao sou o pablo rs... mas acho q agora entendi mais ou
> > > > menos o que vc quer fazer. Lá vai tudo mastigado, mas num acostuma nao
> > > > hehe..
> > > > > >
> > > > > > $caminho_para_o_arquivo = "/home/.....";
> > > > > >
> > > > > > $offset = 2; // define a posicao que vai ser alterada
> > > > > >
> > > > > > $hex = "CC"; // o byte que vc quer colocar no lugar da posicao
> > > > definida na variavel offset (em hexadecinal)
> > > > > >
> > > > > > /* abre o arquivo para leitura e pega o conteudo */
> > > > > >
> > > > > > $manipulador = fopen($caminho_para_o_arquivo, "r"); // abre o
> > > > aquivo para leitura
> > > > > >
> > > > > > $dados = fgets($manipulador); // passa o conteudo do arquivo
> > > > para string $dados
> > > > > >
> > > > > > @fclose($manipulador); // fecha o arquivo
> > > > > >
> > > > > > $bin = pack("H*", $hex); // converte o valor hexadecimal para
> > > > binario
> > > > > >
> > > > > > $nova_string = substr($dados, 0, $offset-1) . $bin .
> > > > substr($dados, $offset); // gera a nova string
> > > > > >
> > > > > > /* escreve no arquivo */
> > > > > >
> > > > > > $manipulador = fopen($caminho_para_o_arquivo, "w");
> > > > > >
> > > > > > fwrite($manipulador, $nova_string, strlen($nova_string));
> > > > > >
> > > > > > @fclose($manipulador);
> > > > > >
> > > > > >
> > > > > > On 8/18/06, Erick - PlaynowGames < erick em criarsites.com.br>
> > > > wrote:
> > > > >
> > > > > cara, é o seguinte:
> > > > > > > veja esta imagem.
> > > > > > > www.wenomine.com.br/hexa.jpg
> > > > > > >
> > > > > > > eu abro este arquivo num editor hexadecimal e modifico os
> > > > > bytes tudo pelo
> > > > > > > editor hexa manualmente, um deles é este q vc esta vendo
> > > > > circulado na imagem
> > > > > > > (byte 43).
> > > > > > >
> > > > > > > o quero é uma mão pra eu começar a desenvolver um programa q
> > > > > automatize o q
> > > > > > > faço pelo hexadecimal.
> > > > > > >
> > > > > > > Deu pra entender? será possivel fazer isso!?
> > > > > > >
> > > > > > > abraços!!
> > > > > > >
> > > > > > > --
> > > > > > > Erick Eden - WebMaster CriarSites
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > Lista mailing list
> > > > > > > Lista em php-gtk.com.br
> > > > > > > http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> > > > > > >
> > > >
> > > >
> > > > > >
> > >
> > >
> > > > >
> >
> >
> > >
> > > --
> > > Erick Eden - WebMaster CriarSites
> >
> >
> > --
> > Erick Eden - WebMaster CriarSites
> >
> >
> > _______________________________________________
>
>
> Lista mailing list
> Lista em php-gtk.com.br
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
>
>
>
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://lists.php-gtk.com.br/pipermail/lista/attachments/20060819/96d57f9d/attachment-0001.htm


More information about the Lista mailing list