Commit 9508e0b4d0069478a41f1d9f2f76d5776900fb64

Authored by anderson.peterle@previdencia.gov.br
1 parent 2166f4c0
Exists in master

Acrescentado o comando "Registry" para comunicacao entre o Gerente WEB e agente …

…principal no MS-Windows (cacic2.exe)

git-svn-id: http://svn.softwarepublico.gov.br/svn/cacic/cacic/trunk/agente-windows@519 fecfc0c7-e812-0410-ae72-849f08638ee7
Showing 1 changed file with 46 additions and 25 deletions   Show diff stats
@@ -2071,30 +2071,49 @@ begin @@ -2071,30 +2071,49 @@ begin
2071 // ********************************************************************************************************** 2071 // **********************************************************************************************************
2072 // Esta procedure tratará os comandos e suas ações, enviados em um pacote XML na requisição, conforme abaixo: 2072 // Esta procedure tratará os comandos e suas ações, enviados em um pacote XML na requisição, conforme abaixo:
2073 // ********************************************************************************************************** 2073 // **********************************************************************************************************
2074 - // Execute -> Comando que forçará a execução do Gerente de Coletas (Sugestão: Configurar coletas forçadas no Gerente WEB e executar esse comando)  
2075 - // Requisição: Tag <Execute>  
2076 - // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK' 2074 + // Execute -> Comando que forçará a execução do Gerente de Coletas (Sugestão: Configurar coletas forçadas no Gerente WEB e executar esse comando)
  2075 + // Requisição: Tag <Execute>
  2076 + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'
2077 // 2077 //
2078 - // Ask -> Comando que perguntará sobre a existência de um determinado arquivo na estação.  
2079 - // Requisição: Tag <FileName>: Nome do arquivo a pesquisar no repositório local  
2080 - // Tag <FileHash>: Hash referente ao arquivo a ser pesquisado no repositório local  
2081 - // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK';  
2082 - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Tenho' ou  
2083 - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'NaoTenho' ou  
2084 - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Baixando' ou  
2085 - // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Ocupado'. 2078 + // Ask -> Comando que perguntará sobre a existência de um determinado arquivo na estação.
  2079 + // Requisição: Tag <FileName>: Nome do arquivo a pesquisar no repositório local
  2080 + // Tag <FileHash>: Hash referente ao arquivo a ser pesquisado no repositório local
  2081 + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK';
  2082 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Tenho' ou
  2083 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'NaoTenho' ou
  2084 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Baixando' ou
  2085 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'Ocupado'.
2086 // 2086 //
2087 // 2087 //
2088 - // Erase -> Comando que provocará a exclusão de determinado arquivo.  
2089 - // Deverá ser acompanhado das tags <FileName> e <FileHash>  
2090 - // Requisição: Tag <FileName>: Nome do arquivo a ser excluído do repositório local  
2091 - // Tag <FileHash>: Hash referente ao arquivo a ser excluído do repositório local  
2092 - // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK'; 2088 + // Erase -> Comando que provocará a exclusão de determinado arquivo.
  2089 + // Deverá ser acompanhado das tags <FileName> e <FileHash>
  2090 + // Requisição: Tag <FileName>: Nome do arquivo a ser excluído do repositório local
  2091 + // Tag <FileHash>: Hash referente ao arquivo a ser excluído do repositório local
  2092 + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK';
  2093 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'AcaoExecutada' ou
  2094 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'ArquivoNaoEncontrado' ou
  2095 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'EscritaNaoPermitida';
