Como remover aqueles links que o Outlook cria automáticamente nos emails…

Uma coisa que sempre desconfio são as ligações activas nas mensagens de email que recebo.

Há sempre uma impressão de phishing, por isso muitas vezes não carrego na ligação para ver.

Consigo dominar a minha curiosidade. 🙂

Uuma coisa que reparei é que cada vez que criamos uma nova mensagem no outlook e queremos inserir texto tipo http://seekerpt.blogspot.com ele transforma o texto automaticamente numa ligação activa e válida.

Eu fico a pensar, não gosto de receber coisas assim então também não as devo enviar.

Fui pesquisar e descobri que se tivermos o ultimo service pack do officce instalado e adicionarmos umas chaves de registo podemos colocar este tipo de endereços que não passam de texto.

Texto que tem de ser copiado e colado no browser para podermos navegar até ao site.
Mantemos a mensagem em html com as fotos ou o formato correcto e também deixamos de ter os links duvidosos. 🙂
Garantimos também que o que colocamos no browser é mesmo o que vemos e não muitas vezes aquelas ligações manhosas de phishing para nos sacar os dados bancários.

Pareceu-me uma boa opção.

Aqui fica:

Inglês:

  1. Quit Outlook 2003.
  2. Click Start, click Run, type regedit in the Open box, and then click OK.
  3. Locate and then click the following registry subkey:
    HKEY_CURRENT_USERSoftwareMicrosoftOffice11.0OutlookPreferences
  4. After you select the subkey that is specified in step 3, point to New on the Edit menu, and then click DWORD Value.
  5. Type DisableAutoUrlCompletion, and then press ENTER.
  6. Right-click DisableAutoUrlCompletion, and then click Modify.
  7. In the Value data box, type 1, and then click OK.
  8. On the File menu, click Exit to quit Registry Editor.

Português:

  1. Sair do utlook 2003.
  2. Carregar em Iniciar, Correr, e escrever regedit na caixa de texto, carregar em OK.
  3. Procurar pela seguinte chave de registo:
    HKEY_CURRENT_USERSoftwareMicrosoftOffice11.0OutlookPreferences
  4. Carregar com o botão direito do rato no lado direito do ecrã e escolher a opção Nova , escolher DWORD Value.
  5. Escrever DisableAutoUrlCompletion, e depois carregar em Enter.
  6. Carregar com o botão direito do rato na chave DisableAutoUrlCompletion, depois escolher a opção Modificar.
  7. No campo dados, escrever 1, e depois carregar em OK.
  8. Sair do editor de registo.

E com isto vamos dar aos nossos amigos uma vida menos stressante.
Ou como alguém diz sem webstress…

Para quem quiser saber um pouco mais:

http://support.microsoft.com/?kbid=904637
Sem stress 🙂

Às voltas com o logparser…

Bem tenho tido alguma experiência com o Microsoft Logparser 2.2.

A ferramenta está muito boa e permite-nos fazer imensas coisas.

Tenho uns logs criados diariamente e quero agarrar neles e coloca-los num servidor de SQL.

Aqui fica a minha solução em VBS que pode ser colocada numa task scheduler para ler os logs tipo w3c.

Priemeiro instalamos o logparser.

Depois registamos a dll que fica na pasta de instalação com o comando regsvr32 “caminho completo da dlllogparser.dll”

E aqui fica o código simples….

1
2
3
4
5
6
7
8
9
10
oLogQuery = createobject("MSUtil.LogQuery")
Set oInput = createobject("MSUtil.logquery.W3CInputformat")
Set oOutput = createobject("MSUtil.logquery.SQLOutputformat")
oOutput.driver = "SQL Server"
oOutput.server = "servidorSQLEXPRESS"
oOutput.Database = "LogParser"
oOutput.username = "db_user"
oOutput.password = "password"
oOutput.clearTable = False
oOutput.createTable = False

