CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização

01. VISÃO GERAL


       A funcionalidade "Gerenciamento de Config" tem por objetivo simplificar a maneira de administrar os arquivos de configurações das estações de trabalho, utilizando uma única interface. Com a unificação do arquivo de configuração podemos visualizar, incluir, excluir e alterar as configurações de qualquer estação mesmo estando desligada.


A partir da versão 12.1.27, será apresentado um modelo diferente de Config. Global, em JSON. Veja a documentação.


Observação

Para a execução de TLS 1.1 e 1.2 no Windows 7 é necessário adicionar os registros abaixo, visto que são os protocolos de comunicação ativos atualmente e que por padrão não são ativos na versão Windows7:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000

Arquivo disponível para download: Arquivo.reg


02. EXEMPLO DE UTILIZAÇÃO

INSTALADORES


       Instruções:

       1. Acesse a Central de Download em www.totvs.com/suporte
       2. Faça o login, com seu Email e Senha.
       3. Na barra de menu superior, clique em DOWNLOAD.
       4. No boxe “Central de Downloads” pesquise pela versão da biblioteca RM.
 
       Pronto! Todos os instaladores correspondentes do filtro aplicado no passo 4 serão disponibilizados para download. Para iniciar o download do arquivo, clique na figura com uma seta para baixo localizada na primeira coluna da grid ou no link da versão selecionada.



       Escolha o método mais apropriado de download e salve o arquivo na pasta desejada.
    

Para facilitar na busca do arquivo, utiliza-se o campo “Filtro” da grid de download, digitando o nome do arquivo ou parte do mesmo para pesquisa/download.

    Requisitos:

  • Linha de Software: RM
  • Versão: 12.01.01 e posteriores
  • Data de Liberação: Outubro/2014
  • Observação: Para requisitos de software consulte nossa portabilidade: Portabilidade RM 12.01

 

COMO CONFIGURAR


       Para utilizar esta configuração é necessário o compartilhamento de uma pasta em rede contendo o arquivo "Configuracaorm.config". Neste arquivo constará o cadastro do aplicativo desejado, utilizando as configurações desejadas para o seu ambiente.                           

Arquivo Configuracaorm.configArquivo exemplo: RM.Host.exe.config


       Disponibilizado o arquivo em rede torna-se necessário ajustar os arquivos de conexão (RM.Host.exe.config, RM.Host.Service.exe.config) e aplicações (RM.exe.Config, RMBis.exe.config, RMLabore.exe.config etc) em cada estação utilizada.       

       Dentro do arquivo de configuração, em cada estação, remova todo o contexto que esteja dentro de <appSettings> e substitua por tag <add key="configpath" value="\\PastaCompartilhadaNaRede" />. O tag ConfigPath deve ser preenchido com o diretório onde o arquivo "Configuracaorm.config" foi compartilhado.

       Abaixo um exemplo de como ficarão os arquivos de configurações em cada estação:

Máquina que não utiliza o Gerenciamento de configMáquina que utiliza o gerenciamento de config
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="JobServer3Camadas" value="false" />
    <add key="Port" value="8050" />
    <add key="Host" value="localhost" />
   <add key="LibPath" value="C:\totvs\CorporeRM\RM.Net" />
</appSettings>
</configuration>
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="CONFIGPATH" value="\\PastaCompartilhadaNaRede" />
</appSettings>
</configuration>


       Após realizar estas configurações o ambiente está preparado para utilizar o arquivo unificado de configuração.

Caso o arquivo de configuração possua somente permissão de leitura, não será possível inserir novas estações no configurador. Será utilizado então as configurações default do arquivo compartilhado.

COMO FUNCIONA

       

<script type="text/javascript" language="javascript">
/* @license ! jQuery-mutate - v0.0.2 - 
* Licensed under the MIT license
* http://www.opensource.org/licenses/mit-license.php
* Date: 2015-04-19 */

