quarta-feira, setembro 06, 2017

Windows Server 2012 R2 - Lentidão no acesso à RDP

Ao utilizarmos o Windows Server 2012 R2 via área remota de trabalho (RDP), notamos uma lentidão no acesso e resposta dos comandos, mesmo desativando várias opções do cliente de acesso, a lentidão persistia.  Buscando na internet surgiu uma solução que melhorou sensivelmente o problema:

On the Windows Server 2012 machine, disable the Large Send Offload via the following steps:
a. Open Network Connections.
b. Right-click the icon of the NIC which is responsible for the connection to terminal clients and select Properties.
c. In Networking tab, click Configure… button.
d. In the next window, switch to Advanced tab.
e. Click the Large Send Offload Version 2 (IPv4) and change the value to Disabled.

Na máquina do Windows Server 2012, desative o "Deslocamento de Envio Grande" por meio das seguintes etapas:
a. Abra as conexões de rede.
b. Clique com o botão direito do mouse no ícone da NIC que é responsável pela conexão aos clientes do terminal e selecione Propriedades.
c. Na guia Rede, clique no botão Configurar.
d. Na próxima janela, mude para a guia Avançado.
e. Clique na Versão de envio grande de descarga 2 (IPv4) e altere o valor para "Desativado".

Caso encontre outra, o post será atualizado.

Segue a fonte do fórum:

https://social.technet.microsoft.com/Forums/ie/en-US/df918c8c-83e1-4900-ac68-cd20ecce3115/windows-server-2012-r2-slow-rdp?forum=winserver8setup


quinta-feira, março 30, 2017

FOREACH e LIST no PHP - Problema na instrução

Prezados,

No manual do PHP em http://php.net/manual/pt_BR/control-structures.foreach.php, há um problema na instrução quando se usa o "foreach" com "list", no exemplo descrito está:

$array = [
    [1, 2],
    [3, 4],
];

foreach ($array as list($a, $b)) {
    // $a contains the first element of the nested array,
    // and $b contains the second element.
    echo "A: $a; B: $b\n";
}

Mas há um problema na linha "foreach ($array as list($a, $b)) {" onde ocorre o problema "Notice: Undefined offset:" e o código não executa.

Buscando na internet uma solução, encontrei no fórum "https://bugs.php.net/bug.php?id=10203" a seguinte solução do usuário "torben@php.net":

$arr = array(array(1, 2), array(3, 4));
foreach ($arr as $narr) {
    list($a, $b) = array_values($narr);
    echo "$a, $b\n";
}

Dessa forma o loop funcionou como o esperado para o propósito do array.

Abraços.

quarta-feira, setembro 21, 2016

Problemas de bibliotecas usando jquery, ajax e struts em HTTPS


Prezados,

Assim como eu, quem teve problemas com as bibliotecas JQuery, Ajax etc. na chamada de links em seus scritps após inserir certificados HTTP em seu site, linhas como por exemplo:

script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.js"

Basta modificar o "http" do link para "https", assim:

script type="text/javascript" src="https://code.jquery.com/jquery-1.8.3.js"

Isso serve para todas as chamadas externas quando se começa a trabalhar com certificados no seu site (HTTPS).

Abraços.