2093 // 2096 //
  2097 + // Registry -> Comando que provocará ação no Registry de estações com MS-Windows.
  2098 + // Deverá ser acompanhado das tags <Path>, <Action>, <Condition> e <Value>
  2099 + // Requisição: Tag <Path> : Caminho no Registry
  2100 + // Tag <Action> : Ação para execução
  2101 + // SAVE => Salva o valor contido na tag <Value> de acordo com condição contida na tag <Condition>
  2102 + // ERASE => Apaga a chave de acordo com condição contida na tag <Condition>
  2103 + // Tag <Condition> : Condiçção para execução da ação
  2104 + // EQUAL => Se o valor contido na tag <Value> for IGUAL ao valor encontrado na chave
  2105 + // DIFFER => Se o valor contido na tag <Value> for DIFERENTE ao valor encontrado na chave
  2106 + // NONE => Nenhuma condição, permitindo a execução da ação de forma incondicional
  2107 + // Tag <Value> : Valor a ser utilizado na ação
  2108 + // Respostas: AResponseinfo.ContentText := AResponseinfo.ContentText + 'OK';
  2109 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'AcaoExecutada' ou
  2110 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'ChaveNaoEncontrada' ou
  2111 + // AResponseinfo.ContentText := AResponseinfo.ContentText + 'EscritaNaoPermitida';
2094 // 2112 //
2095 - // Exit -> Comando para finalização do agente principal (bandeja) 2113 + // Exit -> Comando para finalização do agente principal (bandeja)
2096 2114
2097 // Palavra Chave definida por Ger_Cols, enviada e armazenada no BD. A autenticação da comunicação é baseada na verificação deste valor. 2115 // Palavra Chave definida por Ger_Cols, enviada e armazenada no BD. A autenticação da comunicação é baseada na verificação deste valor.
  2116 + // A geração da palavra chave dar-se-á a cada contato do Ger_Cols com o módulo Gerente WEB
2098 // te_palavra_chave -> <TE_PALAVRA_CHAVE> 2117 // te_palavra_chave -> <TE_PALAVRA_CHAVE>
2099 2118
2100 // Tratamento da requisição http... 2119 // Tratamento da requisição http...
@@ -2111,10 +2130,11 @@ begin @@ -2111,10 +2130,11 @@ begin
2111 strCmd := XML_RetornaValor('cmd',strXML); 2130 strCmd := XML_RetornaValor('cmd',strXML);
2112 // As ações terão seus valores 2131 // As ações terão seus valores
2113 2132
2114 - if (strCmd = 'Execute') or  
2115 - (strCmd = 'Ask') or  
2116 - (strCmd = 'Erase') or  
2117 - (strCmd = 'Exit') then 2133 + if (strCmd = 'Execute') or
  2134 + (strCmd = 'Ask') or
  2135 + (strCmd = 'Erase') or
  2136 + (strCmd = 'Registry') or
  2137 + (strCmd = 'Exit') then
2118 AResponseinfo.ContentText := 'OK' 2138 AResponseinfo.ContentText := 'OK'
2119 else 2139 else
2120 AResponseinfo.ContentText := 'COMANDO NÃO PERMITIDO!'; 2140 AResponseinfo.ContentText := 'COMANDO NÃO PERMITIDO!';
@@ -2122,15 +2142,16 @@ begin @@ -2122,15 +2142,16 @@ begin
2122 else 2142 else
2123 AResponseinfo.ContentText := 'ACESSO NÃO PERMITIDO!'; 2143 AResponseinfo.ContentText := 'ACESSO NÃO PERMITIDO!';
2124 2144
2125 - if (strCmd = 'Execute') then 2145 + if (strCmd = 'Execute') then
2126 ExecutaCacic(nil) 2146 ExecutaCacic(nil)
2127 - else if (strCmd = 'Ask') then 2147 + else if (strCmd = 'Ask') then
2128 Begin 2148 Begin
2129 strFileName := XML_RetornaValor('FileName',strXML); 2149 strFileName := XML_RetornaValor('FileName',strXML);
2130 strFileHash := XML_RetornaValor('FileHash',strXML); 2150 strFileHash := XML_RetornaValor('FileHash',strXML);
2131 End 2151 End
2132 - else if (strCmd = 'Erase') then  
2133 - else if (strCmd = 'Exit') then 2152 + else if (strCmd = 'Erase') then
  2153 + else if (strCmd = 'Registry') then
  2154 + else if (strCmd = 'Exit') then
2134 Finaliza; 2155 Finaliza;
2135 end; 2156 end;
2136 2157