Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-18 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Ah então respondeu a duvida do Chiappa.. cai na questao de permissão

Mas nao tem privilégio para logar na maquina via TS ou no console local ?

Se o cara pudesse dar mais uns prints da tela com erro...



2015-03-18 14:10 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 O cara fez o teste hoje e NÃO loga com o user oracle.

 Mostra mensagem de erro dizendo que o usuário não tem privilégio para
 fazer logon na máquina, é mole?



 Att,




 Em 17 de março de 2015 19:01, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Via remote desktop/terminal services com certeza não deve conseguir
 mesmo, isso demanda privilégios extras Se/quando o cara testar o logon
 local, direto lá no servidor, vc nos conta o resultado...

  []s

Chiappa


  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-18 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Bom, isso nos indica que pelo jeito esse servidor deve estar sob alguma POLICY 
(de rede ou local) que esteja Bloqueando o acesso, ou usando alumas opções 
derivadas disso... OK, nem é o caso de investigar mais a fundo e descobrir qual 
é a tool fazendo a restrição, não, forget : era só uma dúvida mesmo...

[]s

  Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-18 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
O cara fez o teste hoje e NÃO loga com o user oracle.

Mostra mensagem de erro dizendo que o usuário não tem privilégio para fazer
logon na máquina, é mole?



Att,




Em 17 de março de 2015 19:01, jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Via remote desktop/terminal services com certeza não deve conseguir mesmo,
 isso demanda privilégios extras Se/quando o cara testar o logon local,
 direto lá no servidor, vc nos conta o resultado...

  []s

Chiappa
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-17 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Opa

Boa tarde..

Posso até estar falando besteiramas tenho a forte impressão de que se a
conta estiver bloqueada, o processo nem executaria, mesmo sendo um serviço.
Tem outras maneiras de se previnir que um usuario logue na maquina ( ex. um
script pra fazer o cara dar logoff, ou restringir a qual
terminal/computador a conta pode logar, se fosse membro de um AD).




2015-03-17 13:12 GMT-03:00 jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br:



 OK... No caso, como é 12c embora eu não tenha feito muitas instalações 12c
 eu sei que ele relaxou algumas das necessidades do usuário que instala o
 RDBMS, mas vejo que o tal usuário ORACLE até está no Grupo de
 Administrators, então isso tá bem... Só perguntando : no 12c
 introduziu-se a figura do ORACLE HOME USER, ** além ** do USER INSTALLATION
 USER Vc usou esse ORACLE como HOME USER ou como INSTALLATION USER
 ?? É a grande pergunta, de repente não é especificamente sob esse
 account que o RDBMS tá rodando...
  INCLUSIVE, achei estranho que o ORACLE não está no grupo ORA_DBA...
 Acho que vale dar uma consultada nos Services do Windows e confirmar se é
 com esse account mesmo que os Services estão rodando...

   Continuando o roteiro que recomendei na minha msg anterior : agora que
 sabemos que esse usuário ORACLE é local, uma vez que vc ** CONSIGA
 CONFIRMAR ** que é com ele que o RDBMS tá rodando, para ver se ele pode
 logar localmente a próxima verificação é , nesse mesmo servlet, ainda
 nessas Propriedades do usuário Oracle, ver se na aba General se casualmente
 o ORACLE ** não está ** com checkbox de desativado marcado, nem está com
 o checkbox de conta bloqueada marcado
A conta não está inativa nem bloqueada, eu só não tenho certeza se pra
 logon local o usuário tem que estar no grupo USERS ou não, faça (ou peça
 pra fazerem) esse teste adicional

   OK ? Com isso imagino que vc vai conseguir logar localmente com esse
 usuário oracle e assim ser capaz de abrir um prompt de comando no grupo
 ORA_DBA e testar a execução do script...
E ** atenção ** : eu estou falando de conexão LOCAL, ie, alguém ir até
 a frente do computador e logar fornecendo nome e senha : logon ** REMOTO **
 (por exemplo, via TERMINAL SERVICES) via de regra exigem privs adicionais...

 []s

   Chiappa
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-17 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Via remote desktop/terminal services com certeza não deve conseguir mesmo, isso 
demanda privilégios extras Se/quando o cara testar o logon local, direto lá 
no servidor, vc nos conta o resultado...

 []s

   Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-17 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Bom dia pessoal!

Bom, eu parti para a solução via JOB.

Fiz da seguinte maneira:

  dbms_scheduler.create_job(job_name= 'PRINT_TU_'||v_seq,
  job_type= 'EXECUTABLE',
job_action  = 'c:\wyms_print\i9Print.bat',
enabled = FALSE,
auto_drop = true);

 dbms_scheduler.run_job('PRINT_TU_'||v_seq);
  dbms_scheduler.drop_job('PRINT_TU_'||v_seq);


Ao executar o run_job, deu o erro:

-27370: ORA-27370: o escravo do job falhou ao iniciar um trabalho do tipo
EXECUTABLE
ORA-27300: operac?o dependente de sistema no SO:accessing job scheduler
service falhou com o status: 2
ORA-27301: mensagem de falha de SO: The system cannot find the file
specified.
ORA-27302: a falha ocorreu as: sjsec 6a
ORA-27303: informac?es adicionais: The system cannot find the file
specified.

Falta de permissão para acessar o arquivo, é isso?
O que faço?


Att,




Em 16 de março de 2015 15:04, jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Opa, blz ? Então, vamos por partes, bem ponto a ponto :

  a. SE vc confirmar que Realmente o usuário que roda o RDBMS é Realmente
 um usuário LOCAL (o que eu tenho dúvidas, principalmente quando vc disse
 que o Oracle criou um usuário local - o default REALMENTE não é nada
 disso, mas enfim), fica ** difícil ** a gente engolir que o WinAdmin não
 conseguiu fazer esse usuário local ter privilégio de logar - como eu disse,
 em condições normais é só acionar o applet de admin local, e em Usuários
 desmarcar a propriedade de usuário desabilitado E confirmar que o carinha
 está nos Grupos de usuários... Se o sujeito não sabe confirmar nem isso,
 pára tudo e Chama o Síndico : absolutamente NÂO DÁ pra confiar num sysadmin
 que nem pra isso serve

  ==  CASO vc obtenha a confirmação que o usuário não é um usuário local
 aberto (ie, é um usuário INTERNO do Windows, por exemplo, OU de repente é
 um usuário de domínio que está num Grupo que por regra não permite logon,
 só serve para executar apps), OU se descobrir que há uma Customização que
 impede o logon (digamos, uma Policy de rede ou local), aí SIM vc vai
 explorar as demais opções...

  b. confirmado que não conseguiu logar mesmo E que não é uma simples
 questão de alterar propriedades do usuário, antes de discutirmos nos itens
 abaixo as opções de logar com pribs de outro usuário, RECOMENDO que vc
 teste as Outras opções indicadas durante a thread, que relembrando foram :

= opção de acessar a tal impressora via rede, enviando pacotes de rede
 via packages de rede presentes no RDBMS e acessíveis ao PL/SQL

= ao invés de não ter password para o compartilhamento, ter uma
 password fixa que não muda

= acessar via java diretamente a impressora de rede, o Java tem
 comandos mais direcionados a isso

  c.  usando o RUNAS : realmente, a utilização normal é mesmo se logar como
 o usuário que deverá executar o processo e rodar  RUNAS passando como
 argumento o usuário detentor dos privilégios a serem incorporados e
 INterativamente, só na primeira vez, informar a senha... Neste cenário de
 que vc realmente não poder logar como o usuário dono do RDBMS Oracle,
 embora eu não tenha certeza 100%, sei que a senha fica armazenada no
 Credential Manager do Windows - ** acredito ** (não é uma Certeza, é uma
 Sugestão a testar - espero que isso tenha ficado Claro) que seja possível
 vc  exportar as credenciais para o usuário que roda o RDBMS, mesmo ele não
 podendo logar...

  d. se não funfar o RUNAS, aí a melhor opção é vc usar uma opção que
 permita indicar usuário detentor dos privilégios e senha : isso
 NECESSARIAMENTE implica que vc VAI ter que instalar um software extra
 (rigorosamente NÂO EXISTE um sudo nativo e não-interativo no Windows) ,
 irei recomendar aqui algumas opções da própria Microsoft...   Uma delas é o
 ShellRunAs , cfrme
 https://technet.microsoft.com/en-us/sysinternals/cc300361.aspx , e a
 outra é o PSexec em
 https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx : esta
 última faz parte do pacote SysInternals, que originalmente foi criado pelo
 expert Windows Mark Russinovich e depois foi adquirido pela Microsoft, o
 que de certo modo o 'oficializou' como parte do Windows, ainda que uma
 parte não-default...


  == Com alguma das opções acima eu CREIO que vc vai ser capaz de testar
 se Realmente é questão de privilégios, o que a gente ** acha ** que é, mas
 ninguém pode te Afirmar com 100% de certeza...

   []s

 Chiappa
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-17 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Consegui um print dos grupos do usuario oracle lá do servidor...

Veja Chiappa:
http://certificacaobd.com.br/down/001129.png

E esses são todos os grupos existentes:
http://certificacaobd.com.br/down/001130.png






Att,




Em 17 de março de 2015 10:13, Milton Bastos Henriquis Jr. 
miltonbas...@gmail.com escreveu:

 Bom dia pessoal!

 Bom, eu parti para a solução via JOB.

 Fiz da seguinte maneira:

   dbms_scheduler.create_job(job_name= 'PRINT_TU_'||v_seq,
   job_type= 'EXECUTABLE',
 job_action  = 'c:\wyms_print\i9Print.bat',
 enabled = FALSE,
 auto_drop = true);

  dbms_scheduler.run_job('PRINT_TU_'||v_seq);
   dbms_scheduler.drop_job('PRINT_TU_'||v_seq);


 Ao executar o run_job, deu o erro:

 -27370: ORA-27370: o escravo do job falhou ao iniciar um trabalho do tipo
 EXECUTABLE
 ORA-27300: operac?o dependente de sistema no SO:accessing job scheduler
 service falhou com o status: 2
 ORA-27301: mensagem de falha de SO: The system cannot find the file
 specified.
 ORA-27302: a falha ocorreu as: sjsec 6a
 ORA-27303: informac?es adicionais: The system cannot find the file
 specified.

 Falta de permissão para acessar o arquivo, é isso?
 O que faço?


 Att,




 Em 16 de março de 2015 15:04, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Opa, blz ? Então, vamos por partes, bem ponto a ponto :

  a. SE vc confirmar que Realmente o usuário que roda o RDBMS é Realmente
 um usuário LOCAL (o que eu tenho dúvidas, principalmente quando vc disse
 que o Oracle criou um usuário local - o default REALMENTE não é nada
 disso, mas enfim), fica ** difícil ** a gente engolir que o WinAdmin não
 conseguiu fazer esse usuário local ter privilégio de logar - como eu disse,
 em condições normais é só acionar o applet de admin local, e em Usuários
 desmarcar a propriedade de usuário desabilitado E confirmar que o carinha
 está nos Grupos de usuários... Se o sujeito não sabe confirmar nem isso,
 pára tudo e Chama o Síndico : absolutamente NÂO DÁ pra confiar num sysadmin
 que nem pra isso serve

  ==  CASO vc obtenha a confirmação que o usuário não é um usuário local
 aberto (ie, é um usuário INTERNO do Windows, por exemplo, OU de repente é
 um usuário de domínio que está num Grupo que por regra não permite logon,
 só serve para executar apps), OU se descobrir que há uma Customização que
 impede o logon (digamos, uma Policy de rede ou local), aí SIM vc vai
 explorar as demais opções...

  b. confirmado que não conseguiu logar mesmo E que não é uma simples
 questão de alterar propriedades do usuário, antes de discutirmos nos itens
 abaixo as opções de logar com pribs de outro usuário, RECOMENDO que vc
 teste as Outras opções indicadas durante a thread, que relembrando foram :

= opção de acessar a tal impressora via rede, enviando pacotes de
 rede via packages de rede presentes no RDBMS e acessíveis ao PL/SQL

= ao invés de não ter password para o compartilhamento, ter uma
 password fixa que não muda

