Screenshot usando PHP (Windows)

PHP
Enviado por Eclesiastes em Qui, 30/08/2007 - 16:40.PHP

No PHP 5.2.2 foi incluido funções para essa finalidade!

É possível criar a screenshot de toda a tela, como de uma específica aplicação. Pela propriedade HWND obtida por uma instancia COM.

imagegrabwindow()
imagegrabscreen()

Veja os exemplos encontrados na documentação...

Screenshot

  1. <?php
  2. $im = imagegrabscreen();
  3. imagepng($im, "myscreenshot.png");
  4. ?>

Capture a window (IE for example)

  1. <?php
  2. $browser = new COM("InternetExplorer.Application");
  3. $handle = $browser->HWND;
  4. $browser->Visible = true;
  5. $im = imagegrabwindow($handle);
  6. $browser->Quit();
  7. imagepng($im, "iesnap.png");
  8. $im = imagegrabscreen();
  9. ?>

Capture a window (IE for example) but with its content!

  1. <?php
  2. $browser = new COM("InternetExplorer.Application");
  3. $handle = $browser->HWND;
  4. $browser->Visible = true;
  5. $browser->Navigate("http://www.libgd.org");
  6.  
  7. /* Still working? */
  8. while ($browser->Busy) {
  9.     com_message_pump(4000);
  10. }
  11. $im = imagegrabwindow($handle, 0);
  12. $browser->Quit();
  13. imagepng($im, "iesnap.png");
  14. ?>



Enviado por danilo (não verificado(a)) em Seg, 08/10/2007 - 15:19.

Aqui no computador onde trabalho a função retorna uma imagem toda preta, sem o conteúdo da tela que deveria aparecer. Alguem teve o mesmo problema ou sabe como solucioná-lo?

Enviado por guest (não verificado(a)) em Seg, 19/11/2007 - 09:42.

eu tive o mesmo problema. o arquivo é salvo porém está todo preto... estranho. procurei pela net e todos estão fazendo da mesma forma que eu...

Enviado por Octávio (não verificado(a)) em Seg, 19/11/2007 - 10:21.

só funciona com PHP + IIS(plataforma windows)... não funfa PHP + APACHE...

Enviado por Tiago (não verificado(a)) em Ter, 18/03/2008 - 18:41.

Testei em php5+apache2 rodando no FireFox e funciona perfeitamente. muito interessante por sinal. Verifique as versões de seu servidor.

Enviado por Falci (não verificado(a)) em Ter, 21/10/2008 - 07:01.

PHP5 + Apache2 + Vista.. funcionou legal.. só que tem que executar o apache como administrador.

Enviado por Rubia (não verificado(a)) em Sáb, 01/11/2008 - 00:45.

Alguém poderia me ajudar?

Estou usando esta função, mas a imagem gerada é toda preta, como comentado acima, estou usando php5 + apache 2 + firefox e não funciona.

Sabem me dizer o que será que devo estar fazendo de errado?

Obrigada!

Enviado por Rafael (não verificado(a)) em Qua, 19/11/2008 - 11:12.

Retirado do php.net:

"For this to work your Apache service must be set to 'Allow service to interact with desktop' otherwise you will just get a blank image. To fix this right-click My Computer, select Manage/Services and Applications/Services - find the apache service (like Apache2) and right-click, select Properties - choose the Log on tab and check the 'Allow service to interact with desktop' checkbox. Restart Apache."

Enviado por gilbnet (não verificado(a)) em Qua, 08/07/2009 - 22:38.

Alguém conseguiu fazer funcionar este script gostaira de poer usá-lo
gilbmg@gmail.com