Nome do ficheiro a ir buscar:
Como o ficheiro é criado diariamente com o ano mes e dia concatenados com o seu nome tenho de voltar esse nome um dia para trás. 🙂

1
2
sLogName = "NomedeFicheiro" & year(now) & month(now) & day(dateadd("d",-1,now)) & ".log"
sLogName = "ISALOG_" & year(now) & "0622" & "*.w3c"

Querie que me interessa do ficheiro a ser analisado.

1
strsql = "select c-ip, cs-username, date, time, s-computername, cs-referred, r-host, r-ip, r-port, cs-protocol, cs-uri, sc-status, error-info, action from C:TestLog" & sLogName & " to LogsIsa"

executar os comandos anteriores.

1
oLogQuery.ExecuteBatch strsql, oInput, oOutput

Para a próxima mostro como visualizar os dados que acabei de colocar na Base de Dados… 🙂

Network Binding

Quando montamos um sistema as placas que colocamos neles tem uma determinada ordem de inicialização.
São inicializadas pela BIOS de acordo com os recuros e o slot PCI ou a “Lane” PCIe.
Existe uma numeração nos slots que vai de “zero” a x onde x é o ultimo slot, o “Zero” seria o primeiro slot a ser inicializado pela bios e o x o ultimo.

Actualmente com as placas de rede onboard acabamos por não saber “a menos que tenhamos acesso aos dados do fabricante” qual a ordem de inicialização. Este problema agrava-se quando instalamos outro componene qualquer que nos pode alterar esta ordem. No caso de aplicações que dependem de dessa ordem ou que ficam associadas a uma placa de rede ( firewalls ) pode ser problemático.

Apesar de na fase de instalação não podermos dominar qual a ordem usada podemos controla-la no sistema operativo. (podemos desabilitar um dos bindings com uma unattended instalation).

No sistema operativo windows XP ou 2000 basta apenas fazer o seguinte:

Start -> Run -> escrever ncpa.cpl
Menu opção avançadas -> Escolher a opção de Adaptadores e Bindings.

No windows 7

Painel de Controlo -> Network and Internet -> Network and Sharing Center -> Change Adapter Settings -> Opção Organize -» Layout -» Menu e agora que já estamos a ver o menu já podemos alterar os bindings escolhendo o Menu Avançado.

Isto vai permitir-nos escolher qual a placa de rede que vai ficar como principal no windows. Se tivermos mais que uma placa de rede ligadas á mesma rede significa que a primeira da lista será a que queremos que seja a principal, ela será a placa com a metrica mais baixa e por isso todos os pedidos de saida sairão por ela.

Podemos também escolher quais os serviços instalados para cada uma das placas e escolher outras opções mas dessas irei falar mais tarde…

Registry + ControlSet's

ControlSet… uma das sub chaves que devemos conhecer do nosso sistema Operativo.

Esta é uma chave do Windows que existe no registry.
Os conjuntos de chaves começadas por ControlSet são extremamente importantes.
É aqui que temos guardadas todas as configurações do nosso Windows.

Aqui podemos encontrar os serviços, drivers e outro tipo de informação.
Estas chaves estão dentro da chave de registo HKEY_LOCAL_MACHINESYSTEM.
Podem existir várias entradas deste tipo dependendo do número de alterações que fizemos no nosso sistema.
Uma instalação normal do Windows tem 4 control Set.

ControlSet002
ControlSet
ControlSet001
clone

O ControlSet001 são as definições da última vez em que fizemos logon.
O ControlSet002 é conhecido como o ultimo controlSet conhecido em boas condições ou mesmo o ultimo controlset que foi usado para arranque no Windows com sucesso.

O ControlSet é apenas um apontador para um dos 2 anteriores.

O Clone é um “clone” do CurrentControlSet e é criado cada vez que o nosso computador arranca na fase de inicialização do Kernel.