= acessar via java diretamente a impressora de rede, o Java tem
 comandos mais direcionados a isso

  c.  usando o RUNAS : realmente, a utilização normal é mesmo se logar
 como o usuário que deverá executar o processo e rodar  RUNAS passando como
 argumento o usuário detentor dos privilégios a serem incorporados e
 INterativamente, só na primeira vez, informar a senha... Neste cenário de
 que vc realmente não poder logar como o usuário dono do RDBMS Oracle,
 embora eu não tenha certeza 100%, sei que a senha fica armazenada no
 Credential Manager do Windows - ** acredito ** (não é uma Certeza, é uma
 Sugestão a testar - espero que isso tenha ficado Claro) que seja possível
 vc  exportar as credenciais para o usuário que roda o RDBMS, mesmo ele não
 podendo logar...

  d. se não funfar o RUNAS, aí a melhor opção é vc usar uma opção que
 permita indicar usuário detentor dos privilégios e senha : isso
 NECESSARIAMENTE implica que vc VAI ter que instalar um software extra
 (rigorosamente NÂO EXISTE um sudo nativo e não-interativo no Windows) ,
 irei recomendar aqui algumas opções da própria Microsoft...   Uma delas é o
 ShellRunAs , cfrme
 https://technet.microsoft.com/en-us/sysinternals/cc300361.aspx , e a
 outra é o PSexec em
 https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx : esta
 última faz parte do pacote SysInternals, que originalmente foi criado pelo
 expert Windows Mark Russinovich e depois foi adquirido pela Microsoft, o
 que de certo modo o 'oficializou' como parte do Windows, ainda que uma
 parte não-default...


  == Com alguma das opções acima eu CREIO que vc vai ser capaz de testar
 se Realmente é questão de privilégios, o que a gente ** acha ** que é, mas
 ninguém pode te Afirmar com 100% de certeza...

   []s

 Chiappa
  





[oracle_br] Re: Executar comando do sistema operacional

2015-03-17 Por tôpico jlchia...@yahoo.com.br [oracle_br]
OK... No caso, como é 12c embora eu não tenha feito muitas instalações 12c eu 
sei que ele relaxou algumas das necessidades do usuário que instala o RDBMS, 
mas vejo que o tal usuário ORACLE até está no Grupo de Administrators, 
então isso tá bem... Só perguntando : no 12c introduziu-se a figura do ORACLE 
HOME USER, ** além ** do USER INSTALLATION USER Vc usou esse ORACLE como 
HOME USER ou como INSTALLATION USER ?? É a grande pergunta, de repente não 
é especificamente sob esse account que o RDBMS tá rodando...
 INCLUSIVE, achei estranho que o ORACLE não está no grupo ORA_DBA...  Acho 
que vale dar uma consultada nos Services do Windows e confirmar se é com esse 
account mesmo que os Services estão rodando...
 
  Continuando o roteiro que recomendei na minha msg anterior : agora que 
sabemos que esse usuário ORACLE é local, uma vez que vc ** CONSIGA CONFIRMAR 
** que é com ele que o RDBMS tá rodando, para ver se ele pode logar localmente 
a próxima verificação é , nesse mesmo servlet, ainda nessas Propriedades do 
usuário Oracle, ver se na aba General se casualmente o ORACLE ** não está ** 
com checkbox de desativado marcado, nem está com o checkbox de conta bloqueada 
marcado 
   A conta não está inativa nem bloqueada, eu só não tenho certeza se pra logon 
local o usuário tem que estar no grupo USERS ou não, faça (ou peça pra fazerem) 
esse teste adicional 
  
  OK ? Com isso imagino que vc vai conseguir logar localmente com esse usuário 
oracle e assim ser capaz de abrir um prompt de comando no grupo ORA_DBA e 
testar a execução do script...
   E ** atenção ** : eu estou falando de conexão LOCAL, ie, alguém ir até a 
frente do computador e logar fornecendo nome e senha : logon ** REMOTO ** (por 
exemplo, via TERMINAL SERVICES) via de regra exigem privs adicionais...
   
[]s

  Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-16 Por tôpico Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
Milton,

 A utilização do runas é somente para usuários que estão logados
interativamente no Sistema Operacional. Nisso como vc disse que não
consegue logar com o oracle, seria impossível vc utilizar o runas para
salvar as credencias, pois as credenciais ficam gravadas na sessão
interativa utilizada no windows. Acredito que a solução paliativa que te
passei utilizando um software de terceiro para conseguir utilizar o runas
informando usuário e senha é uma das saídas possíveis destes problema, já
que a limitação não está envolvendo o Banco de dados Oracle e sim o SO
Windows. Agora fica a seu critério.

Att,
Emerson S. Gaudencio

Em 14 de março de 2015 16:26, 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu:



 Chiappa, entendi parcialmente, mas acho que vc não entendeu o que eu quis
 dizer!

 O que eu quis dizer no meu e-mail anterior foi o seguinte, vou
 exemplificar, vamos supor que eu tenha:

 oracle - usuario owner do RDBMS
 print_user - usuario criado para rodar o comando de impressao (com senha
 que nunca vai mudar) e com permissões necessárias para acessar as
 impressoras compartilhadas na rede
 milton - meu usuario de rede

 A minha intenção era:
  - dentro do meu PL/SQL eu chamaria o runas, passando o usuario e senha do
 usuario print_user, para executar o .BAT - ok
  - ao fazer isso, a partir do usuario oracle eu executo o runas pra
 rodar o comando como se fosse o print_user - ok
  - se eu executar uma vez manualmente, eu escreveria a senha de forma
 interativa e partir das seguintes não precisaria mais - ok
  - aí vem minha dúvida: para executar essa primeira vez, eu não teria que
 estar LOGADO com o usuario oracle para executar o comando runas passado o
 print_user/senha? isso eu não consigo fazer, pois o windows não me deixa
 logar como oracle! Se eu executar o runas logado como milton, passando
 print_user/senha, e depois tentar executar via PL/SQL (ou seja, via usuario
 oracle), continua valendo a senha qe ficou gravada para login no runas? ou
 só fica valendo pra eu continuar executando como milton?






 Att,




 Em 13 de março de 2015 18:17, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Veja bem :  a idéia NÃO É (repito,  Não È  ) vc passar pro RUNAS
 esse usuário dono do RDBMS com o qual vc não consegue logar, mas SIM ter um
 usuário Windows local (chamado JOAOZINHO, ou outro nome qualquer) que SEJA
 capaz de logar, usuário esse previamente criado e permissionado E que não
 mude a senha nunca, aí apenas uma vez vc ou alguém no cliente executa
 manualmente o .BAT informando a senha desse usuário e cabou : nas próximas
 vezes que esse .BAT for executado pela rotina java que chama executáveis ,
 a senha JÁ VAI estar armazenada, ao que entendo ele NÂO VAI pedir de novo,
 okdoc ?? É isso ... ÓBVIO que se o usuário sob o qual o RDBMS roda não é um
 usuário local com privilpégio de logon (o que vc NÂO nos confirmou ainda,
 by the way!!! veja lá !!) não tem como vc logar com ele pra executar a
 primeira vez...

  E uma obs importante : ao que entendo, quando o usuário quer imprimir um
 arquivo Y, o Sistema cria um .BAT assim :

  copy /b Y.arq ipdaimpressora

  depois, se o usuário quer imprimir um arquivo X.nnn , ele cria um OUTRO
 bat com  :

  copy /b X.nnn ipdaimpressora

  assim por diante, e por isso como o .BAT muda a cada execução vc não
 teria como executar manualmente a primeira vez Coisas como ter um outro
 .BAT fixo chamando o segundo .BAT de impressão , que seria recriado a cada
 vez com o novo conteúdo mas MANTENDO sempre o mesmo nome, como indicado por
 outro colega, são  SIM possíveis mas imho desnecessárias : isso de criar um
 .BAT novo a cada vez com uma única diferença NÂO FAZ o menor sentido, por
 que vc não tem um único .BAT fixo que aceita o nome do arquivo como
 argumento, tipo :

  -- este .BAT único se chama IMPRIME.BAT
  copy /b %1 ipdaimpressora

  e aí para imprimir o arquivo Y.arq vc chama o .BAT com :

  CMD.EXE /C \caminho\IMPRIME.BAT Y.arq

  depois pra imprimir o arquivo X.nnn vc chama o mesmo .BAT com :

  CMD.EXE /C \caminho\IMPRIME.BAT X.nnn

  e assim por diante, okdoc ???

   []s

 Chiappa


  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-16 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Opa, blz ? Então, vamos por partes, bem ponto a ponto :

 a. SE vc confirmar que Realmente o usuário que roda o RDBMS é Realmente um 
usuário LOCAL (o que eu tenho dúvidas, principalmente quando vc disse que o 
Oracle criou um usuário local - o default REALMENTE não é nada disso, mas 
enfim), fica ** difícil ** a gente engolir que o WinAdmin não conseguiu fazer 
esse usuário local ter privilégio de logar - como eu disse, em condições 
normais é só acionar o applet de admin local, e em Usuários desmarcar a 
propriedade de usuário desabilitado E confirmar que o carinha está nos Grupos 
de usuários... Se o sujeito não sabe confirmar nem isso, pára tudo e Chama o 
Síndico : absolutamente NÂO DÁ pra confiar num sysadmin que nem pra isso 
serve
 
 ==  CASO vc obtenha a confirmação que o usuário não é um usuário local 
aberto (ie, é um usuário INTERNO do Windows, por exemplo, OU de repente é um 
usuário de domínio que está num Grupo que por regra não permite logon, só serve 
para executar apps), OU se descobrir que há uma Customização que impede o logon 
(digamos, uma Policy de rede ou local), aí SIM vc vai explorar as demais 
opções...
 
 b. confirmado que não conseguiu logar mesmo E que não é uma simples questão de 
alterar propriedades do usuário, antes de discutirmos nos itens abaixo as 
opções de logar com pribs de outro usuário, RECOMENDO que vc teste as Outras 
opções indicadas durante a thread, que relembrando foram :
 
   = opção de acessar a tal impressora via rede, enviando pacotes de rede via 
packages de rede presentes no RDBMS e acessíveis ao PL/SQL
   
   = ao invés de não ter password para o compartilhamento, ter uma password 
fixa que não muda
   
   = acessar via java diretamente a impressora de rede, o Java tem comandos 
mais direcionados a isso
   
 c.  usando o RUNAS : realmente, a utilização normal é mesmo se logar como o 
usuário que deverá executar o processo e rodar  RUNAS passando como argumento o 
usuário detentor dos privilégios a serem incorporados e INterativamente, só na 
primeira vez, informar a senha... Neste cenário de que vc realmente não poder 
logar como o usuário dono do RDBMS Oracle, embora eu não tenha certeza 100%, 
sei que a senha fica armazenada no Credential Manager do Windows - ** acredito 
** (não é uma Certeza, é uma Sugestão a testar - espero que isso tenha ficado 
Claro) que seja possível vc  exportar as credenciais para o usuário que roda o 
RDBMS, mesmo ele não podendo logar...
 
 d. se não funfar o RUNAS, aí a melhor opção é vc usar uma opção que permita 
indicar usuário detentor dos privilégios e senha : isso NECESSARIAMENTE implica 
que vc VAI ter que instalar um software extra (rigorosamente NÂO EXISTE um 
sudo nativo e não-interativo no Windows) , irei recomendar aqui algumas 
opções da própria Microsoft...   Uma delas é o ShellRunAs , cfrme 
https://technet.microsoft.com/en-us/sysinternals/cc300361.aspx , e a outra é o 
PSexec em https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx : esta 
última faz parte do pacote SysInternals, que originalmente foi criado pelo 
expert Windows Mark Russinovich e depois foi adquirido pela Microsoft, o que de 
certo modo o 'oficializou' como parte do Windows, ainda que uma parte 
não-default...
 
 
 == Com alguma das opções acima eu CREIO que vc vai ser capaz de testar se 
Realmente é questão de privilégios, o que a gente ** acha ** que é, mas ninguém 
pode te Afirmar com 100% de certeza...

  []s
  
Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-14 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Chiappa, entendi parcialmente, mas acho que vc não entendeu o que eu quis
dizer!

O que eu quis dizer no meu e-mail anterior foi o seguinte, vou
exemplificar, vamos supor que eu tenha:

oracle - usuario owner do RDBMS
print_user - usuario criado para rodar o comando de impressao (com senha
que nunca vai mudar) e com permissões necessárias para acessar as
impressoras compartilhadas na rede
milton - meu usuario de rede

A minha intenção era:
 - dentro do meu PL/SQL eu chamaria o runas, passando o usuario e senha do
usuario print_user, para executar o .BAT - ok
 - ao fazer isso, a partir do usuario oracle eu executo o runas pra rodar
o comando como se fosse o print_user - ok
 - se eu executar uma vez manualmente, eu escreveria a senha de forma
interativa e partir das seguintes não precisaria mais - ok
 - aí vem minha dúvida: para executar essa primeira vez, eu não teria que
estar LOGADO com o usuario oracle para executar o comando runas passado o
print_user/senha? isso eu não consigo fazer, pois o windows não me deixa
logar como oracle! Se eu executar o runas logado como milton, passando
print_user/senha, e depois tentar executar via PL/SQL (ou seja, via usuario
oracle), continua valendo a senha qe ficou gravada para login no runas? ou
só fica valendo pra eu continuar executando como milton?






Att,




Em 13 de março de 2015 18:17, jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Veja bem :  a idéia NÃO É (repito,  Não È  ) vc passar pro RUNAS
 esse usuário dono do RDBMS com o qual vc não consegue logar, mas SIM ter um
 usuário Windows local (chamado JOAOZINHO, ou outro nome qualquer) que SEJA
 capaz de logar, usuário esse previamente criado e permissionado E que não
 mude a senha nunca, aí apenas uma vez vc ou alguém no cliente executa
 manualmente o .BAT informando a senha desse usuário e cabou : nas próximas
 vezes que esse .BAT for executado pela rotina java que chama executáveis ,
 a senha JÁ VAI estar armazenada, ao que entendo ele NÂO VAI pedir de novo,
 okdoc ?? É isso ... ÓBVIO que se o usuário sob o qual o RDBMS roda não é um
 usuário local com privilpégio de logon (o que vc NÂO nos confirmou ainda,
 by the way!!! veja lá !!) não tem como vc logar com ele pra executar a
 primeira vez...

  E uma obs importante : ao que entendo, quando o usuário quer imprimir um
 arquivo Y, o Sistema cria um .BAT assim :

  copy /b Y.arq ipdaimpressora

  depois, se o usuário quer imprimir um arquivo X.nnn , ele cria um OUTRO
 bat com  :

  copy /b X.nnn ipdaimpressora

  assim por diante, e por isso como o .BAT muda a cada execução vc não
 teria como executar manualmente a primeira vez Coisas como ter um outro
 .BAT fixo chamando o segundo .BAT de impressão , que seria recriado a cada
 vez com o novo conteúdo mas MANTENDO sempre o mesmo nome, como indicado por
 outro colega, são  SIM possíveis mas imho desnecessárias : isso de criar um
 .BAT novo a cada vez com uma única diferença NÂO FAZ o menor sentido, por
 que vc não tem um único .BAT fixo que aceita o nome do arquivo como
 argumento, tipo :

  -- este .BAT único se chama IMPRIME.BAT
  copy /b %1 ipdaimpressora

  e aí para imprimir o arquivo Y.arq vc chama o .BAT com :

  CMD.EXE /C \caminho\IMPRIME.BAT Y.arq

  depois pra imprimir o arquivo X.nnn vc chama o mesmo .BAT com :

  CMD.EXE /C \caminho\IMPRIME.BAT X.nnn

  e assim por diante, okdoc ???

   []s

 Chiappa
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Grande Emerson! Muito obrigado pela ajuda, eu tava usando exatamente o
CooperaTI aqui pra me ajudar.

Estou agora mesmo usando o runas pra testar...
Criamos um usuário no AD específico para executar esse comando.

Agora tenho um probleminha novo... rs... no runas eu passo o user que eu
desejo, porém eu não consigo passar a senha do mesmo próprio comando, isso
é possível?

De modo interativo tudo bem, funcionou, dei o comando, ele pediu a senha,
digitei a senha e funcionou... mas pela aplicação eu preciso passar a senha
sem pedir
para o usuário digitar, obviamente, é possível fazer isso? como faço?

Meu comando é esse:

c:\wyms_printrunas /savecred /user:i9_print@laquila i9Print.bat
Attempting to start i9Print.bat as user i9_print@laquila ...
Enter the password for i9_print@laquila:
Attempting to start i9Print.bat as user i9_print@laquila ...

Como podem ver acima, o comando funcionou (não retornou erro e imprimiu a
etiqueta), mas tive que passar a senha de modo interativo.
Tem como eu passar a senha direto no comando?




Att,




Em 13 de março de 2015 14:54, Emerson dos Santos Gaudêncio
emerson.fen...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br
escreveu:



 Boa Tarde Milton,

 Existe uma opção no windows de executar comandos com outras credencias de
 acesso, chamada runas, segue abaixo link de como utilizar isso:


 http://www.cooperati.com.br/2013/03/01/executando-programas-com-credenciais-de-administrador/


 http://projetoseti.com.br/executar-programas-atraves-do-comando-runas-savecred/


 https://social.technet.microsoft.com/Forums/windows/pt-BR/3c1d0880-e170-40a0-b217-0757e0685064/como-executar-um-programa-com-permisses-administrativas?forum=winxppt

 Bom, podendo utilizar outro usuário no caso o usuário que vc está
 utilizando para executar a chamado com o runas através do cmd, seria
 possível amenizar essa situação, com este paliativo.

 Att,
 Emerson

 Em 13 de março de 2015 13:37, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Opa, então : como eu falei antes, se o roda sob um account x e vc tá
 logado sob um account y, ** obviamente ** vc não está testando Coisa Alguma
 quando, logado no Windows como y, executa o script .BAT e obtém sucesso,
 yep  Sem isso é Claro que vc não vai conseguir testar adequadamente,
 até coisas básicas como um ping pro IP da impressora TEM que serem feitas
 num prompt de comando logado com o tal usuário...   E é claro, enquanto vc
 não conseguir logar como esse usuário para poder testar os acessos dele, **
 ainda ** é Plenamente Possível que o que esteja pegando aí pra vc é mesmo a
 questão de PRIVILÉGIOS concedidos ao account Windows que executa o RDBMS,
 pois é com esse account que o java e/ou qualquer binário do RDBMS é
 executado por sua vez, ALTAS chances de que realmente simplesmente o tal
 account não tenha acesso ao IP/serviço da impressora em questão...

 = O que vc deve fazer aí é, eu acho :

 1. CONFIRMAR de uma vez por todas se REALMENTE é mesmo um usuário local
 nominado : apesar do que o tal técnico te disse, eu acho BEM difícil que
 seja isso, pois o default da instalação do RDBMS é usar a conta de sistema
 local (Local System Account) , e essa conta (que *** não *** é criada pelo
 instalador nem pelo RDBMS) aí sim realmente é uma conta Windows interna,
 absolutamente não-privilegiada, incapaz de conectar e/ou de abrir sessão
 interativa... Para vc confirmar isso é fácil : conectado como um usuário
 administrador nesse servidor, execute o servlet de serviços (services.msc)
 e veja na aba de logon do serviço OracleServicennn como que ele loga, e
 também consulte o servlet de administração do computador local (normalmente
 se chama compmgmt.msc mas esse nome pode variar de acordo com versão/edição
 do Windows, veja lá) e aí abra a seção de usuário Locais, e veja o que vc
 vai ver...
   Se o cara não sabe nem fazer isso, peça que alguém habilitado seja
 chamado, plz...

 2. SE for identificado que realmente o RDBMS tá rodando com account
 interno/do sistema, OU então com usuário não-local, até dá pra alterar isso
 criando-se um usuário local e o incluindo no grupo de DBAs (via servlet de
 administração local, ainda) e alterando na aba de LOGON dos serviços
 relacionados ao RDBMS para usar esse novo usuário, mas isso IMPLICA em
 algum risco operacional E em shutdown e restart do RDBMS, nem sempre isso é
 possível/aceitável... SE for identificado que é DE VERDADE um account local
 do Windows mesmo, desde que não hava DIRETIVAS DE REDE/policies proibindo
 para que um usuário local possa se logar basta que ele esteja membro de um
 Grupo de usuário não de sistema, como o próprio grupo usuários...

 3. Validar as outras opções de acesso á impressora de rede : na msg
 anterior eu dei um link de exemplo com o PL/SQL acessando o serviço de
 impressão via rede através das packages de rede disponíveis no RDBMS
 inclusive para o PL/SQL, o Angelo sugeriu que estar compartilhado sem
 usuário senha como é hoje, talvez se 

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Então Emerson, o problema é que não tem como eu digitar essa senha na
primeira vez... rs
Eu precisaria enviar a senha pelo script!

Eu não vou executar o comando manualmente... o sistema é que vai chamar o
script, por isso não tem como eu digitar a senha!




Att,




Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Olá Milton,

 No segundo link que o Emerson passou, abaixo do ultimo slide tá explicando
 que pede a senha somente uma vez.

 Então vc roda uma vez no modo interativo, informa a senha e depois o mesmo
 script não pede mais a senha.

 Em tempo: runas é acrônimo de RUN AS.


 Ederson Elias
 DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
  Labor improbus omnia vincit
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico ederson200...@yahoo.com.br [oracle_br]
Olá Milton,

No segundo link que o Emerson passou, abaixo do ultimo slide tá explicando que 
pede a senha somente uma vez.

Então vc roda uma vez no modo interativo, informa a senha e depois o mesmo 
script não pede mais a senha.

Em tempo: runas é acrônimo de RUN AS.


Ederson Elias 
DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
 Labor improbus omnia vincit

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Opa, então : como eu falei antes, se o roda sob um account x e vc tá logado sob 
um account y, ** obviamente ** vc não está testando Coisa Alguma quando, logado 
no Windows como y, executa o script .BAT e obtém sucesso, yep  Sem isso é 
Claro que vc não vai conseguir testar adequadamente, até coisas básicas como um 
ping pro IP da impressora TEM que serem feitas num prompt de comando logado com 
o tal usuário...   E é claro, enquanto vc não conseguir logar como esse usuário 
para poder testar os acessos dele, ** ainda ** é Plenamente Possível que o que 
esteja pegando aí pra vc é mesmo a questão de PRIVILÉGIOS concedidos ao account 
Windows que executa o RDBMS, pois é com esse account que o java e/ou qualquer 
binário do RDBMS é executado por sua vez, ALTAS chances de que realmente 
simplesmente o tal account não tenha acesso ao IP/serviço da impressora em 
questão...

= O que vc deve fazer aí é, eu acho :

1. CONFIRMAR de uma vez por todas se REALMENTE é mesmo um usuário local 
nominado : apesar do que o tal técnico te disse, eu acho BEM difícil que seja 
isso, pois o default da instalação do RDBMS é usar a conta de sistema local 
(Local System Account) , e essa conta (que *** não *** é criada pelo instalador 
nem pelo RDBMS) aí sim realmente é uma conta Windows interna, absolutamente 
não-privilegiada, incapaz de conectar e/ou de abrir sessão interativa... Para 
vc confirmar isso é fácil : conectado como um usuário administrador nesse 
servidor, execute o servlet de serviços (services.msc) e veja na aba de logon 
do serviço OracleServicennn como que ele loga, e também consulte o servlet de 
administração do computador local (normalmente se chama compmgmt.msc mas esse 
nome pode variar de acordo com versão/edição do Windows, veja lá) e aí abra a 
seção de usuário Locais, e veja o que vc vai ver...
  Se o cara não sabe nem fazer isso, peça que alguém habilitado seja chamado, 
plz...

2. SE for identificado que realmente o RDBMS tá rodando com account interno/do 
sistema, OU então com usuário não-local, até dá pra alterar isso criando-se um 
usuário local e o incluindo no grupo de DBAs (via servlet de administração 
local, ainda) e alterando na aba de LOGON dos serviços relacionados ao RDBMS 
para usar esse novo usuário, mas isso IMPLICA em algum risco operacional E em 
shutdown e restart do RDBMS, nem sempre isso é possível/aceitável... SE for 
identificado que é DE VERDADE um account local do Windows mesmo, desde que não 
hava DIRETIVAS DE REDE/policies proibindo para que um usuário local possa se 
logar basta que ele esteja membro de um Grupo de usuário não de sistema, como o 
próprio grupo usuários... 