!function(t){mutate_event_stack=[{name:"width",handler:function(a){var e=t(a);return e.data("mutate-width")||e.data("mutate-width",e.width()),e.data("mutate-width")&&e.width()!=e.data("mutate-width")?(e.data("mutate-width",e.width()),!0):!1}},{name:"height",handler:function(a){var e=t(a);return e.data("mutate-height")||e.data("mutate-height",e.height()),e.data("mutate-height")&&e.height()!=e.data("mutate-height")?(e.data("mutate-height",e.height()),!0):void 0}},{name:"top",handler:function(a){var e=t(a);return e.data("mutate-top")||e.data("mutate-top",e.css("top")),e.data("mutate-top")&&e.css("top")!=e.data("mutate-top")?(e.data("mutate-top",e.css("top")),!0):void 0}},{name:"bottom",handler:function(a){var e=t(a);return e.data("mutate-bottom")||e.data("mutate-bottom",e.css("bottom")),e.data("mutate-bottom")&&e.css("bottom")!=e.data("mutate-bottom")?(e.data("mutate-bottom",e.css("bottom")),!0):void 0}},{name:"right",handler:function(a){var e=t(a);return e.data("mutate-right")||e.data("mutate-right",e.css("right")),e.data("mutate-right")&&e.css("right")!=e.data("mutate-right")?(e.data("mutate-right",e.css("right")),!0):void 0}},{name:"left",handler:function(a){var e=t(a);return e.data("mutate-left")||e.data("mutate-left",e.css("left")),e.data("mutate-left")&&e.css("left")!=e.data("mutate-left")?(e.data("mutate-left",e.css("left")),!0):void 0}},{name:"hide",handler:function(a){var e=t(a),r=e.is(":hidden"),d=void 0==e.data("prev-hidden")?r:e.data("prev-hidden");return e.data("prev-hidden",r),r&&r!=d?!0:void 0}},{name:"show",handler:function(a){var e=t(a),r=e.is(":visible"),d=void 0==e.data("prev-visible")?r:e.data("prev-visible");return e.data("prev-visible",r),r&&r!=d?!0:void 0}},{name:"scrollHeight",handler:function(a){var e=t(a);return e.data("prev-scrollHeight")||e.data("prev-scrollHeight",e[0].scrollHeight),e.data("prev-scrollHeight")&&e[0].scrollHeight!=e.data("prev-scrollHeight")?(e.data("prev-scrollHeight",e[0].scrollHeight),!0):void 0}},{name:"scrollWidth",handler:function(a){var e=t(a);return e.data("prev-scrollWidth")||e.data("prev-scrollWidth",e[0].scrollWidth),e.data("prev-scrollWidth")&&e[0].scrollWidth!=e.data("prev-scrollWidth")?(e.data("prev-scrollWidth",e[0].scrollWidth),!0):void 0}},{name:"scrollTop",handler:function(a){var e=t(a);return e.data("prev-scrollTop")||e.data("prev-scrollTop",e[0].scrollTop()),e.data("prev-scrollTop")&&e[0].scrollTop()!=e.data("prev-scrollTop")?(e.data("prev-scrollTop",e[0].scrollTop()),!0):void 0}},{name:"scrollLeft",handler:function(a){var e=t(a);return e.data("prev-scrollLeft")||e.data("prev-scrollLeft",e[0].scrollLeft()),e.data("prev-scrollLeft")&&e[0].scrollLeft()!=e.data("prev-scrollLeft")?(e.data("prev-scrollLeft",e[0].scrollLeft()),!0):void 0}}]}(jQuery);
/* @license ! jQuery-mutate - v0.0.1 - 
* Licensed under the MIT license
* http://www.opensource.org/licenses/mit-license.php
* Date: 2015-04-19 */

!function(a){function b(){var c=mutate;"undefined"!=c.event_stack&&c.event_stack.length&&a.each(c.event_stack,function(a,b){mutate.add_event(b)}),c.event_stack=[],a.each(c.stack,function(b,d){a(d.selector).each(function(a,b){c.events[d.event_name](b)===!0?d.callback&&d.callback(b,d):d.false_callback&&d.false_callback(b,d)})}),setTimeout(b,mutate.speed)}mutate={speed:100,event_stack:mutate_event_stack,stack:[],events:{},add_event:function(a){mutate.events[a.name]=a.handler},add:function(a,b,c,d){mutate.stack[mutate.stack.length]={event_name:a,selector:b,callback:c,false_callback:d}}},b(),a.fn.extend({mutate:function(){var b=!1,c=arguments[1],d=this,e=arguments[2]?arguments[2]:function(){};return"extend"==arguments[0].toLowerCase()?(mutate.add_event(c),this):(a.each(a.trim(arguments[0]).split(" "),function(a,f){b=f,mutate.add(b,d,c,e)}),this)}})}(jQuery);
</script>
<style type="text/css">
.expand-container{
margin-top:5px !important;
font-weight: normal !important;
}

.expand-control{
margin-bottom: 5px !important;
}

pre{
white-space: inherit !important;
}

table tr:nth-child(odd), table tr:nth-child(odd) > *{
   background: transparent !important;
border: 0 !important;
}

.pdl .codeContent .gutter{
    border-right: 1px solid #ccc !important;
}

.wiki-content .innerCell {
    overflow-y: hidden;
}