Existe outra chave relacionada com estas. É a chave Select, também está localizado dentro da chave System e contem os seguintes valores:
Current
Default
Failed
LastKnownGood

Cada um destes valores contem uma REG_DWORD que aponta para um dos Controlset.
Por exemplo, se o valor está definido 0x1, então o CurrentControlSet está a apontar para ControlSet001. Á semelhança do LastKnownGood se estiver configurado para 0x2, então o last known good control set é o ControlSet002.
O valor por defeito normalmente é o corrente e o Failed é um apontador para um ControlSet que não conseguiu arrancar com sucesso.

O mais fiável é o CurrentControlSet.
Se necessitarmos de ver ou alterar definições esta é a chave que devemos procurar. Se por algum motivo as nossas alterações não funcionarem sempre podemos arrancar com a lastknown good configuration, mas para isso é importante não fazermos logon logo, visto ser nesse momento em que o Windows substitui os controlSet existentes. Devemos esperar sempre um pouco pelo menos até já não existir tanta actividade nos discos. Caso contrário podemos ter problemas em recuperar o Windows caso um dos seus serviços / drivers provoque um erro que nos impeça de fazer logon. Pois podemos perder a Last Known Good Configuration.

Problema de Upgrade do Windows Vista 64x para Windows 7

Sei que já vou tarde, mas este fim-de-semana decidi fazer o upgrade do meu computador pessoal para o windows 7.

Corri o “Upgrade Advisor” fiz o que este me aconselhou e iniciei a instalação.

Após várias horas a correr, coisa que penso poder ser normal visto ter muitas aplicações instaladas e o upgrade tem de as migrar para a nova versão.

Mais algumas horas e notei que não tinha saído dos 62%.

Mais umas horas e comecei a procurar na net se mais alguém tinha tido o mesmo problema.
Encontrei.

Aparentemente isto é um problema conhecido, reportado pela

KB975253.

Seguindo os paços documentados no artigo consegui terminar o meu upgrade ao Windows Vista.

Aqui fica a informação do Artigo:

Para validar se a instalação está mesmo pendurada carregar SHIFT+F10 e verificar se no quadro que aparece a seguinte informação:

Warning [0x080b50] MIG AsyncCallback_ApplyStatus: Progress appears to be stuck. Current progress: 62

Caso esteja visível a mensagem terão de executar os seguintes paços:

1 – Reiniciar o Computador. Quando o computador tiver acabado de restaurar o Windows vista ir para paço 2.
2 – Carregar iniciar, carregar com o botão direito do rato no “Computer”, e depois escolher propriedades.
3 – na tab avançadas carregar no botão de Variáveis de ambiente.
4 – Por baixo nas variáveis de ambiente carregar em novo.
5 – Escrever “MIG_UPGRADE_IGNORE_PLUGINS” no campo variável
6 – Escrever “IphlpsvcMigPlugin.dll” no campo valor da variável
7 – Carregar ok até as janelas estarem encerradas reiniciar o computador.
8 – Iniciar o upgrade novamente.

Atenção que mesmo assim depois de todo este trabalho o windows 7 demorou perto de 20 horas a fazer upgrade.

Um pouco irritante porque a instalação do windows e o software que tenho deve demorar no máximo umas 4 horas. 🙁

Ocultar password em asp.net

Uma das coisas que me faz muita confusão é ter a password e o username em texto simples nos ficheiros de web.config.

Isto faz-me confusão porque na realidade em caso de falha de segurança damos muito pouco trabalho aos hackers… 🙂

Uma das formas de ocultar a informação relativa ao utilizador e à sua password é ocultando a no registo da máquina.

A ferramenta a usar é o aspnet_setreg.exe, uma ferramenta que vem com a Framework da Microsoft. (Microsoft .Net Framework).

Esta ferramenta permite-nos guardar no registo informações como o utilizador e a password de uma ligação como por exemplo ao SQL. Assim escusamos de ter a connection string com user e password no ficheiro web.config.

