gtcesar
(usa Ubuntu)
Enviado em 08/05/2008 - 20:31h
\\para isso teremos que criar 2 arquivos, um php e outro bat
\\crie este arquivo no seu editor favorito e salve como .php
<?php
if (!class_exists('gtk'))
{
if (strtoupper(substr(PHP_OS, 0,3) == 'WIN'))
dl('php_gtk.dll');
else
dl('php_gtk.so');
}
function deletarEvento()
{
return false;
}
function finalizar()
{
gtk::main_quit();
}
function Button1Clicked()
{
// funação para captura porta da impressora
$capturar=("caminhoDaPasta/arquivo.bat");
if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'){
pclose(popen("start ".$capturar, "r"));
} else {
exec($capturar." > /dev/null &");
}
}
class NoName extends GtkWindow
{
public function __construct()
{
// instancia janela
parent::__construct();
// define titulo, borda e redimensionamento
parent::set_title('Capturar...');
parent::set_border_width(1);
parent::set_resizable(True);
// define tamanho
parent::set_size_request(186,69);
// quando for fechada
parent::connect_simple('destroy', 'finalizar');
parent::connect_simple('delete-event', 'deletarEvento');
// cria GtkLayout, para posicionar widgets
$LayoutForm1 = new GtkLayout;
parent::add($LayoutForm1);
//cria e posiciona GtkButton
$Button1 = new GtkButton('Capturar');
$Button1->set_size_request(75,25);
$LayoutForm1->put($Button1, 56,23);
$Button1->connect('clicked', 'Button1Clicked');
}
}
$app = new NoName;
$app->show_all();
gtk::main();
?>
\\agora no seu editor favorito crie este arquivo e salve como .bat
@echo off
echo.
echo Configuracao da impressora...
echo.
echo.
pause
echo.
echo.
echo [1] Capturar porta da Impressora
echo [2] Deletar porta da Impressora
echo.
echo.
set /p choice=Escolha uma opcao:
if "%choice%"=="1" goto config
if "%choice%"=="2" goto delete
:config
echo.
echo.
set /p choice1=Digite o nome da maquina onde a impressora esta instalada:
echo.
echo.
set /p choice2=Digite o nome da impressora instalada:
echo.
echo.
set /p choice3=Digite a porta de impressao que sera mapeada, na duvida use (lpt1:):
echo.
echo.
echo Capturando... "\\%choice1%\%choice2%\%choice3%"
echo.
echo.
pause
echo.
echo.
net use %choice3% \\%choice1%\%choice2% /yes
goto fim
:delete
echo.
echo.
set /p choice4=Digite a porta de impressao que sera removida, na duvida use (lpt1:):
echo.
echo.
echo Excluindo... "%choice4%"
echo.
echo.
pause
echo.
echo.
net use %choice4% /delete
goto fim
:fim
echo.
echo.
pause
exit
\\nao se esqueça de especificar o caminho e o nome do arquivo .bat em $capturar
\\isso é so uma coisa banal