Subscribe to RSS Feed

Como executar linha de comando na máquina cliente

6 de novembro de 2009 Por Alex Santos

Sabemos que este é um problema que nós desenvolvedores web encontramos no dia a dia, pois para executar algo na máquina do cliente somos barrados por problemas de permissões.

Como solucionar este problema?

Como solução, foi criada uma função que interage com um applet que tem a funcionalidade de executar um comando na máquina cliente.

Para executar a função é necessário seguir os seguintes passos:

1- Copiar os arquivos “HTMLExecuteCommandApplet.html” e “ExecCMD.jar” para a pasta ${webrun}\apps
2- Importar a função através do arquivo “ExecutarLinhaDeComandoNaMaquinaDoCliente.FRZ”
3- Será necessário que o cliente tenha instalado a máquina virtual java.
4- Será necessário que o applet seja assinado ou que o cliente dê permissão para que um applet possa executar comandos.

Observação: Caso a escolha seja permitir que um applet tenha permissão de acesso, pode-se incluir no arquivo “${JRE_HOME}\lib\security\java.policy” a seguinte linhas:

grant {
permission java.security.AllPermission;
};

Insira a linha acima na parte // default permissions granted to all domains do arquivo java.policy

Para testar se realmente está funcionando, crie um fluxo para executar a função “Executar linha de comando na máquina cliente”

Passe como parâmetro para a função o comando ”calc”, este comando abrirá a calculadora na máquina do cliente.

Executar linha de comando na máquina cliente

Clique aqui para fazer o download dos arquivos listados abaixo:

“HTMLExecuteCommandApplet.html” = Html responsável por invocar o applet
“ExecCMD.jar” = Contém os arquivos do applet
“ExecutarLinhaDeComandoNaMaquinaDoCliente.FRZ” = Função para ser exportada para o maker
“HTMLExecuteCommandApplet.java” = Código fonte do Applet

Esta solução foi desenvolvida por Alan Moraes

Tags: ,

2 Responses a “Como executar linha de comando na máquina cliente”

  1. ideveloper
    22/05/2010 às 14:16

    Boa tarde,

    Segui os passos indicados mas ao clicar no botão que executaria a calculadora apareceu a seguinte mensagem:
    Access denied (java.io.FilePermission <> execute)

    O que poderia ser ?

    Teste realizando no Win7.

  2. Márcio Saeger
    23/05/2010 às 22:58

    Olá caro colega,

    Este erro ocorre provavelmente porque o applet não é assinado digitalmente e por questões de seguranças dos browsers, eles não permitem que applets não-assinados sejam executados.
    Solução: No IE existe uma opção la em ferramentas -> opções que permite que applets não-assinados sejam executados (Ele também irá enxer o saco falando que o seu IE está inseguro e bla bla bla, mas pelomenos irá executar o applet).

Deixe uma Resposta