jpalma 0 Denunciar post Postado Agosto 25, 2011 Boa tarde, Utilizo o XAMPP para implantar meus sistemas e estou com o seguinte problema: - Na versão 1.7.1 do xampp, com php 5.2.9, utilizo a função EXEC para executar um programa externo para acessar a porta serial de uma balança com a finalidade de obter o peso. Este programa foi desenvolvido pelo fabricante da balança. - Atualizei a versão do xampp para 1.7.3, com php 5.3.1, e quando tento utilizar o comando EXEC trava a porta serial e não retorna o peso. Este problema é de configuração no PHP.INI ? Caso positivo qual parametro é este ? Grato Compartilhar este post Link para o post Compartilhar em outros sites
Jefrey 0 Denunciar post Postado Agosto 25, 2011 Tente pela função system() ou shell_exec() e fala o resultado. No php.ini tem o parâmetro disable_functions Exemplo: disable_functions = exec,shell_exec,system Veja se a função exec está lá. Se estiver, remova-a. Tente também pela função passthru(). Leia isso também. :mellow: Compartilhar este post Link para o post Compartilhar em outros sites
jpalma 0 Denunciar post Postado Agosto 25, 2011 Já utilizei a SYSTEM, porem não testei SHELL_EXEC. Verifiquei o php.ini e não existem funções desabilitadas. Grato Compartilhar este post Link para o post Compartilhar em outros sites
marcus_du 1 Denunciar post Postado Agosto 25, 2011 Se for um servidor compartilhado CERTAMENTE sua hospedagem não irá ativar, pois por questão de segurança estas funções são desativadas. Compartilhar este post Link para o post Compartilhar em outros sites
jpalma 0 Denunciar post Postado Agosto 25, 2011 Markus Os computadores fazem parte de uma rede LOCAL, nas dependências do cliente. grato Compartilhar este post Link para o post Compartilhar em outros sites
Fvox 0 Denunciar post Postado Agosto 25, 2011 E o que retorna a função exec? Que valor seria? Dá um var_dump() aí e mostra pra gente. Tenta com funções alternativas como system(), shell_exec(), passthru(), popen()... Apesar que se exec não funciona, acredito que estas também não irão funcionar. []'s Compartilhar este post Link para o post Compartilhar em outros sites
jpalma 0 Denunciar post Postado Agosto 25, 2011 Já utilizei a função SYSTEM e tambem não funcionou. O que me intriga é que na versão php 5.2.9 esta normal e na 5.3.1 não esta. grato Compartilhar este post Link para o post Compartilhar em outros sites
Fvox 0 Denunciar post Postado Agosto 25, 2011 Hmm... As probabilidades são muitas. Dá um var_dump() na string ANTES dela ser colocada na função e vê se tá tudo normal, sem escapes e tudo mais. []'s Compartilhar este post Link para o post Compartilhar em outros sites
jpalma 0 Denunciar post Postado Agosto 25, 2011 O comando que executo é o seguinte: exec('lebalcon 1 9600 5') lebalcon = executavel do fabricante da balança 1 = porta com1 9600 = velocidade da porta com 5 = codigo da balança grato Compartilhar este post Link para o post Compartilhar em outros sites
Fvox 0 Denunciar post Postado Agosto 25, 2011 Mas e como a string está sendo passada em run-time no script? var_dump() pl0x. =p []'s Compartilhar este post Link para o post Compartilhar em outros sites
jpalma 0 Denunciar post Postado Agosto 26, 2011 A função é executada conforme informei anteriormente: exec('lebalcon.exe 1 9600 5') lebalcon.exe = executavel do fabricante da balança 1 = porta com1 9600 = velocidade da porta com 5 = codigo da balança grato Compartilhar este post Link para o post Compartilhar em outros sites
Fvox 0 Denunciar post Postado Agosto 26, 2011 Sim, cara. Mas eu pedi o var_dump() pra saber EXATAMENTE que string está sendo passada em run-time. Alguma diretiva pode estar modificando e você não vê. []'s Compartilhar este post Link para o post Compartilhar em outros sites
jpalma 0 Denunciar post Postado Agosto 26, 2011 O retorno do var_dump: string(17) "LeBalCon 1 9600 5" Compartilhar este post Link para o post Compartilhar em outros sites