3. Validar as outras opções de acesso á impressora de rede : na msg anterior eu 
dei um link de exemplo com o PL/SQL acessando o serviço de impressão via rede 
através das packages de rede disponíveis no RDBMS inclusive para o PL/SQL, o 
Angelo sugeriu que estar compartilhado sem usuário senha como é hoje, talvez se 
possa compartilhar o recurso da impressora com um usuário/senha específico que 
nunca mude Ou ainda, para tentar eliminar a questão de privilégios, talvez 
vc possa testar a possibilidade de rodar no .BAT o tal comando de COPY com o 
RUNAS, utilitário nativo do Windows que permite se executar algo com um account 
diferente...

 Não vou poder te dar um exemplo concreto de nenhuma dessas opções já que não 
tenho impressora de rede sob Windows em nenhum dos ambientes a que atualmente 
tenho acesso, mas tente aí...
 
  []s
  
Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
Boa Tarde Milton,

Existe uma opção no windows de executar comandos com outras credencias de
acesso, chamada runas, segue abaixo link de como utilizar isso:

http://www.cooperati.com.br/2013/03/01/executando-programas-com-credenciais-de-administrador/

http://projetoseti.com.br/executar-programas-atraves-do-comando-runas-savecred/

https://social.technet.microsoft.com/Forums/windows/pt-BR/3c1d0880-e170-40a0-b217-0757e0685064/como-executar-um-programa-com-permisses-administrativas?forum=winxppt

Bom, podendo utilizar outro usuário no caso o usuário que vc está
utilizando para executar a chamado com o runas através do cmd, seria
possível amenizar essa situação, com este paliativo.

Att,
Emerson

Em 13 de março de 2015 13:37, jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Opa, então : como eu falei antes, se o roda sob um account x e vc tá
 logado sob um account y, ** obviamente ** vc não está testando Coisa Alguma
 quando, logado no Windows como y, executa o script .BAT e obtém sucesso,
 yep  Sem isso é Claro que vc não vai conseguir testar adequadamente,
 até coisas básicas como um ping pro IP da impressora TEM que serem feitas
 num prompt de comando logado com o tal usuário...   E é claro, enquanto vc
 não conseguir logar como esse usuário para poder testar os acessos dele, **
 ainda ** é Plenamente Possível que o que esteja pegando aí pra vc é mesmo a
 questão de PRIVILÉGIOS concedidos ao account Windows que executa o RDBMS,
 pois é com esse account que o java e/ou qualquer binário do RDBMS é
 executado por sua vez, ALTAS chances de que realmente simplesmente o tal
 account não tenha acesso ao IP/serviço da impressora em questão...

 = O que vc deve fazer aí é, eu acho :

 1. CONFIRMAR de uma vez por todas se REALMENTE é mesmo um usuário local
 nominado : apesar do que o tal técnico te disse, eu acho BEM difícil que
 seja isso, pois o default da instalação do RDBMS é usar a conta de sistema
 local (Local System Account) , e essa conta (que *** não *** é criada pelo
 instalador nem pelo RDBMS) aí sim realmente é uma conta Windows interna,
 absolutamente não-privilegiada, incapaz de conectar e/ou de abrir sessão
 interativa... Para vc confirmar isso é fácil : conectado como um usuário
 administrador nesse servidor, execute o servlet de serviços (services.msc)
 e veja na aba de logon do serviço OracleServicennn como que ele loga, e
 também consulte o servlet de administração do computador local (normalmente
 se chama compmgmt.msc mas esse nome pode variar de acordo com versão/edição
 do Windows, veja lá) e aí abra a seção de usuário Locais, e veja o que vc
 vai ver...
   Se o cara não sabe nem fazer isso, peça que alguém habilitado seja
 chamado, plz...

 2. SE for identificado que realmente o RDBMS tá rodando com account
 interno/do sistema, OU então com usuário não-local, até dá pra alterar isso
 criando-se um usuário local e o incluindo no grupo de DBAs (via servlet de
 administração local, ainda) e alterando na aba de LOGON dos serviços
 relacionados ao RDBMS para usar esse novo usuário, mas isso IMPLICA em
 algum risco operacional E em shutdown e restart do RDBMS, nem sempre isso é
 possível/aceitável... SE for identificado que é DE VERDADE um account local
 do Windows mesmo, desde que não hava DIRETIVAS DE REDE/policies proibindo
 para que um usuário local possa se logar basta que ele esteja membro de um
 Grupo de usuário não de sistema, como o próprio grupo usuários...

 3. Validar as outras opções de acesso á impressora de rede : na msg
 anterior eu dei um link de exemplo com o PL/SQL acessando o serviço de
 impressão via rede através das packages de rede disponíveis no RDBMS
 inclusive para o PL/SQL, o Angelo sugeriu que estar compartilhado sem
 usuário senha como é hoje, talvez se possa compartilhar o recurso da
 impressora com um usuário/senha específico que nunca mude Ou ainda,
 para tentar eliminar a questão de privilégios, talvez vc possa testar a
 possibilidade de rodar no .BAT o tal comando de COPY com o RUNAS,
 utilitário nativo do Windows que permite se executar algo com um account
 diferente...

  Não vou poder te dar um exemplo concreto de nenhuma dessas opções já que
 não tenho impressora de rede sob Windows em nenhum dos ambientes a que
 atualmente tenho acesso, mas tente aí...

   []s

 Chiappa
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Porque nao cria um arquivo *.bat chamando esse comando runas ?  bat
chamando o segundo bat, ta quase virando gambiarra, mas...


c:\wyms_printrunas /savecred /user:i9_print@laquila i9Print.bat
Attempting to start i9Print.bat as user i9_print@laquila ...
Enter the password for i9_print@laquila:
Attempting to start i9Print.bat as user i9_print@laquila ...



2015-03-13 15:37 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Grande Emerson! Muito obrigado pela ajuda, eu tava usando exatamente o
 CooperaTI aqui pra me ajudar.

 Estou agora mesmo usando o runas pra testar...
 Criamos um usuário no AD específico para executar esse comando.

 Agora tenho um probleminha novo... rs... no runas eu passo o user que eu
 desejo, porém eu não consigo passar a senha do mesmo próprio comando, isso
 é possível?

 De modo interativo tudo bem, funcionou, dei o comando, ele pediu a senha,
 digitei a senha e funcionou... mas pela aplicação eu preciso passar a senha
 sem pedir
 para o usuário digitar, obviamente, é possível fazer isso? como faço?

 Meu comando é esse:

 c:\wyms_printrunas /savecred /user:i9_print@laquila i9Print.bat
 Attempting to start i9Print.bat as user i9_print@laquila ...
 Enter the password for i9_print@laquila:
 Attempting to start i9Print.bat as user i9_print@laquila ...

 Como podem ver acima, o comando funcionou (não retornou erro e imprimiu a
 etiqueta), mas tive que passar a senha de modo interativo.
 Tem como eu passar a senha direto no comando?




 Att,




 Em 13 de março de 2015 14:54, Emerson dos Santos Gaudêncio
 emerson.fen...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br
 escreveu:



 Boa Tarde Milton,

 Existe uma opção no windows de executar comandos com outras credencias de
 acesso, chamada runas, segue abaixo link de como utilizar isso:


 http://www.cooperati.com.br/2013/03/01/executando-programas-com-credenciais-de-administrador/


 http://projetoseti.com.br/executar-programas-atraves-do-comando-runas-savecred/


 https://social.technet.microsoft.com/Forums/windows/pt-BR/3c1d0880-e170-40a0-b217-0757e0685064/como-executar-um-programa-com-permisses-administrativas?forum=winxppt

 Bom, podendo utilizar outro usuário no caso o usuário que vc está
 utilizando para executar a chamado com o runas através do cmd, seria
 possível amenizar essa situação, com este paliativo.

 Att,
 Emerson

 Em 13 de março de 2015 13:37, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Opa, então : como eu falei antes, se o roda sob um account x e vc tá
 logado sob um account y, ** obviamente ** vc não está testando Coisa Alguma
 quando, logado no Windows como y, executa o script .BAT e obtém sucesso,
 yep  Sem isso é Claro que vc não vai conseguir testar adequadamente,
 até coisas básicas como um ping pro IP da impressora TEM que serem feitas
 num prompt de comando logado com o tal usuário...   E é claro, enquanto vc
 não conseguir logar como esse usuário para poder testar os acessos dele, **
 ainda ** é Plenamente Possível que o que esteja pegando aí pra vc é mesmo a
 questão de PRIVILÉGIOS concedidos ao account Windows que executa o RDBMS,
 pois é com esse account que o java e/ou qualquer binário do RDBMS é
 executado por sua vez, ALTAS chances de que realmente simplesmente o tal
 account não tenha acesso ao IP/serviço da impressora em questão...

 = O que vc deve fazer aí é, eu acho :

 1. CONFIRMAR de uma vez por todas se REALMENTE é mesmo um usuário local
 nominado : apesar do que o tal técnico te disse, eu acho BEM difícil que
 seja isso, pois o default da instalação do RDBMS é usar a conta de sistema
 local (Local System Account) , e essa conta (que *** não *** é criada pelo
 instalador nem pelo RDBMS) aí sim realmente é uma conta Windows interna,
 absolutamente não-privilegiada, incapaz de conectar e/ou de abrir sessão
 interativa... Para vc confirmar isso é fácil : conectado como um usuário
 administrador nesse servidor, execute o servlet de serviços (services.msc)
 e veja na aba de logon do serviço OracleServicennn como que ele loga, e
 também consulte o servlet de administração do computador local (normalmente
 se chama compmgmt.msc mas esse nome pode variar de acordo com versão/edição
 do Windows, veja lá) e aí abra a seção de usuário Locais, e veja o que vc
 vai ver...
   Se o cara não sabe nem fazer isso, peça que alguém habilitado seja
 chamado, plz...

 2. SE for identificado que realmente o RDBMS tá rodando com account
 interno/do sistema, OU então com usuário não-local, até dá pra alterar isso
 criando-se um usuário local e o incluindo no grupo de DBAs (via servlet de
 administração local, ainda) e alterando na aba de LOGON dos serviços
 relacionados ao RDBMS para usar esse novo usuário, mas isso IMPLICA em
 algum risco operacional E em shutdown e restart do RDBMS, nem sempre isso é
 possível/aceitável... SE for identificado que é DE VERDADE um account local
 do Windows mesmo, desde que não 

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Pelo agendador não pode ser... os usuário imprimem no ato.
Apertou um botão no sistema, sai a etiqueta na impressora.

Até porque o arquivo .bat é escrito em tempo de execução, por isso teria
que fazer uma alteração muito grande no sistema pra funcionar dessa maneira!



Att,