A ferramenta utiliza internamente 2 funções ou métodos que são locais na máquina, a CryptProtectData e a CryptUnprotectData, uma é o método que usamos para cifrar a nossa ligação a outra é o que usamos para decifrar a nossa ligação.
Atenção que quem tiver acesso à máquina tem acesso a estes métodos e por isso pode ver a informação cifrada.

Ao utilizarmos o aspnet_setreg.exe usamos uma sintaxe do género

aspnet_setreg.exe -k:SOFTWAREMINHA_APLICACAO_SEGURAidentity -u:”dominiopassword” -p:”password”

Este comando cifra o utilizador e a sua password na chave de registo indicada com a flag -k: também gera o output que devemos colocar no nosso web.config ou na nossa machine.config para que o user asp.net possa saber como localizar as chaves no registo e usa-las.

O output que recebemos é semelhante a este:

username=”registry:HKLMSOFTWAREMINHA_APLICACAO_SEGURAidentityASPNET_SETREG,username”
password=”registry:HKLMSOFTWAREMINHA_APLICACAO_SEGURAidentityASPNET_SETREG,password”

O Windows atribui à chave de registry FULL control ao utilizador de system, aos administradores e ao utilizador que a criou.

Se os administradores não tiverem nada a ver com isto podem ser removidos que não fazem falta… Atenção que ao removerem as permissões dos administradores ficam com menos apoio na tentativa de resolução de erros. Deixem sempre o user system e o que criou a chave se esta tiver sido criada com o user que corre o site. Para estas alterações ou adicionar outro utilizador podem usar o regedt32.exe para dar permissões às pastas.

Agora é só alterar a aplicação correspondente no seu web.config ou na suma machinec.config com o retorno do aspnet_setreg para começar a funcionar com as password e users menos visíveis

username=”registry:HKLMSOFTWAREMINHA_APLICACAO_SEGURAidentityASPNET_SETREG,username”
password=”registry:HKLMSOFTWAREMINHA_APLICACAO_SEGURAidentityASPNET_SETREG,password” />

Deixei o nome dos métodos usados internamente para mais tarde num outro texto do blog falar deles.

 

Como arrancar o windows Vista com o minimo de aplicações a correr.

Hoje tive um problema relacionado com isto.

Quis instalar um software e não conseguia. Ele estava constantemente a gerar excepções e não se deixava instalar.

Decidi validar se poderia ser alguma coisa que tivesse instalado ou a correr que fosse incompatível ou que provocasse a excepção de memória que o programa dá.

Para podermos testar se existe alguma aplicação que está a causar a falha na instalação de outra temos de desactivar o máximo possível de aplicações que a nossa máquina tenha.

Para isso o Windows vista vem com uma ferramenta útil que se chama msconfig .

Para a correr basta ir ao nosso start menu e escrever no run msconfig.

Depois aparece-nos a seguinte janela:

Escolho a pasta services, fiz o hide Microsoft services ( não quero desabilitar estes para já ) e depois escolho a opção de disable all.


Seguidamente escolho a pasta startup e opção disablle all ( assim ficam a maior parte das aplicações e drivers sem arrancar. )


Arranquei o sistema e tentei instalar a aplicação.

Esta instalou bem sem qualquer problema.

Agora se tivesse tempo para validar qual dos programas estaria a procurar causar o problema bastaria ir activando um a um os serviços e aplicações desligados e tentando instalar a aplicação até esta repetir o erro.

IIS 32bits Mode

Com o surgimento das máquinas a 64bits é cada vez maior o número de instalações a 64bits.
Isto, porem, acarreta alguns problemas, o cada vez maior número de sistemas operativos a ser implementados não é acompanhado de igual forma pelas aplicações a 32bits. Isto tem uma maior visibilidade nas aplicações WEB.

Por vezes não é possível colocar essas aplicações a funcionar com o que temos a 64bits por falta de drivers ou por impossibilidade de recompilação.