(adaptado do fórum: http://respostas.guj.com.br/5655-problema-com-https-usando-jquery-ajax-e-struts-1)


quarta-feira, agosto 10, 2016

Problemas com campos BIGINT em arrays no CakePHP


Prezados verificamos que, ao trabalhar com campos BIGINT em arrays no CakePHP, é necessário passar o parâmetro "unsigned" para que o campo seja lido corretamente, por exemplo:

->schema()->addColumn('SEUCAMPOBIGINT', 'unsigned');

Assim tudo funciona!

Dica do amigo Danilo Dinelli.  Obrigado.

Abraços.


Problemas ao abrir planilhas com conteúdo HTML XMLNS no Excel


Prezados, hoje, após uma atualização do Excel verifiquei que os arquivos de planilhas exportados dos nossos scripts em HTML / XMLNS não abriam no Excel.  Ao "vasculhar" na internet em busca de uma solução achei uma "dica" em um site explicando que o problema é devido a uma atualização da Microsoft que bloqueou a abertura de arquivos, considerados por eles, "suspeitos".  Devido a isso a solução mais viável é dizer ao Excel que uma pasta (e suas subpastas) são "confiáveis" e assim ele abre todos os arquivos desta pasta.

Vá em Opções > Central de Confiabilidade, como na figura abaixo:



Clique "Procurar" e selecione a pasta em que os arquivos serão salvos, depois clique em "Adicionar um novo local", selecione a pasta e marque a opção "As subpastas deste local também são confiáveis":


Clique em Ok, feche todas as janelas e pronto.  O único problema é que, todos os arquivos que foram exportados em HTML com a extensão XLS devem ser salvos nesta pasta que você definiu.


Caso não prefira fazer dessa forma, existe a opção de desbloquear os arquivos individualmente, para isso clique com o botão direito do mouse sobre o arquivo > Propriedades > Na guia "Geral", marcar o botão "Desbloquear" e depois clicar em "Ok".


Lembrando que este problema surgiu de uma atualização de segurança do Microsoft Office. Até que a Microsoft disponibilize um novo patch para "corrigir" esta "mancada", estas são as melhores soluções.

Adaptado do site: https://social.technet.microsoft.com/Forums/pt-BR/2fd89045-7f5b-4c88-8e8e-d18d4efa403d/excel-no-abre-mais-contedo-html-xmlns?forum=officept

Abraços.

terça-feira, março 08, 2016

Excluir apenas alguns registros com só uma SQL


Prezados,

Mais uma vez, uma dica que ajuda demais em casos específicos como quando, por exemplo, você precisa excluir apenas alguns registros de uma tabela mas não quer executar sempre o mesmo comando trocando apenas o identificador do registro.  O comando "IN" ajuda bastante nisso, veja como aplicar.

Normalmente usaríamos:

DELETE FROM seubancodedados.suatabela WHERE campo = valordocampo1
DELETE FROM seubancodedados.suatabela WHERE campo = valordocampo2
DELETE FROM seubancodedados.suatabela WHERE campo = valordocampo3
etc.

Aplicando o "IN" temos:

DELETE FROM seubancodedados.suatabela WHERE campo IN (valordocampo1, valordocampo2, valordocampo3)

Dessa forma com apenas um com comando você exclui somente os registros que tenham os identificadores valordocampo1, valordocampo2 etc. isso sem apagar toda a tabela.  Ele funciona em qualquer comando/sintaxe onde você tenha que comparar se o valor a ser modificado é igual ao que você precisa modificar.

Abraços.


quarta-feira, outubro 21, 2015

Excluindo arquivos e pastas de backup antigas automaticante - FORFILES


Tenho rotinas de backup que copiam/criam diretórios e estes são compactados.  O problema é que, se os mais antigos não forem apagados, perde-se grandes espaços em disco.  Buscando soluções para linhas de comandos em arquivos bat (batch/DOS) encontrei o (milagroso) comando FORFILES onde com duas linhas de comando, resolvi meu problema:

1 - apaga somente os arquivos .rar com mais de 3 dias
FORFILES /P "c:\seudiretorio\seusubdiretorio" /M *.rar /D -3 /C "cmd /c echo @path"

2 - apaga os arquivos dos diretórios com mais de 3 dias
FORFILES /P "D:\Backup_Geral\Backup_DBs_EGTec" /D -3 /C "cmd /c del @path /q"

3 - Apaga os diretórios com mais de 3 dias
FORFILES /P "D:\Backup_Geral\Backup_DBs_EGTec" /D -3 /C "cmd /c rd @path /s /q"

Com estes comandos sendo executados por um arquivo batch (.bat) os backups com mais de 3 dias (no meu caso) são excluídos automaticamente.

Para maiores detalhes sobre o comando e seus parâmetros, seguem alguns links:

Forfiles - TechNet - Microsoft

Exluir arquivos com mais de X dias de idade

Espero que ajude.

Abraços.