Em 13 de março de 2015 16:41, angelo angelolis...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Sabe o agendador de tarefas do windows ?

 Faz exatamente isso e ainda salva a senha da conta para fazer a
 execução. (pronto, agora vira gambiarra...)

 Que que eu ia propor: criar uma tarefa e agendar a execucao, do bat a
 partir do taskscheduler

 Haveria um agendamento da frequencia de execucao desse bat, mas mandaria
 alguma coisa pra impressora, caso tenha.
 Depois que imprime faz o que? apaga o arquivo ? senao ia mandar impressao
 toda hora da mesma etiqueta



 2015-03-13 16:34 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Exatamente Angelo, eu já tinha testado essa idéia, ele não deixa



 Att,




 Em 13 de março de 2015 16:32, angelo angelolis...@gmail.com [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Ih, acabei de comentar.. minha sugestao vai morrer na praia também...
 nao me liguei que o runas era interativo

 Entao precisa arranjar um aplicativo do tipo  Runas mas que rode em
 silent mode e que passe a senha junto. Ai iria matar a charada...



 2015-03-13 16:29 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Então Emerson, o problema é que não tem como eu digitar essa senha na
 primeira vez... rs
 Eu precisaria enviar a senha pelo script!

 Eu não vou executar o comando manualmente... o sistema é que vai chamar
 o script, por isso não tem como eu digitar a senha!




 Att,




 Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Olá Milton,

 No segundo link que o Emerson passou, abaixo do ultimo slide tá
 explicando que pede a senha somente uma vez.

 Então vc roda uma vez no modo interativo, informa a senha e depois o
 mesmo script não pede mais a senha.

 Em tempo: runas é acrônimo de RUN AS.


 Ederson Elias
 DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
  Labor improbus omnia vincit





  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Emerson: ótimo, muito obrigado, vou pedir pra eles instalarem pra testar!
Provavelmente agora só na segunda-feira... rs...


Chiappa: o problema é que eu não consigo rodar a primeira vez!
Eu teria que logar com o usuario oracle para executar o runas uma vez e
digitar as senha...  e nao consigo logar com ele.



Att,




Em 13 de março de 2015 17:36, jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Opa : pmfji, mas com o /SAVECRED, ele só pede a senha UMA ÚNICA VEZ e a
 armazena : execute novamente o .BAt que vc vai ver que ele NÂO VAI pedir
 mais, okdoc ? Entre os milzs sites de dicas Windows que documentam isso, 
 Network
 Administration: RunAs Command - For Dummies
 http://www.dummies.com/how-to/content/network-administration-runas-command.html
[image: image]
 http://www.dummies.com/how-to/content/network-administration-runas-command.html
  Network Administration: RunAs Command - For D...
 http://www.dummies.com/how-to/content/network-administration-runas-command.html
 The RunAs command is very useful in administering a Windows Server 2008
 network. The RunAs command lets you run a program from a command prompt...
   Visualizar em www.dummies...
 http://www.dummies.com/how-to/content/network-administration-runas-command.html
   Visualização pelo Yahoo


 pode ser um exemplo...

  []s

   Chiappa

 OBS : sei disso porque uso INTENSAMENTE essa feature no meu PC desktop de
 casa, para as crianças poderem executar com o usuário delas os jogos que
 exigem privilégios de administrador ...

  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Veja bem :  a idéia NÃO É (repito,  Não È  ) vc passar pro RUNAS esse 
usuário dono do RDBMS com o qual vc não consegue logar, mas SIM ter um usuário 
Windows local (chamado JOAOZINHO, ou outro nome qualquer) que SEJA capaz de 
logar, usuário esse previamente criado e permissionado E que não mude a senha 
nunca, aí apenas uma vez vc ou alguém no cliente executa manualmente o .BAT 
informando a senha desse usuário e cabou : nas próximas vezes que esse .BAT for 
executado pela rotina java que chama executáveis , a senha JÁ VAI estar 
armazenada, ao que entendo ele NÂO VAI pedir de novo, okdoc ?? É isso ... ÓBVIO 
que se o usuário sob o qual o RDBMS roda não é um usuário local com privilpégio 
de logon (o que vc NÂO nos confirmou ainda, by the way!!! veja lá !!) não tem 
como vc logar com ele pra executar a primeira vez...

 E uma obs importante : ao que entendo, quando o usuário quer imprimir um 
arquivo Y, o Sistema cria um .BAT assim :
 
 copy /b Y.arq ipdaimpressora 
 
 depois, se o usuário quer imprimir um arquivo X.nnn , ele cria um OUTRO bat 
com  :
 
 copy /b X.nnn ipdaimpressora
 
 assim por diante, e por isso como o .BAT muda a cada execução vc não teria 
como executar manualmente a primeira vez Coisas como ter um outro .BAT fixo 
chamando o segundo .BAT de impressão , que seria recriado a cada vez com o novo 
conteúdo mas MANTENDO sempre o mesmo nome, como indicado por outro colega, são  
SIM possíveis mas imho desnecessárias : isso de criar um .BAT novo a cada vez 
com uma única diferença NÂO FAZ o menor sentido, por que vc não tem um único 
.BAT fixo que aceita o nome do arquivo como argumento, tipo :
 
 -- este .BAT único se chama IMPRIME.BAT
 copy /b %1 ipdaimpressora
 
 e aí para imprimir o arquivo Y.arq vc chama o .BAT com :
 
 CMD.EXE /C \caminho\IMPRIME.BAT Y.arq
 
 depois pra imprimir o arquivo X.nnn vc chama o mesmo .BAT com :
 
 CMD.EXE /C \caminho\IMPRIME.BAT X.nnn
 
 e assim por diante, okdoc ???
 
  []s
  
Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
Milton,

No TechNet da Microsoft existe um software de terceiro que possibilita
utilizar o runas com usuário e senha.

Segue abaixo, modelo:

Você pode usar o comando RUNAS para abrir o internet explorer

runas /user:dominio\usuario c:\Arquivos de programas\Internet
Explorer\iexplore.exe

O problema do comando acima, é que ele pede a senha. Mas tem uma solução
para isso nos links abaixo:

*http://www.commandline.co.uk/sanur/* http://www.commandline.co.uk/sanur/

*http://www.commandline.co.uk/sanur_unsupported/index.html*
http://www.commandline.co.uk/sanur_unsupported/index.html

O segundo link explica como utilizar... mas vai ficar assim:

runas /user:domínio\usuário C:\Arquivos de programas\Internet
Explorer\iexplore.exe | sanur senha_do_usuario



Link para pesquisa:

https://social.technet.microsoft.com/Forums/pt-BR/7512f27a-a433-45d5-a707-ef3d0074b316/comando-runas?forum=winxppt


Att,

Emerson



Em 13 de março de 2015 15:43, 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu:



 Pelo agendador não pode ser... os usuário imprimem no ato.
 Apertou um botão no sistema, sai a etiqueta na impressora.

 Até porque o arquivo .bat é escrito em tempo de execução, por isso teria
 que fazer uma alteração muito grande no sistema pra funcionar dessa maneira!



 Att,




 Em 13 de março de 2015 16:41, angelo angelolis...@gmail.com [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Sabe o agendador de tarefas do windows ?

 Faz exatamente isso e ainda salva a senha da conta para fazer a
 execução. (pronto, agora vira gambiarra...)

 Que que eu ia propor: criar uma tarefa e agendar a execucao, do bat a
 partir do taskscheduler

 Haveria um agendamento da frequencia de execucao desse bat, mas mandaria
 alguma coisa pra impressora, caso tenha.
 Depois que imprime faz o que? apaga o arquivo ? senao ia mandar impressao
 toda hora da mesma etiqueta



 2015-03-13 16:34 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Exatamente Angelo, eu já tinha testado essa idéia, ele não deixa



 Att,




 Em 13 de março de 2015 16:32, angelo angelolis...@gmail.com [oracle_br]
 oracle_br@yahoogrupos.com.br escreveu:



 Ih, acabei de comentar.. minha sugestao vai morrer na praia também...
 nao me liguei que o runas era interativo

 Entao precisa arranjar um aplicativo do tipo  Runas mas que rode em
 silent mode e que passe a senha junto. Ai iria matar a charada...



 2015-03-13 16:29 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Então Emerson, o problema é que não tem como eu digitar essa senha na
 primeira vez... rs
 Eu precisaria enviar a senha pelo script!

 Eu não vou executar o comando manualmente... o sistema é que vai
 chamar o script, por isso não tem como eu digitar a senha!




 Att,




 Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Olá Milton,

 No segundo link que o Emerson passou, abaixo do ultimo slide tá
 explicando que pede a senha somente uma vez.

 Então vc roda uma vez no modo interativo, informa a senha e depois o
 mesmo script não pede mais a senha.

 Em tempo: runas é acrônimo de RUN AS.


 Ederson Elias
 DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
  Labor improbus omnia vincit






  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Ih, acabei de comentar.. minha sugestao vai morrer na praia também... nao
me liguei que o runas era interativo

Entao precisa arranjar um aplicativo do tipo  Runas mas que rode em silent
mode e que passe a senha junto. Ai iria matar a charada...



2015-03-13 16:29 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Então Emerson, o problema é que não tem como eu digitar essa senha na
 primeira vez... rs
 Eu precisaria enviar a senha pelo script!

 Eu não vou executar o comando manualmente... o sistema é que vai chamar o
 script, por isso não tem como eu digitar a senha!




 Att,




 Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Olá Milton,

 No segundo link que o Emerson passou, abaixo do ultimo slide tá
 explicando que pede a senha somente uma vez.

 Então vc roda uma vez no modo interativo, informa a senha e depois o
 mesmo script não pede mais a senha.

 Em tempo: runas é acrônimo de RUN AS.


 Ederson Elias
 DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
  Labor improbus omnia vincit


  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Sabe o agendador de tarefas do windows ?

Faz exatamente isso e ainda salva a senha da conta para fazer a
execução. (pronto, agora vira gambiarra...)

Que que eu ia propor: criar uma tarefa e agendar a execucao, do bat a
partir do taskscheduler

Haveria um agendamento da frequencia de execucao desse bat, mas mandaria
alguma coisa pra impressora, caso tenha.
Depois que imprime faz o que? apaga o arquivo ? senao ia mandar impressao
toda hora da mesma etiqueta



2015-03-13 16:34 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Exatamente Angelo, eu já tinha testado essa idéia, ele não deixa



 Att,




 Em 13 de março de 2015 16:32, angelo angelolis...@gmail.com [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Ih, acabei de comentar.. minha sugestao vai morrer na praia também... nao
 me liguei que o runas era interativo

 Entao precisa arranjar um aplicativo do tipo  Runas mas que rode em
 silent mode e que passe a senha junto. Ai iria matar a charada...



 2015-03-13 16:29 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Então Emerson, o problema é que não tem como eu digitar essa senha na
 primeira vez... rs
 Eu precisaria enviar a senha pelo script!

 Eu não vou executar o comando manualmente... o sistema é que vai chamar
 o script, por isso não tem como eu digitar a senha!




 Att,




 Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Olá Milton,

 No segundo link que o Emerson passou, abaixo do ultimo slide tá
 explicando que pede a senha somente uma vez.

 Então vc roda uma vez no modo interativo, informa a senha e depois o
 mesmo script não pede mais a senha.

 Em tempo: runas é acrônimo de RUN AS.


 Ederson Elias
 DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
  Labor improbus omnia vincit




  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Exatamente Angelo, eu já tinha testado essa idéia, ele não deixa



Att,




Em 13 de março de 2015 16:32, angelo angelolis...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Ih, acabei de comentar.. minha sugestao vai morrer na praia também... nao
 me liguei que o runas era interativo

 Entao precisa arranjar um aplicativo do tipo  Runas mas que rode em silent
 mode e que passe a senha junto. Ai iria matar a charada...



 2015-03-13 16:29 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Então Emerson, o problema é que não tem como eu digitar essa senha na
 primeira vez... rs
 Eu precisaria enviar a senha pelo script!

 Eu não vou executar o comando manualmente... o sistema é que vai chamar o
 script, por isso não tem como eu digitar a senha!




 Att,




 Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Olá Milton,

 No segundo link que o Emerson passou, abaixo do ultimo slide tá
 explicando que pede a senha somente uma vez.

 Então vc roda uma vez no modo interativo, informa a senha e depois o
 mesmo script não pede mais a senha.

 Em tempo: runas é acrônimo de RUN AS.


 Ederson Elias
 DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
  Labor improbus omnia vincit



  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Opa : pmfji, mas com o /SAVECRED, ele só pede a senha UMA ÚNICA VEZ e a 
armazena : execute novamente o .BAt que vc vai ver que ele NÂO VAI pedir mais, 
okdoc ? Entre os milzs sites de dicas Windows que documentam isso, Network 
Administration: RunAs Command - For Dummies 
http://www.dummies.com/how-to/content/network-administration-runas-command.html 
 
 
http://www.dummies.com/how-to/content/network-administration-runas-command.html 
 
 Network Administration: RunAs Command - For D... 
http://www.dummies.com/how-to/content/network-administration-runas-command.html 
The RunAs command is very useful in administering a Windows Server 2008 
network. The RunAs command lets you run a program from a command prompt...
 
 
 
 Visualizar em www.dummies... 
http://www.dummies.com/how-to/content/network-administration-runas-command.html 
 Visualização pelo Yahoo 
 
 
  
 pode ser um exemplo... 

 []s

  Chiappa

OBS : sei disso porque uso INTENSAMENTE essa feature no meu PC desktop de casa, 
para as crianças poderem executar com o usuário delas os jogos que exigem 
privilégios de administrador ...

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Provavelmente executar via Scheduler o executável externo ** não ** deve dar 
diferença alguma nas questões de privilégios, então não acho que isso será a 
resposta, mas fyi, saiba que é SIM plenamente possível executar um scheduler 
job imediatamente, basta não passar a data de início NEM o scheduler associado, 
+ ou - tipo :


dbms_scheduler.create_job(
 job_name='myjob',
 job_type='EXECUTABLE',
 job_action='C:\WINDOWS\SYSTEM32\CMD.EXE /C \path\nomedobat.bat',
 enabled=true);
 end;
 

== BASTARIA vc substituir as linhas que chamam a tal rotina java pelo comando 
acima, yep ??? 

[]s

  Chiappa
 


---Em oracle_br@yahoogrupos.com.br, miltonbas...@gmail.com escreveu:

 Pelo agendador não pode ser... os usuário imprimem no ato. Apertou um botão no 
sistema, sai a etiqueta na impressora.
 

 Até porque o arquivo .bat é escrito em tempo de execução, por isso teria que 
fazer uma alteração muito grande no sistema pra funcionar dessa maneira!
 

 


 
 Att,
 

 

 




 
 Em 13 de março de 2015 16:41, angelo angelolis...@gmail.com 
mailto:angelolis...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br 
mailto:oracle_br@yahoogrupos.com.br escreveu:
   
 Sabe o agendador de tarefas do windows ?  

 

 Faz exatamente isso e ainda salva a senha da conta para fazer a execução. 
(pronto, agora vira gambiarra...)
 

 Que que eu ia propor: criar uma tarefa e agendar a execucao, do bat a partir 
do taskscheduler
 

 Haveria um agendamento da frequencia de execucao desse bat, mas mandaria 
alguma coisa pra impressora, caso tenha.
 Depois que imprime faz o que? apaga o arquivo ? senao ia mandar impressao toda 
hora da mesma etiqueta
 

 

 

 2015-03-13 16:34 GMT-03:00 'Milton Bastos Henriquis Jr.' 
miltonbas...@gmail.com mailto:miltonbas...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br mailto:oracle_br@yahoogrupos.com.br: 
   
 Exatamente Angelo, eu já tinha testado essa idéia, ele não deixa 

 


 
 Att,
 

 

 




 
 Em 13 de março de 2015 16:32, angelo angelolis...@gmail.com 
mailto:angelolis...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br 
mailto:oracle_br@yahoogrupos.com.br escreveu:
   
 Ih, acabei de comentar.. minha sugestao vai morrer na praia também... nao me 
liguei que o runas era interativo 

 Entao precisa arranjar um aplicativo do tipo  Runas mas que rode em silent 
mode e que passe a senha junto. Ai iria matar a charada...

 

 




 
 2015-03-13 16:29 GMT-03:00 'Milton Bastos Henriquis Jr.' 
miltonbas...@gmail.com mailto:miltonbas...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br mailto:oracle_br@yahoogrupos.com.br:
   
 Então Emerson, o problema é que não tem como eu digitar essa senha na primeira 
vez... rs Eu precisaria enviar a senha pelo script!
 

 Eu não vou executar o comando manualmente... o sistema é que vai chamar o 
script, por isso não tem como eu digitar a senha!
 

 

 


 
 Att,
 

 

 




 
 Em 13 de março de 2015 16:26, ederson200...@yahoo.com.br 
mailto:ederson200...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br 
mailto:oracle_br@yahoogrupos.com.br escreveu:
   Olá Milton,

No segundo link que o Emerson passou, abaixo do ultimo slide tá explicando que 
pede a senha somente uma vez.

Então vc roda uma vez no modo interativo, informa a senha e depois o mesmo 
script não pede mais a senha.

Em tempo: runas é acrônimo de RUN AS.


Ederson Elias 
DBA Oracle - http://br.linkedin.com/pub/ederson-elias/24/8b/8b0 
http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
 Labor improbus omnia vincit
 
 
 
 




 
 
 
 
 




 
 
 
 
 




 
 
 
 
 







 
 
 
 
 






 


Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Verdade


*Milton*,  como ficou e ssa historia?  Conseguiu imprimir ?


Isso extrapola um pouco o BD, se tornou mais um problema de interface com o
SO.

No caso especificamente do windows: Se o servidor fosse membro de um
dominio (active directory), executando com uma determinada conta e essa
conta tambem configurada para acessar o share da impressora, estava tudo
resolvido, pq seria transparente

Agora, quando nao é membro, quando é um stand alone, o macete   é
colocar mesma conta e mesma senha nos dois lugares (servidor, e share da
impressora).. e nunca mais trocar a senha.

Mas como, ja foi comentado, o Oracle, nao imprime nada sozinho, depende de
biblioteca externa, vai por conta do aplicativo, nao faria muita diferenca
a conta que estivesse executando o processo. É questao mesmo de qual conta
tem permissao ao quê.



2015-03-12 12:42 GMT-03:00 jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br:



 Opa : eu tinha mandado msg antes mas pelo jeito minha internet deu xabu e
 não foi enviada... Os pontos que tinha colocado foram :

 - afaik não importa o método para execução externa (se java,
 dbms_scheduler, external procedure, não importa) via de regra a
 recomendação de indicar o processador de comandos se mantém, assim sugeri
 Testar a rotina passando a linha de chamada completa (ie,
 \pathdowindows\system32\cmd.exe /c \path\nomedoarquivo.bat)

 e

 - seria interessante que vc citasse EXATAMENTE o erro que recebe, E nos
 confirmasse se é impressora local ou de rede (já que acessos a recursos
 não-locais nem sempre é viável em PL/SQL sem extensões, o caso típico é
 I/O, por exemplo)

 === Como em outras msgs da thread vc acabou confirmando que é impressora
 remota, de rede, acaba sendo Crítica porém uma questão que eu não tinha
 pensado, que é o usuário Windows que executa o RDBMS : se for o usuário
 interno do sistema, é MUITO possível que esse cara não tenha privilégio
 externo algum, aí (obviamente) vc está logado no Windows com OUTRO usuário,
 e por isso consegue executar o .bat sem problemas...

 === Além da questão de privilégio do usuário Windows que roda o RDBMS (e
 em cujo account o shell script será executado), outras possibilidades
 Adicionais que vc pode explorar são :

  a. já que vc tem Java no database em questão, ao invés de o usar para
 executar comando externo vc pode imprimir diretamente pelo java : dá uma
 googlada por JAVA REMOTE PRINTER que vc acha diversos exemplos

  ou

  b. impressoras de rede normalmente rodam sob um serviço próprio, que pode
 ser muitas vezes acessado via rede :
 https://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:38012348052#5258287200346885163
 tem um exemplo

  ou

  c. vc disse que o seu sistema é desenvolvido em PL/SQL : como sabemos que
 o PL/SQL por si só NÃO TEM nenhum comando para criar
 telas/interfaces/frontend  para o usuário, com absoluta certeza OU vc está
 chamando as packages de extensão web presentes no RDBMS (seja diretamente
 seja via APEX, FormSpider, etc), OU vc toma o caminho contrário, ie, a
 partir de alguma linguagem/tool externa que vc usou pra criar o frontend vc
 chama as rotinas PL/SQL...
   Em qualquer desses casos vc tem possibilidades de escrever uma rotina
 específica de impressão, veja lã...

   []s

 Chiappa
  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Bom dia Angelo!

Desculpe a demora... esse servidor e a impresssora estão lá no cliente
(outro local físico) e meu acesso remoto é restrito.

Chiappa: a impressora está em outra máquina, compartilhada na rede, não é
local.

O responsável de TI lá do cliente está apanhando muito.

A questão é a seguinte: quando eu instalei o Oracle (Windows Server) a
própria instalação do Oracle criou um usuario 'oracle no Windows para
ficar como owner do DB.
Esse usuario oracle o cara não consegue logar com ele para fazer os testes.
Parece que ele já deu até permissão de administrador para esse usuario, mas
quando ele tenta logar no Windows como oracle ele não consegue.

Chiappa: sobre o erro que retorna, não tem mensagem de erro, retorna apenas
o numero 1 (0 = Sucesso; 1 = Erro).
Eu teria que rodar o comando via sistema operacional usando o usuario
oracle para ver qual é o erro, mas ainda não conseguimos logar dessa
maneira.
Sobre a aplicação, ela terá um front-end web sim, mas ainda nem está
instalado, está instalado somente o banco de dados. Faço os testes direto
via PL/SQL.

Assim que eu tiver novidades eu escrevo aqui!



Att,




Em 13 de março de 2015 10:05, angelo angelolis...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Verdade


 *Milton*,  como ficou e ssa historia?  Conseguiu imprimir ?


 Isso extrapola um pouco o BD, se tornou mais um problema de interface com
 o SO.

 No caso especificamente do windows: Se o servidor fosse membro de um
 dominio (active directory), executando com uma determinada conta e essa
 conta tambem configurada para acessar o share da impressora, estava tudo
 resolvido, pq seria transparente

 Agora, quando nao é membro, quando é um stand alone, o macete   é
 colocar mesma conta e mesma senha nos dois lugares (servidor, e share da
 impressora).. e nunca mais trocar a senha.

 Mas como, ja foi comentado, o Oracle, nao imprime nada sozinho, depende de
 biblioteca externa, vai por conta do aplicativo, nao faria muita diferenca
 a conta que estivesse executando o processo. É questao mesmo de qual conta
 tem permissao ao quê.



 2015-03-12 12:42 GMT-03:00 jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br:



 Opa : eu tinha mandado msg antes mas pelo jeito minha internet deu xabu e
 não foi enviada... Os pontos que tinha colocado foram :

 - afaik não importa o método para execução externa (se java,
 dbms_scheduler, external procedure, não importa) via de regra a
 recomendação de indicar o processador de comandos se mantém, assim sugeri
 Testar a rotina passando a linha de chamada completa (ie,
 \pathdowindows\system32\cmd.exe /c \path\nomedoarquivo.bat)

 e

 - seria interessante que vc citasse EXATAMENTE o erro que recebe, E nos
 confirmasse se é impressora local ou de rede (já que acessos a recursos
 não-locais nem sempre é viável em PL/SQL sem extensões, o caso típico é
 I/O, por exemplo)

 === Como em outras msgs da thread vc acabou confirmando que é impressora
 remota, de rede, acaba sendo Crítica porém uma questão que eu não tinha
 pensado, que é o usuário Windows que executa o RDBMS : se for o usuário
 interno do sistema, é MUITO possível que esse cara não tenha privilégio
 externo algum, aí (obviamente) vc está logado no Windows com OUTRO usuário,
 e por isso consegue executar o .bat sem problemas...

 === Além da questão de privilégio do usuário Windows que roda o RDBMS (e
 em cujo account o shell script será executado), outras possibilidades
 Adicionais que vc pode explorar são :

  a. já que vc tem Java no database em questão, ao invés de o usar para
 executar comando externo vc pode imprimir diretamente pelo java : dá uma
 googlada por JAVA REMOTE PRINTER que vc acha diversos exemplos

  ou

  b. impressoras de rede normalmente rodam sob um serviço próprio, que
 pode ser muitas vezes acessado via rede :
 https://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:38012348052#5258287200346885163
 tem um exemplo

  ou

  c. vc disse que o seu sistema é desenvolvido em PL/SQL : como sabemos
 que o PL/SQL por si só NÃO TEM nenhum comando para criar
 telas/interfaces/frontend  para o usuário, com absoluta certeza OU vc está
 chamando as packages de extensão web presentes no RDBMS (seja diretamente
 seja via APEX, FormSpider, etc), OU vc toma o caminho contrário, ie, a
 partir de alguma linguagem/tool externa que vc usou pra criar o frontend vc
 chama as rotinas PL/SQL...
   Em qualquer desses casos vc tem possibilidades de escrever uma rotina
 específica de impressão, veja lã...

   []s

 Chiappa


  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-13 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Boa tarde,

Milton

Sobre a surra do cara do TI, com a conta Oracle..  Se ele estiver fazendo o
acesso ao servidor,  por TS ( remote desktop) a conta precisa estar no
grupo do windows de acesso remoto... na hora da correria, pode estar
esquecendo de verificar esse detalhe. Se ele estiver na frente da maquina,
console, com a senha, deveria abrir, mesmo com acesso de usuario restrito.

Realmente, nao conseguir acessar o ambiente, dificulta um pouquinho, mas
daqui a pouco transpõe.

[]s


2015-03-13 12:45 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Bom dia Angelo!

 Desculpe a demora... esse servidor e a impresssora estão lá no cliente
 (outro local físico) e meu acesso remoto é restrito.

 Chiappa: a impressora está em outra máquina, compartilhada na rede, não é
 local.

 O responsável de TI lá do cliente está apanhando muito.

 A questão é a seguinte: quando eu instalei o Oracle (Windows Server) a
 própria instalação do Oracle criou um usuario 'oracle no Windows para
 ficar como owner do DB.
 Esse usuario oracle o cara não consegue logar com ele para fazer os testes.
 Parece que ele já deu até permissão de administrador para esse usuario,
 mas quando ele tenta logar no Windows como oracle ele não consegue.

 Chiappa: sobre o erro que retorna, não tem mensagem de erro, retorna
 apenas o numero 1 (0 = Sucesso; 1 = Erro).
 Eu teria que rodar o comando via sistema operacional usando o usuario
 oracle para ver qual é o erro, mas ainda não conseguimos logar dessa
 maneira.
 Sobre a aplicação, ela terá um front-end web sim, mas ainda nem está
 instalado, está instalado somente o banco de dados. Faço os testes direto
 via PL/SQL.

 Assim que eu tiver novidades eu escrevo aqui!



 Att,




 Em 13 de março de 2015 10:05, angelo angelolis...@gmail.com [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Verdade


 *Milton*,  como ficou e ssa historia?  Conseguiu imprimir ?


 Isso extrapola um pouco o BD, se tornou mais um problema de interface com
 o SO.

 No caso especificamente do windows: Se o servidor fosse membro de um
 dominio (active directory), executando com uma determinada conta e essa
 conta tambem configurada para acessar o share da impressora, estava tudo
 resolvido, pq seria transparente

 Agora, quando nao é membro, quando é um stand alone, o macete   é
 colocar mesma conta e mesma senha nos dois lugares (servidor, e share da
 impressora).. e nunca mais trocar a senha.

 Mas como, ja foi comentado, o Oracle, nao imprime nada sozinho, depende
 de biblioteca externa, vai por conta do aplicativo, nao faria muita
 diferenca a conta que estivesse executando o processo. É questao mesmo de
 qual conta tem permissao ao quê.



 2015-03-12 12:42 GMT-03:00 jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br:



 Opa : eu tinha mandado msg antes mas pelo jeito minha internet deu xabu
 e não foi enviada... Os pontos que tinha colocado foram :

 - afaik não importa o método para execução externa (se java,
 dbms_scheduler, external procedure, não importa) via de regra a
 recomendação de indicar o processador de comandos se mantém, assim sugeri
 Testar a rotina passando a linha de chamada completa (ie,
 \pathdowindows\system32\cmd.exe /c \path\nomedoarquivo.bat)

 e

 - seria interessante que vc citasse EXATAMENTE o erro que recebe, E nos
 confirmasse se é impressora local ou de rede (já que acessos a recursos
 não-locais nem sempre é viável em PL/SQL sem extensões, o caso típico é
 I/O, por exemplo)

 === Como em outras msgs da thread vc acabou confirmando que é
 impressora remota, de rede, acaba sendo Crítica porém uma questão que eu
 não tinha pensado, que é o usuário Windows que executa o RDBMS : se for o
 usuário interno do sistema, é MUITO possível que esse cara não tenha
 privilégio externo algum, aí (obviamente) vc está logado no Windows com
 OUTRO usuário, e por isso consegue executar o .bat sem problemas...

 === Além da questão de privilégio do usuário Windows que roda o RDBMS
 (e em cujo account o shell script será executado), outras possibilidades
 Adicionais que vc pode explorar são :

  a. já que vc tem Java no database em questão, ao invés de o usar para
 executar comando externo vc pode imprimir diretamente pelo java : dá uma
 googlada por JAVA REMOTE PRINTER que vc acha diversos exemplos

  ou

  b. impressoras de rede normalmente rodam sob um serviço próprio, que
 pode ser muitas vezes acessado via rede :
 https://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:38012348052#5258287200346885163
 tem um exemplo

  ou

  c. vc disse que o seu sistema é desenvolvido em PL/SQL : como sabemos
 que o PL/SQL por si só NÃO TEM nenhum comando para criar
 telas/interfaces/frontend  para o usuário, com absoluta certeza OU vc está
 chamando as packages de extensão web presentes no RDBMS (seja diretamente
 seja via APEX, FormSpider, etc), OU vc toma o caminho contrário, ie, a
 partir de alguma linguagem/tool 

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-12 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Opa : eu tinha mandado msg antes mas pelo jeito minha internet deu xabu e não 
foi enviada... Os pontos que tinha colocado foram :

- afaik não importa o método para execução externa (se java, dbms_scheduler, 
external procedure, não importa) via de regra a recomendação de indicar o 
processador de comandos se mantém, assim sugeri Testar a rotina passando a 
linha de chamada completa (ie, \pathdowindows\system32\cmd.exe /c 
\path\nomedoarquivo.bat)

e

- seria interessante que vc citasse EXATAMENTE o erro que recebe, E nos 
confirmasse se é impressora local ou de rede (já que acessos a recursos 
não-locais nem sempre é viável em PL/SQL sem extensões, o caso típico é I/O, 
por exemplo)

=== Como em outras msgs da thread vc acabou confirmando que é impressora 
remota, de rede, acaba sendo Crítica porém uma questão que eu não tinha 
pensado, que é o usuário Windows que executa o RDBMS : se for o usuário interno 
do sistema, é MUITO possível que esse cara não tenha privilégio externo algum, 
aí (obviamente) vc está logado no Windows com OUTRO usuário, e por isso 
consegue executar o .bat sem problemas... 

=== Além da questão de privilégio do usuário Windows que roda o RDBMS (e em 
cujo account o shell script será executado), outras possibilidades Adicionais 
que vc pode explorar são :

 a. já que vc tem Java no database em questão, ao invés de o usar para executar 
comando externo vc pode imprimir diretamente pelo java : dá uma googlada por 
JAVA REMOTE PRINTER que vc acha diversos exemplos
 
 ou
 
 b. impressoras de rede normalmente rodam sob um serviço próprio, que pode ser 
muitas vezes acessado via rede : 
https://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:38012348052#5258287200346885163
 tem um exemplo
 
 ou
 
 c. vc disse que o seu sistema é desenvolvido em PL/SQL : como sabemos que o 
PL/SQL por si só NÃO TEM nenhum comando para criar telas/interfaces/frontend  
para o usuário, com absoluta certeza OU vc está chamando as packages de 
extensão web presentes no RDBMS (seja diretamente seja via APEX, FormSpider, 
etc), OU vc toma o caminho contrário, ie, a partir de alguma linguagem/tool 
externa que vc usou pra criar o frontend vc chama as rotinas PL/SQL...
  Em qualquer desses casos vc tem possibilidades de escrever uma rotina 
específica de impressão, veja lã...
  
  []s
  
Chiappa

Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-11 Por tôpico angelo angelolis...@gmail.com [oracle_br]
E mais uma,


Se vc conseguir fazer esta linha:

* i := os_command.exec(comando_shell);*

Não sei se o DBMS_SCHEDULER tem essa funcionalidade, se tiver vai ser
batata.

Resumindo:
Executar no shell do windows com a mesma conta do usuario que acessa a
impressora, seu problema vai acabar.

Porque não convém mexer na conta onde o Oracle executa (provavelmente deve
ter sido instalado como network service, ou system, localsystem )

Essa select aqui poderia levar o login e senha junto, pra prever essas
situações.

 select prt_user_password, prt_path, prt_dir
into pass, path, dir
from printer
   where prt_printer = iNamePrinter;




2015-03-11 17:59 GMT-03:00 angelo angelolis...@gmail.com:

 Milton

 Vou te fazer uma pergunta, que talvez seja crucial pra matar essa
 charada.. Nem tem a ver com Oracle agora, vc vai entender porque:

 Você sabe qual usuario ( do windows ) o processo oracle está sendo
 executado ?

 Porque pergunto isso, porque quando vc passa a execução para o sistema
 operacional... o cara que vai rodar o comando para mandar a impressao
 executar, está executando sob um determinado usuario da maquina. Esse
 usuario pode ser tanto uma conta local ou uma conta do dominio.

 E como você está enviando a impressao para um share na rede, esse usuario
 tambem precisa ter permissao para acessar o mesmo.
 Por isso que quando vc testa no computador, funciona e na aplicacao não...
 eu desconfio que o problema esteja passando por ai


 Vou te dar um exemplo pratico:

 Na empresa, nós temos um sistema de WMS executando em um depósito. A
 impressao de etiqueta da mercadoria, com o codigo de barras e o mais, nao é
 enviada diretamente pelo Oracle mas pelo sistema e é exatamente dessa forma
 que vc comentou.. é impressora Zebra também, datamax.. é gerado um
 arquivinho com os comandos que a impressora zebra entende e copiando para o
 share imprime. Poderia ser assim também mas vai cair na questao da conta do
 computador.

 Essa conta que faz a impressao tem permissao de imprimir no
 compartilhamento
 No meu caso, nós combinamos com o operador logistico de criar o
 compartilhamento, amarrado a uma conta, com a mesma senha, para ficar igual
 ao windows onde roda o sistema.


 É uma peculiaridade de windows, isso.
 Verifica o processo do Oracle que esta em execucao a maquina (se vc tiver
 aceso a ela, veja qual conta está sendo executada)


 Eu to desconfiando fortemente que seu problema seja esse.




 2015-03-11 17:02 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Chiappa, executei manualmente:

 c:\windows\system32\cmd.exe /c c:\wyms_print\i9Print.bat

 Direto no DOS, ok, funcionou.
 Via PL/SQL, negativo, retornou erro.

 Abri o link que vc enviou, mas eu acho que são casos diferentes, pois ali
 é via DBMS_SCHEDULER, enquanto eu estou usando uma package específica para
 execução de comandos do sistema operacional.
 Já usei outras vezes e nunca precisar especificar o interpretador!



 Att,




 Em 11 de março de 2015 16:31, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Então : eu estou chutando, mas via de regra o script *** TEM *** que ser
 INTERPRETADO pelo Sistema Operacional, ele ** não É ** um executável de
 direito : assim sendo, vc tem que passar como argumento pra rotina que
 executa comando externo uma CHAMADA PARA O INTERPRETADOR, que no caso do
 Windows é o cmd.exe , veja (por exemplo) em
 https://community.oracle.com/message/2739501 que ele passa
 'c:\windows\system32\cmd.exe /c fullpath\nomedobat.bat' , e NÂO apenas o
 path\nomedo.bat, yes ???

   []s

 Chiappa


  





Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-11 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Então,

Sem senha, na verdade é guest, convidado.. por incrivel que pareça,
causa problemas também

Creio que dar permissao para o usuario oracle la no compartilhamento e
validar.

Pra fazer a prova dos 9, loga no windows com a conta local oracle e tenta
imprimir. Se conseguir imprimir, o oracle também tem que imprimir.


Provavelmente o WMS nao é do mesmo fornecedor, rss... porque o meu, roda no
IIS (site), no mesmo servidor oracle,  mas o processo do servidor web roda
com a conta que acessa a impressora

Mas é esse esquema mesmo. Da permissão na conta e no compartilhamento que
vai funcionar

Se a impressora estivesse ligada diretamente ao servidor era mais facil..
era só mandar um copy /b arquivo  prn   e tava resolvido.

Amanhã vc comenta o que conseguiu arrumar

[]s




2015-03-11 18:11 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Angelo, coincidentemente o meu sistema também é um WMS!

 E eu já desconfiava que o problema era exatamente esse - permissão de
 usuário do Windows.

 O usuario que está executando o Oracle se chama oracle mesmo.
 O meu usuário, que estou conectado, é outro, é um usuario milton.

 O usuario oracle realmente é local.
 A impressora é compartilhada sem senha para todos na rede.
 Será que é possível liberar acesso para esse usuario oracle?

 Vou ter que pedir isso amanha para a TI lá do cliente(estou em acesso
 remoto), pois já passou das 18:00 e ele já foi embora.

 Amanhã vou pedir isso pra ele via Skype e ver se tem solução.

 Muito obrigado, amanhã retorno aqui!





 Att,




 Em 11 de março de 2015 17:59, angelo angelolis...@gmail.com [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Milton

 Vou te fazer uma pergunta, que talvez seja crucial pra matar essa
 charada.. Nem tem a ver com Oracle agora, vc vai entender porque:

 Você sabe qual usuario ( do windows ) o processo oracle está sendo
 executado ?

 Porque pergunto isso, porque quando vc passa a execução para o sistema
 operacional... o cara que vai rodar o comando para mandar a impressao
 executar, está executando sob um determinado usuario da maquina. Esse
 usuario pode ser tanto uma conta local ou uma conta do dominio.

 E como você está enviando a impressao para um share na rede, esse usuario
 tambem precisa ter permissao para acessar o mesmo.
 Por isso que quando vc testa no computador, funciona e na aplicacao
 não... eu desconfio que o problema esteja passando por ai


 Vou te dar um exemplo pratico:

 Na empresa, nós temos um sistema de WMS executando em um depósito. A
 impressao de etiqueta da mercadoria, com o codigo de barras e o mais, nao é
 enviada diretamente pelo Oracle mas pelo sistema e é exatamente dessa forma
 que vc comentou.. é impressora Zebra também, datamax.. é gerado um
 arquivinho com os comandos que a impressora zebra entende e copiando para o
 share imprime. Poderia ser assim também mas vai cair na questao da conta do
 computador.

 Essa conta que faz a impressao tem permissao de imprimir no
 compartilhamento
 No meu caso, nós combinamos com o operador logistico de criar o
 compartilhamento, amarrado a uma conta, com a mesma senha, para ficar igual
 ao windows onde roda o sistema.


 É uma peculiaridade de windows, isso.
 Verifica o processo do Oracle que esta em execucao a maquina (se vc tiver
 aceso a ela, veja qual conta está sendo executada)


 Eu to desconfiando fortemente que seu problema seja esse.




 2015-03-11 17:02 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Chiappa, executei manualmente:

 c:\windows\system32\cmd.exe /c c:\wyms_print\i9Print.bat

 Direto no DOS, ok, funcionou.
 Via PL/SQL, negativo, retornou erro.

 Abri o link que vc enviou, mas eu acho que são casos diferentes, pois
 ali é via DBMS_SCHEDULER, enquanto eu estou usando uma package específica
 para execução de comandos do sistema operacional.
 Já usei outras vezes e nunca precisar especificar o interpretador!



 Att,




 Em 11 de março de 2015 16:31, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Então : eu estou chutando, mas via de regra o script *** TEM *** que
 ser INTERPRETADO pelo Sistema Operacional, ele ** não É ** um executável de
 direito : assim sendo, vc tem que passar como argumento pra rotina que
 executa comando externo uma CHAMADA PARA O INTERPRETADOR, que no caso do
 Windows é o cmd.exe , veja (por exemplo) em
 https://community.oracle.com/message/2739501 que ele passa
 'c:\windows\system32\cmd.exe /c fullpath\nomedobat.bat' , e NÂO apenas o
 path\nomedo.bat, yes ???

   []s

 Chiappa




  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-11 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Angelo, coincidentemente o meu sistema também é um WMS!

E eu já desconfiava que o problema era exatamente esse - permissão de
usuário do Windows.

O usuario que está executando o Oracle se chama oracle mesmo.
O meu usuário, que estou conectado, é outro, é um usuario milton.

O usuario oracle realmente é local.
A impressora é compartilhada sem senha para todos na rede.
Será que é possível liberar acesso para esse usuario oracle?

Vou ter que pedir isso amanha para a TI lá do cliente(estou em acesso
remoto), pois já passou das 18:00 e ele já foi embora.

Amanhã vou pedir isso pra ele via Skype e ver se tem solução.

Muito obrigado, amanhã retorno aqui!





Att,




Em 11 de março de 2015 17:59, angelo angelolis...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Milton

 Vou te fazer uma pergunta, que talvez seja crucial pra matar essa
 charada.. Nem tem a ver com Oracle agora, vc vai entender porque:

 Você sabe qual usuario ( do windows ) o processo oracle está sendo
 executado ?

 Porque pergunto isso, porque quando vc passa a execução para o sistema
 operacional... o cara que vai rodar o comando para mandar a impressao
 executar, está executando sob um determinado usuario da maquina. Esse
 usuario pode ser tanto uma conta local ou uma conta do dominio.

 E como você está enviando a impressao para um share na rede, esse usuario
 tambem precisa ter permissao para acessar o mesmo.
 Por isso que quando vc testa no computador, funciona e na aplicacao não...
 eu desconfio que o problema esteja passando por ai


 Vou te dar um exemplo pratico:

 Na empresa, nós temos um sistema de WMS executando em um depósito. A
 impressao de etiqueta da mercadoria, com o codigo de barras e o mais, nao é
 enviada diretamente pelo Oracle mas pelo sistema e é exatamente dessa forma
 que vc comentou.. é impressora Zebra também, datamax.. é gerado um
 arquivinho com os comandos que a impressora zebra entende e copiando para o
 share imprime. Poderia ser assim também mas vai cair na questao da conta do
 computador.

 Essa conta que faz a impressao tem permissao de imprimir no
 compartilhamento
 No meu caso, nós combinamos com o operador logistico de criar o
 compartilhamento, amarrado a uma conta, com a mesma senha, para ficar igual
 ao windows onde roda o sistema.


 É uma peculiaridade de windows, isso.
 Verifica o processo do Oracle que esta em execucao a maquina (se vc tiver
 aceso a ela, veja qual conta está sendo executada)


 Eu to desconfiando fortemente que seu problema seja esse.




 2015-03-11 17:02 GMT-03:00 'Milton Bastos Henriquis Jr.'
 miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Chiappa, executei manualmente:

 c:\windows\system32\cmd.exe /c c:\wyms_print\i9Print.bat

 Direto no DOS, ok, funcionou.
 Via PL/SQL, negativo, retornou erro.

 Abri o link que vc enviou, mas eu acho que são casos diferentes, pois ali
 é via DBMS_SCHEDULER, enquanto eu estou usando uma package específica para
 execução de comandos do sistema operacional.
 Já usei outras vezes e nunca precisar especificar o interpretador!



 Att,




 Em 11 de março de 2015 16:31, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Então : eu estou chutando, mas via de regra o script *** TEM *** que ser
 INTERPRETADO pelo Sistema Operacional, ele ** não É ** um executável de
 direito : assim sendo, vc tem que passar como argumento pra rotina que
 executa comando externo uma CHAMADA PARA O INTERPRETADOR, que no caso do
 Windows é o cmd.exe , veja (por exemplo) em
 https://community.oracle.com/message/2739501 que ele passa
 'c:\windows\system32\cmd.exe /c fullpath\nomedobat.bat' , e NÂO apenas o
 path\nomedo.bat, yes ???

   []s

 Chiappa



  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-11 Por tôpico angelo angelolis...@gmail.com [oracle_br]
Milton

Vou te fazer uma pergunta, que talvez seja crucial pra matar essa charada..
Nem tem a ver com Oracle agora, vc vai entender porque:

Você sabe qual usuario ( do windows ) o processo oracle está sendo
executado ?

Porque pergunto isso, porque quando vc passa a execução para o sistema
operacional... o cara que vai rodar o comando para mandar a impressao
executar, está executando sob um determinado usuario da maquina. Esse
usuario pode ser tanto uma conta local ou uma conta do dominio.

E como você está enviando a impressao para um share na rede, esse usuario
tambem precisa ter permissao para acessar o mesmo.
Por isso que quando vc testa no computador, funciona e na aplicacao não...
eu desconfio que o problema esteja passando por ai


Vou te dar um exemplo pratico:

Na empresa, nós temos um sistema de WMS executando em um depósito. A
impressao de etiqueta da mercadoria, com o codigo de barras e o mais, nao é
enviada diretamente pelo Oracle mas pelo sistema e é exatamente dessa forma
que vc comentou.. é impressora Zebra também, datamax.. é gerado um
arquivinho com os comandos que a impressora zebra entende e copiando para o
share imprime. Poderia ser assim também mas vai cair na questao da conta do
computador.

Essa conta que faz a impressao tem permissao de imprimir no compartilhamento
No meu caso, nós combinamos com o operador logistico de criar o
compartilhamento, amarrado a uma conta, com a mesma senha, para ficar igual
ao windows onde roda o sistema.


É uma peculiaridade de windows, isso.
Verifica o processo do Oracle que esta em execucao a maquina (se vc tiver
aceso a ela, veja qual conta está sendo executada)


Eu to desconfiando fortemente que seu problema seja esse.




2015-03-11 17:02 GMT-03:00 'Milton Bastos Henriquis Jr.'
miltonbas...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br:



 Chiappa, executei manualmente:

 c:\windows\system32\cmd.exe /c c:\wyms_print\i9Print.bat

 Direto no DOS, ok, funcionou.
 Via PL/SQL, negativo, retornou erro.

 Abri o link que vc enviou, mas eu acho que são casos diferentes, pois ali
 é via DBMS_SCHEDULER, enquanto eu estou usando uma package específica para
 execução de comandos do sistema operacional.
 Já usei outras vezes e nunca precisar especificar o interpretador!



 Att,




 Em 11 de março de 2015 16:31, jlchia...@yahoo.com.br [oracle_br] 
 oracle_br@yahoogrupos.com.br escreveu:



 Então : eu estou chutando, mas via de regra o script *** TEM *** que ser
 INTERPRETADO pelo Sistema Operacional, ele ** não É ** um executável de
 direito : assim sendo, vc tem que passar como argumento pra rotina que
 executa comando externo uma CHAMADA PARA O INTERPRETADOR, que no caso do
 Windows é o cmd.exe , veja (por exemplo) em
 https://community.oracle.com/message/2739501 que ele passa
 'c:\windows\system32\cmd.exe /c fullpath\nomedobat.bat' , e NÂO apenas o
 path\nomedo.bat, yes ???

   []s

 Chiappa


  



Re: [oracle_br] Re: Executar comando do sistema operacional

2015-03-11 Por tôpico 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]
Chiappa, executei manualmente:

c:\windows\system32\cmd.exe /c c:\wyms_print\i9Print.bat

Direto no DOS, ok, funcionou.
Via PL/SQL, negativo, retornou erro.

Abri o link que vc enviou, mas eu acho que são casos diferentes, pois ali é
via DBMS_SCHEDULER, enquanto eu estou usando uma package específica para
execução de comandos do sistema operacional.
Já usei outras vezes e nunca precisar especificar o interpretador!



Att,




Em 11 de março de 2015 16:31, jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:



 Então : eu estou chutando, mas via de regra o script *** TEM *** que ser
 INTERPRETADO pelo Sistema Operacional, ele ** não É ** um executável de
 direito : assim sendo, vc tem que passar como argumento pra rotina que
 executa comando externo uma CHAMADA PARA O INTERPRETADOR, que no caso do
 Windows é o cmd.exe , veja (por exemplo) em
 https://community.oracle.com/message/2739501 que ele passa
 'c:\windows\system32\cmd.exe /c fullpath\nomedobat.bat' , e NÂO apenas o
 path\nomedo.bat, yes ???

   []s

 Chiappa
  



[oracle_br] Re: Executar comando do sistema operacional

2015-03-11 Por tôpico jlchia...@yahoo.com.br [oracle_br]
Então : eu estou chutando, mas via de regra o script *** TEM *** que ser 
INTERPRETADO pelo Sistema Operacional, ele ** não É ** um executável de direito 
: assim sendo, vc tem que passar como argumento pra rotina que executa comando 
externo uma CHAMADA PARA O INTERPRETADOR, que no caso do Windows é o cmd.exe , 
veja (por exemplo) em https://community.oracle.com/message/2739501 que ele 
passa 'c:\windows\system32\cmd.exe /c fullpath\nomedobat.bat' , e NÂO apenas o 
path\nomedo.bat, yes ???

  []s
  
Chiappa