A forma de as por a funcionar é regredir um pouco e colocar o IIS a funcionar a 32bits.

Para isso temos de executar os seguintes paços:

  1. Activar a .Net Framework a 32bits. Não conseguimos originalmente activar esta Framework num sistema operativo a 64bits, obtemos um erro de não ser possível a instalação da Framework 32bits num sistema a 64bits.Para podermos proceder a esta instalação temos de fazer os seguintes paços:
  • Executar o seguinte script ” cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 true “Isto vai permitir activar o iis em modo 32bits. Se mais tarde quisermos recuperar o iis em modo 64bits então basta-nos repetir o script com o false.
  • Depois temos de alterar a Framework. Para isso temos de ir á seguinte directoria c:WindowsMicrosoft.NetFrameworkv2.0.50727 e correr o seguinte comando:aspnet_regiis.exe -i este comando permite registar a Framework asp.net a 32bits.Depois de correr este script no iis admin dentro da pasta Web service extensions vai aparecer uma nova extensão asp.net v2.0.xxxx (32 bits).
  • Apenas temos de activar o novo menu escolhendo a opção alow.
  • Depois na no website que queremos que funcione a 32bits temos de fazer propriedades e escolher a tab asp.net e depois escolher na combo box asp.net version a versão 2.0.xxxx

— Atenção — Depois de fazermos estas alterações, “aleijam” o vosso servidor e o nosso iis pois deixaremos de conseguir correr aplicações compiladas a 64bits.

Não é possível ter em funcionamento na mesma máquina ambas as versões, por isso contem com esta solução apenas para preparar uma migração ou para permitir que (até à actualização da aplicação) esta funcione sem problemas numa máquina a 64bits.

Problemas em Ligar um disco USB

No outro dia tive um amigo que me pediu ajuda pois tinha um disco USB que não era reconhecido pelo seu sistema operativo. O sistema operativo era o Windows Vista.
O disco era reconhecido noutros computadores logo não poderia ser problema do disco.

Já se tinha tentado remover e reinstalar os drivers das controladoras USB sem sucesso.
Não dava para instalar os mais recentes porque o fabricante era a abit e esta já deixou o nosso mundo há uns largos meses.

naveguei um pouco na net até que encontrei resposta num blog de um desconhecido.
Como resolveu o problema aqui fica a solução para mais alguem que necessite.

Fonte:

http://tim.mackey.ie/VistaDriverProblemsFormacUSBHardDrive.aspx

Tradução:
“Aparentemente existe um bug com o Windows Vista em que podemos ter um driver corrupto no ficheiro de cache, se nós o apagarmos então resolverá todos os nossos problemas.
O ficheiro em causa é chamado INFCACHE.1 e está em c:windowsinf. Eu descobri isto num newsgroup. Aqui ficam as partes mais relevantes:

A solução para este problema irritante parece passar por localizar e apagar o ficheiro INFCACHE.1, que pode estar corrompido e a causar o problema. Para apagar este ficheiro temos que alterar as permissões para que os utilizadores possam aceder. (Carregar com o botão direito do rato no ficheiro escolher propriedades e depois segurança). O ficheiro está localizado em C:Windowsinf . (Nota: Para ver o ficheiro INFCACHE.1, temos de configurar o windows para mostrar os ficheiros ocultos e de sistema) ”

Nota: Quando modificamos estes ficheiros devemos ter em conta a ownership do ficheiro para mais tarde repor tudo no formato anterior, apesar de para pode-lo renomear ou mesmo apagar teremos de fazer um take ownership para o nosso utilizador para nos tornarmos o dono do ficheiro. Depois adicionamos permissões de fullcontrol para o nosso utilizador.”

Depois é só fazer reboot e já está 🙂

Atenção ás permissões iniciais do ficheiro, convém repor da forma correcta não vá ser uma falha de segurança.

Espero que vos ajude.