.HiddenDiv .confluence-information-macro {
    width: calc(100% - 25px);
    background: #fff !important; 
    border: 0 !important;
    -moz-border-radius: 0px !important;
    -webkit-border-radius: 0px !important;
    border-radius: 0px !important;
    color: #333;
    margin: 10px 0 1em 0;
    min-height: 20px;
    padding: 10px;
    position: relative;
}

.HiddenDiv .confluence-information-macro .confluence-information-macro pre{
    display: none;
}
.HiddenDiv .wiki-content a:link, .HiddenDiv .wiki-content a, .HiddenDiv .tab-nav-link, .HiddenDiv .current{
     color: #000 !important; 
}

.wiki-content a:link {
    color: #000 !important;
}

.lastDiv + pre{
    font-family: inherit;
}

.white-container{
    -moz-box-shadow: 2px 2px 2px #aaa;
    -webkit-box-shadow: 2px 2px 2px #aaa;
    box-shadow: 2px 2px 2px #aaa;
}

.confluence-embedded-file-wrapper .confluence-embedded-image{
    max-width: 100% !important;
    max-height: 100%;
}

</style>
<div style="border:1px solid #aab8c6;padding:5px;-moz-border-radius: 5px;-webkit-border-radius: 5px;border-radius: 5px;background: #f7f7f7">      
      <div style="background:#f7f7f7;width:calc(100% - 10px);height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 1px solid #aab8c6;margin-bottom:14px">
           <span style="float:left"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/thumbnails/172295262/cogwheel-arrow.png?version=1&modificationDate=1510689248000&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px">Fluxo de Execução <b>(Gerenciador de .Config)</b></span>
     </div>
<div style="border: 1px solid #aab8c6">      
       <div style="background:#f7f7f7;width:calc(100% - 10px);height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 0px;">
           <span style="float:left;margin-top: 4px"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/attachments/172295262/hierarchical-structure.png?version=1&modificationDate=1510689248000&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px;margin-top: 3px">Diagrama do Fluxo de Execução</span>
      </div>
      <div style="background:#f0f0f0;width:calc(100% - 10px);height:auto;min-height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 0px;">
           <div style="width:100%;height: 30px;border-bottom:1px solid #d0d0d0;padding-bottom:5px;"><span style="float:left;margin-top: 4px;font-weight:normal !important"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/attachments/172295262/frame-landscape.png?version=1&modificationDate=1510689248000&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px;margin-top: 4px;font-weight:normal !important">Imagem</span><span style="float:right;margin-top: 4px;padding-right:5px;cursor:pointer" onclick="Show('hiddenDiv17', 'img17');"><img id="img17" name="img17" style="width: 16px; height: 16px; margin-top: 3px" src="/download/attachments/309398329/add.png?version=1&modificationDate=1509382756808&api=v2"></span></div>
<div style="background: #e2e2e2;">
<div id="hiddenDiv17" class="HiddenDiv" style="visibility:hidden;height: 0px; line-height: 30px; padding-left: 5px; background: #e2e2e2;font-weight:normal">
<b>Aplicativo:</b> RM.Host.ServiceManager.exe
<div style="background: #fff; padding:10px;text-align:center;width:calc(100% - 25px);margin:10px 0px;">

</div>
</div>
</div>
<div style="width:100%;height: 30px;padding-top:5px"><span style="float:left;margin-top: 4px;font-weight:normal !important"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/attachments/172295262/tablet.png?version=1&modificationDate=1510691345360&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px;margin-top: 4px;font-weight:normal !important">Descrição do Diagrama</b></span><span style="float:right;margin-top: 4px;padding-right:5px;cursor:pointer" onclick="Show('hiddenDiv18', 'img18');"><img id="img18" name="img18" style="width: 16px; height: 16px; margin-top: 3px" src="/download/attachments/309398329/add.png?version=1&modificationDate=1509382756808&api=v2"></span></div>
<div style="background: #e2e2e2;">
<div id="hiddenDiv18" style="visibility:hidden;height: 0px; line-height: 30px; padding-left: 5px; background: #e2e2e2;font-weight:normal">
O fluxo abaixo refere-se à criação e a alteração dos registros no Configurador Global.
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

1) Inicio do Fluxo  CreateFile();

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Verifica o Registro → [Nome do Aplicativo] + [Domínio] + [Nome da Máquina]; EX: RM.EXE_BH01_TESTE.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Caso o Registro exista 

  • Altera o registro com as modificações realizadas.
  • Save(); //Salva as alterações no registro.
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

</div>


<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

2) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → Verifica a tag CONFIGAUTOGENERATE.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.
  • Save(); //Salva as alterações no registro.
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor false → Uma mensagem é enviada ao Usuário.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

</div>
<p><strong><br/></strong></p>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

3) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo - Principal (Sem múltiplos hosts)] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

</div>
<p><strong><br/></strong></p>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

4) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo] + "Todos" + "Default"; EX: RM.EXE_TODOS_DEFAULT.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

</div>
<p><strong><br/></strong></p>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

5) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo - Principal (Sem múltiplos hosts)] + "Todos" + "Default"; EX: RM.EXE_TODOS_DEFAULT.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

</div>
<p><strong><br/></strong></p>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

6) Inicio do Fluxo → Verifica o Registro "RM" + "Todos" + "Default"; EX: RM_TODOS_DEFAULT.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor false → Levanta uma exceção ao Usuário (REGISTERNOTFOUND).

</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" language="javascript">

Show = function(divName, imgName){
window["currentElement"] = divName;
if(typeof divName === "string"){
	if(document.getElementById(divName).offsetHeight < 2){
     $("#" + divName).animate({height: $("#" + divName).get(0).scrollHeight + 7});
     $("#" + divName).css("visibility", "visible")
     $("#" + imgName).attr('src', '/download/attachments/309398329/remove.png?version=1&modificationDate=1509386912062&api=v2');  
     $(".HiddenDiv .tab-nav-link").on("click", function(){
          window["currentElement"] = $(this).parents().find(".HiddenDiv").attr("id");
     });  
	 $(".HiddenDiv .confluence-information-macro").mutate('height',function (element,info){
          this.selector.each(function(index, element){
             if($(this).parent().attr("id") == window["currentElement"])
             $(this).parent().height($(this).outerHeight() + 61);
          });		
     });
    }
    else{
     $("#" + divName).animate({height: "0px"});
     $("#" + divName).css("visibility", "hidden")
     $("#" + imgName).attr('src', '/download/attachments/309398329/add.png?version=1&modificationDate=1509382756808&api=v2');
    }
}
}
</script>


O arquivo "Configuracaorm.config" armazenará as configurações de cada aplicativo. Para cada primeiro acesso, será inserido um novo registro com as configurações padrões referente à aplicação acessada.

       É necessário que o arquivo "Configuracaorm.config" possua um registro padrão contendo as configurações desejadas, para cada aplicativo a ser utilizado.

        Exemplo:

     Para o aplicativo RM.exe, executado no domínio BH01, será respeitada a seguinte identificação:

     RM.exe_BH01_DEFAULT onde default será o padrão de configuração para todos os novos registros de aplicativos RM.exe que estiverem do domínio BH01, respeitando a nomenclatura da opção Novo Registro.

     Exemplo de Registro Padrão:

<RM.EXE_BH01_DEFAULT>
   <appSettings>
     <add key="JOBSERVER3CAMADAS" value="True" />
     <add key="PORT" value="8050" />
     <add key="HOST" value="localhost" />
     <add key="LibPath" value="C:\RM.Net_Atual\Bin" /> 
     <add key="CONFIGAUTOGENERATE" value="True" /> 
  </appSettings>
</RM.EXE_BH01_DEFAULT>
Se não for necessário criar novos registros para cada estação basta alterar o valor da tag <add key="CONFIGAUTOGENERATE" value="True" />, de: "True" para: "False" no Registro padrão.

Lembrando que o CONFIGAUTOGENERATE cria um novo registro baseado nas estações de trabalho, outros registros podem ser criados independente da tag estar "true" ou "false", como um exemplo, o registro RM.EXE.BH01.DEFAULT.

Alterar o valor do CONFIGAUTOGENERATE, aplica-se apenas aos registros baseados nas estações de trabalho. Por exemplo, alterando o valor de "true" para "false" fará com que apenas os registros das estações de trabalho não sejam criados.

    novo registro será inserido levando em consideração as configurações do Registro Padrão e respeitando a seguinte identificação:

                     Nome do aplicativo + _ + Domínio do usuário + _ + Nome da máquina        

    Exemplo

  • Nome do aplicativo: RM.EXE
  • Domínio do usuário: BH01
  • Nome da máquina: Teste

     Como ficará o novo registro no arquivo:

<RM.EXE_BH01_Teste>
   <appSettings>
      <add key="JOBSERVER3CAMADAS" value="True" />
      <add key="PORT" value="8050" />
        <add key="HOST" value="localhost" />
      <add key="LibPath" value="C:\RM.Net_Atual\Bin" /> 
        <add key="CONFIGAUTOGENERATE" value="True" /> 
   </appSettings>
</RM.EXE_BH01_Teste>
Caso o arquivo de configuração possua permissão de somente leitura, não será possível inserir novas estações no configurador, sendo utilizado as configurações existentes no arquivo.

 

Versão: 12.01.XX