This Blog

Syndication

Search

Tags

News

Community

Email Notifications

Archives

Grupos de Usuários

Blogs MVPs Brasil

Sites

September 2010 - Posts

Você precisa manter arquivos sincronizados entre o seu desktop, notebook e o computador de casa?

Pois é justamente para isto que existe o SyncToy 2.0!

Naturalmente ele também serve como um excelente ferramenta de backup. ElE é intuitivo e possui uma excelente interface e ainda possui 5 formas diferentes de realizar a sincronização.

Não perca mais tempo, faça o download e comece a usufruir de mais este software grátis da Microsoft!

Posted by paleo | with no comments
Filed under:

Se você gerencia computadores em uma escola, laboratório, biblioteca ou cyber café, este programa é para você.

Com ele você consegue definir o que os usuários podem ou não fazer no sistema e assim garantir que ele funcione sempre da mesma forma.

Conheça o Windows SteadyState!

Posted by paleo | with no comments
Filed under:

Que tal possuir um telescópio em seu computador?

Desfrute do imagens do telescópio espacial Hubble, no conforto de seu lar. Você pode passear pelo universo e quem sabe encontrar alguma espaçonave alienígena?

É não creio que chegue a tanto, mas vale a pena conhecer o WorldWide Telescope!

Posted by paleo | with no comments
Filed under:

Você já desejou ter um editor de XML básico, mas poderoso?

Então você precisa conhecer o XML Notepad 2007. Quanto custa? Nada.

O desenvolvedor é confiável? Sim

Não tem spyware nele? Não

Quem o criou? Microsoft

Até Intellisense ele possui...

Já gostou? Saiba ainda mais aqui: http://msdn.microsoft.com/en-us/library/aa905339.aspx

Posted by paleo | with no comments
Filed under:

Paint.NET

Este software começou como um projeto com .NET de dois alunos da Washington State University, mas constatou-se ser um programa tão bom para edição de imagens, além de um excelente exemplo da utilização da linguagem .NET que a Microsoft contratou os seus dois desenvolvedores e permitiu que eles continuassem o projeto, além de decidir oferecê-lo como um download gratuito. Além disso tudo ele possui uma interface intuitiva e é fácil de usar. Conheça-o!

Ele é comparável a outros softwares que você já deve ter ouvido falar, como: Adobe Photoshop, Corel Paint Shop Pro ou The GIMP. Faça suas comparações e tire suas conclusões.

 

Posted by paleo | with no comments
Filed under:

Vários leitores do blog me enviaram e-mails perguntando como deviam configurar o modem para IPs dinâmicos, possibilitando seus acessos remotos. Bem, isso vai depender muito da marca e modelo do modem, pois os fabricantes podem implementar isto de diversas formas.

Explico abaixo como fazer isso num modem D-Link 500-B (que é um dos mais comuns no mercado para ADSL). Se o seu modem for outro, procure por uma opção com nome similar.

1. Acesse ao mundo no endereço http://10.1.1.1 (este é o padrão, se você alterou ele, use o que colocou);

2. Informe usuário admin e senha admin (novamente estes são os padrões, se alterou, coloque os seus);

3. Clique em DNS;

4. Clique em Dynamic DNS;

5. Informe os dados conforme demonstrado na figura e depois clique em Add;

6. Mande salvar e gravar (Management > > Save & Reboot).

Pronto.

Posted by paleo | with no comments
Filed under:

Momento Nostalgia! Você já está usando as versões 2007 ou 2010 do Office, mas ainda sente falta dos menus da versão 2003?

Sem problemas. Vi essa dica sendo fornecida pelo Mauricio Cassemiro da Conceição e achei que valia a pena postar aqui.

É um add-in desenvolvido por Ubit Schweiz e está disponível para download gratuito na Baixaki.

UBit Menu 1.04
UBitMenu para Microsoft Office 2010

Posted by paleo | with no comments
Filed under:

Digamos que você esteja trabalahndo com vários documentos do Word abertos ao mesmo tempo e deseja salvar todos eles de uma só vez. O que pode ser feito se estiver no Word 2007?

Em versões anteriores tinhamos o botão Salvar Tudo com o ícone de vários disquetes, mas agora não temos mais (?).

Temos sim, apenas não está visível e para fazê-lo aparecer faça o seguinte:

1. Clique no botão do Office e selecione Opções do Word;

2. Clique em Personalizar no menu do lado esquerdo;

3. Na caixa Escolher comandos em, onde estará selecionado Comandos mais usados, altere para Todos os comandos;

4. Na caixa com as opções de comandos, role até aparecer Salvar tudo;

5. Clique em Adicionar > >;

6. Clique em OK.

Pronto, ele aparecerá ao lado do botão Localizar no topo da janela.

Posted by paleo | with no comments
Filed under:

Digamos que você possua uma planilha onde devem ser inseridas datas em alguns campos, mas não podem ser inseridas datas referentes a finais de semana. Como você poderia evitar isso?

Bem simples e nem precisa usar VBA:

1. Selecione a área onde deseja usar esta regra (por exemplo, nas células de C1 até C10);

2. clique no Menu Dados;

3. Clique em Validação de Dados na Ribbon e selecione Validação de dados...;

4. No campo Permitir, altere de Qualquer valor para Personalizado;

5. No campo Fórmula digite =E(DIA.DA.SEMANA(C1)<>1;DIA.DA.SEMANA(C1)<>7);

6. Selecione a caixa Aplicar alterações a todas as células com as mesmas configurações.

Pronto!

Repare que na fórmula eu informei apenas a célula C1, mas como marquei a caixa citada no item 6. e havia selecionado as células antes, a regra de validação foi aplicada a todo o intervalo de C1 até C10.

Posted by paleo | with no comments
Filed under:

Algumas vezes estamos trabalhando com números onde precisamos que sejam expostos os zeros precedentes, mas ao digitarmos no Excel algo como 000005, o que obtemos é 5.

Como então podemos forçar que sejam expostos todos os 5 zeros precedentes?

Simples, formatando a célula da seguinte forma:

1. Digite o valor desejado (000005) em uma célula;

2. Com a célula onde está o valor selecionada (e onde agora você está vendo: 5), pressione Ctrl + 1;

3. Selecione a guia Número e dentro dela a categoria Personalizado;

4. Do lado direito, no campo Tipo (onde estará escrito Geral, digite 6 zeros (para definir a quantidade de dígitos numérico que deseja);

5. Clique em OK.

Pronto! Estará aparecendo 000005 na célula.

Posted by paleo | with no comments
Filed under:

Para que você consiga usar códigos VBA em planilhas (como os que postei neste blog) são necessários os seguintes passos, para inserir o código em uma planilha e para executá-lo:

  1. Copie o código;
  2. Abra a planilha onde deseja usá-lo;
  3. Pressione Alt + F11 para abrir o Visual Basic Editor (VBE);
  4. A partir do Menu, selecione Insert -> Module;
  5. Cole o código no lado direito da janela;
  6. Feche o VBE e salve o arquivo, se desejar.

Para executar o código:

  1. Pressione Alt + F8;
  2. Escolha o nome da macro que deseja executar e clique em Execute ou simplesmente dê dois cliques no nome da macro.

 

Posted by paleo | with no comments
Filed under:

Digamos que você colocou uma senha de proteção em sua planilha, mas acabou esquecendo ela e agora precisa liberar o acesso à edição da mesma. O que fazer?

Aqui apresento um script que utiliza a abordagem de força bruta para contornar este problema.

Antes de partirmos para o script vamos entender uma coisa. O excel armazena o hash da senha informada e não a senha em si. Por um lado isto é muito positivo, mas por outro reduz a segurança. Por que? Porque basta que obtenhamos uma senha que gere o mesmo hash  que teremos acesso aos dados, mesmo que ela não seja a mesma informada na hora da proteção. Pois é exatamente isto que o meu código faz, um ataque de força bruta (testando todas as combinações, baseado na tabela ASC-II) para obter um hash semelhante.

Este código funciona muito bem para o Excel até a versão 2003. Da versão 2007 em diante a coisa complica, pois passa a ser usado outro sistema de segurança que é MUITO mais complexo de se burlar.

Sub QuebraSenhaEsquecida()

'Declara variáveis
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer

'Define a faixa por onde devem ocorrer os testes. São não preciso testar exatamente todas combinações em todas posições, pois se quero obter um hash
On Error Resume Next
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126

'Identifica se senha funcionou
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
 Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) _
 & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)

'Mostra senha funcional em mensagem (não é a que foi utilizada quando da proteção)
If ActiveSheet.ProtectContents = False Then
 MsgBox "Uma senha utilizável é " & Chr(i) & Chr(j) _
 & Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) _
 & Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
 Exit Sub
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next

End Sub

Posted by paleo | with no comments
Filed under:

Quando escrevo algum código em VBA, comento ele todo. Praticamente cada linha possui um comentário explicando o que estou fazendo ali e porque. Isso facilita a minha vida quando preciso adaptar algo depois de um tempo e quando tenho de interromper  a codificação para retomar mais tarde.

Mas qual o sentido de entregar um código todo comentado? Se o cliente deseja um código todo mastigadinho (ensinando a fazer), precisa pagar um adicional para isso, ainda que a grande maioria dos meus códigos seja desenvolvida com os comentários.

Agora, se o cliente não deseja pagar pelos comentários (o que sai caro), o que fazer para removê-los da versão a ser entregue? Apagar linha por linha é cruel. Já fiz projetos com mais de 40.000 linhas, manualmente seria impossível apagá-las.

Qual a solução então? Usar uma macro para isso. Pois aqui está ela:

Option Explicit
 
Sub SemComentarios()
    
Dim n               As Long
Dim i               As Long
Dim j               As Long
Dim k               As Long
Dim LineText        As String
Dim ExitString      As String
    
    For i = 1 To ActiveWorkbook.VBProject.VBComponents.Count
        With ActiveWorkbook.VBProject.VBComponents(i).CodeModule
            For j = .CountOfLines To 1 Step -1
                LineText = Trim(.Lines(j, 1))
                If LineText = "ExitString = " & _
                """" & "Ignora comentários neste módulo" & """" Then
                Exit For
            End If
            n = InStr(1, LineText, "' ")
            Select Case n
            Case Is = 0
            Case Is = 1
                .DeleteLines j, 1
            Case Is > 1
                .ReplaceLine j, Left(LineText, n - 1)
            End Select
        Next j
    End With
Next i
 
ExitString = "Ignora comentários neste módulo"
 
End Sub

Posted by paleo | with no comments
Filed under:

Este código de VBA serve de complemento ao postado antes, que verifica a sintaxe. Já este valida se o domínio é válido. Preparado para rodar com domínios .br, mas com pequeno ajuste funcionaria com os domínios .com também.

Sub email()
    Dim txtEmail As String
    txtEmail = InputBox("Digite o endereço", "Endereço de e-mail")
   
    Dim ObjXML
    Dim ResultadoConsulta
    Dim Situacao
   
    If IsEmailValid(txtEmail) Then
           
        Dominio = Split(txtEmail, "@")
        If Len(Dominio(1)) < 9 Then
            Situacao = "Error ! The domain must have at least 3 characters"
        ElseIf Len(Dominio(1)) > 32 Then
            Situacao = "Error ! The domain must have at the maximum 26 characters"
        Else
            Set ObjXML = CreateObject("Microsoft.XMLHTTP")
       
            ObjXML.Open "GET", "
http://registro.br/cgi-bin/nicbr/whois?qr=" & Dominio(1), False
       
            ObjXML.Send
       
            ResultadoConsulta = ObjXML.ResponseText
       
            If InStr(1, ResultadoConsulta, "Domínio inexistente") Then
                   
                Situacao = "Disponível para registro"
               
            ElseIf InStr(1, ResultadoConsulta, "Consulta inválida") Then
               
                Situacao = "Erro! Sintaxe inválida "
               
            Else
                Situacao = "Domínio de e-mail válido"
            End If
               
        End If
    Else
        Situacao = "Sintaxe de e-mail inválida!"
    End If
    ' Mostra resultado
    MsgBox Situacao
End Sub

Posted by paleo | with no comments
Filed under:

Muitas vezes precisamos inserir e-mails em nossas planilhas, mas o que fazer se você deseja que estes e-mails sejam validados, a fim de evitar erros de digitação?

Aqui está o código em VBA que realiza isso:

Sub email()
    Dim txtEmail As String
    'Obtém o endereço de e-mail
    txtEmail = InputBox("Digite o endereço", "Endereço de e-mail")
   
    Dim Situacao As String
    'Identifica a situação dele
    If IsEmailValid(txtEmail) Then
        Situacao = "Sintaxe válida de e-mail!"
    Else
        Situacao = "Sintaxe inválida de e-mail!"
    End If
    ' Mostra o resultado
    MsgBox Situacao
End Sub


Function IsEmailValid(strEmail)
    Dim strArray As Variant
    Dim strItem As Variant
    Dim i As Long, c As String, blnIsItValid As Boolean
    blnIsItValid = True
    

    i = Len(strEmail) - Len(Application.Substitute(strEmail, "@", ""))
    If i <> 1 Then IsEmailValid = False: Exit Function

    ReDim strArray(1 To 2)
    strArray(1) = Left(strEmail, InStr(1, strEmail, "@", 1) - 1)
    strArray(2) = Application.Substitute(Right(strEmail, Len(strEmail) - Len(strArray(1))), "@", "")
    For Each strItem In strArray
        If Len(strItem) <= 0 Then
            blnIsItValid = False
            IsEmailValid = blnIsItValid
            Exit Function
        End If
        For i = 1 To Len(strItem)
            c = LCase(Mid(strItem, i, 1))
            If InStr("abcdefghijklmnopqrstuvwxyz_-.", c) <= 0 And Not IsNumeric(c) Then
                blnIsItValid = False
                IsEmailValid = blnIsItValid
                Exit Function
            End If
        Next i
        If Left(strItem, 1) = "." Or Right(strItem, 1) = "." Then
            blnIsItValid = False
            IsEmailValid = blnIsItValid
            Exit Function
        End If
    Next strItem
    If InStr(strArray(2), ".") <= 0 Then
        blnIsItValid = False
        IsEmailValid = blnIsItValid
        Exit Function
    End If
    i = Len(strArray(2)) - InStrRev(strArray(2), ".")
    If i <> 2 And i <> 3 Then
        blnIsItValid = False
        IsEmailValid = blnIsItValid
        Exit Function
    End If
    If InStr(strEmail, "..") > 0 Then
        blnIsItValid = False
        IsEmailValid = blnIsItValid
        Exit Function
    End If
    IsEmailValid = blnIsItValid
End Function

Posted by paleo | with no comments
Filed under:

Você já passou pela situação de estar na rua ou em uma viagem e precisar de um arquivo que ficou no computador de casa?

Quem possui um servidor em casa está tranquilo, pois sabe que pode executar um WakeOnLan em sua máquina e assunto resolvido.

O WakeONLan funciona através do envio de um pacote de broadcast na faixa de IP interna da rede, buscando por um MAC Address. Caso a placa de rede do computador a ser ligado ofereça suporte a este recurso o mesmo será ligado. Este recurso não suporta roteamento, portanto funciona apenas na rede interna.

Para este caso eu gosto de usar o FUSION WOL, que pode ser obtido em http:///www.fusion-online.com.ar, um programa gratuito e de uso muito intuitivo.

Mas e quem não possui um servidor em casa? Sem problemas, você também consegue fazer isso e roteando através de múltiplos servidores.

Como? Bem, vamos por partes:

1) O primeiro passo é configurar a BIOS do seu computador para dar suporte ao recurso de ligar o computador pela rede. Você precisará de uma fonte ATX, para ter suporte a isso (99,99% das fontes comercializadas hoje em dia). Consulte o manual de sua placa-mãe para saber como configurar este recurso nela;

2) caso sua placa de rede não seja um componente da placa-mãe (onBoard), será necessário ler a documentação da placa para identificar a forma correta de configurá-la;

3) Você precisa ativar um recurso chamado WakeOnLan, ou algo parecido com isso. O nome pode variar de fabricante para fabricante;

4) O passo seguinte é configurar o seu modem para redirecionar a porta 7 ou 9 (pode haver variação, então se não desejar testar, redirecione ambas) para o seu computador, liberando o acesso via UDP;

5) Caso após o modem você ainda tenha um roteador, precisa liberar o mesmo tipo de acesso a ela. Para realizar este procedimento você pode verificar o manual do modem ou do roteador;

6) Agora faça o download do WakeOnLan - Magic Packet Sender de  Anil Rhemtulla, que é grátis, em http://magicpacket.free.fr/;

7) Caso você possua IP fixo pode passar para o próximo passo, mas se for um dos 99% de usuários que possuem IP dinâmico, precisará utilizar um serviço como NO-IP (http://www.no-ip.com/) ou DynDNS (http://www.dyndns.com/). Realmente não faz diferença por qual dos dois você optar. Faça o cadastro no serviço e realize o download do software cliente ou configure em seu modem/roteador para usar o serviço (ideal, pois se o IP mudar depois de você ter desligado o computador, estará com o endereço antigo no site e não funcionará);

8) Se optar por utilizar o software, lembre-se de definir ele para rodar como um serviço;

9) No equipamento que for utilizar para ligar o seu computador remotamente instale o software citado no item 6 e configure ele para o acesso (estou usando a versão 2007 - 1.5, neste exemplo);

No exemplo criei dois perfis, para usar em um notebook que pode estar conectado tanto na rede interna, quanto na internet. Vamos entender a configuração:

Profile: Simplesmente representa o nome do perfil e deve ser o mais intuitivo possível;

Host Name: Informe aqui o nome do computador (rede interna) ou o IP dele, caso seja fixo. Se for IP dinâmico, informe o URL do redirecionador;

Subnet Mask: Selecione se deve usar a internet ou um pacote de broadcast interno da rede. A configuração já aparece automáticamente com a seleção;

MAC Address: Este é o endereço MAC da placa de rede, que precisa ser informado. Caso você desconheça o mesmo, basta abrir uma janela do Prompt de Comando (Iniciar -> Executar -> cmd ou Iniciar -> cmd -> ENTER) e digitar nela ipconfig /all. A informação desejada aparecerá em Endereço físico.

10) Habilite o acesso à área de trabalho remota no computador a ser ligado, pois caso contrário nada disso terá adiantado.

Tudo pronto, aproveite!!

Posted by paleo | with no comments
Filed under:

Caso você ainda não tenha reparado, não é mais possível ler arquivos .hlp no Windows Vista, 7, 2008 ou 2008 R2. Por que?

Porque eles não possuem o arqvuivo WinHlp32.exe que permite esta leitura.

Solução? Claro, basta fazer o download do arquivo em: http://support.microsoft.com/kb/917607

Posted by paleo | with no comments

Já vi muita gente que precisa realmente trabalhar com grande precisão numérica, reclamando que o seu Excel "errou" um cálculo.

Como isso ocorre?

Vamos começar por um exemplo numérico para ficar mais fácil de constatarmos o problema. Digamos que preciso somar os três números abaixo e preciso de precisão total nos cálculos:

Valor 1 = 45.031,400000002400

Valor 2 = 35.685,600000000000

Valor 3 = 1.523.133,000000000000

Soma no Excel = 1.603.850,000000000000

Resultado mais preciso = 1.603.850,000000002400

O que houve? Por que a precisão do Excel fez com que aqueles 24 simplesmente desapareçam?

Bem, vamos entender então como funciona a precisão dos cálculos no Excel.

Quando estamos trabalhando com números, estes nada mais são do que variáveis, ou seja, em termos de programação eles são interpretados como variáveis numéricas. Ok, mas dentro os tipos de variáveis que podemos usar, qual o utilizado pelo Excel? Aí é que está a questão, vários tipos de variáveis poderiam ser utilizados, mas estão como é determinado o tipo escolhido? Para padronizar a forma como as planilhas de cálculo funcionam, foi estabelecido um padrão internacional a ser seguido por todos desenvolvedores de planilhas. Este padrão foi definido pelo IEEE (Institute Of Electrical And Electronic Engineers) e definiu como devem ser tratados, em cálculos, os números de pontos flutuantes (aqueles que possuem vírgulas).

Ficou definido que o padrão de variável a ser utilizado é Double. Ok, mas o que isso significa. Double significa uma variável de 8-bytes, ou em outras palavras, com até 15 dígitos. Naturalmente que isto não guarda relação alguma com a forma de exibição de números configurada em sua planilha. Mesmo que você tenha definido para apresentar apenas duas casas decimais após a vírgula, os cálculos serão procedidos com 15 dígitos.

Qual a diferença entre 15 dígitos e 15 casas após a vírgula? Imensa, pois quando se fala de 15 dígitos, estamos falando de 15 dígitos, estejam eles do lado que estiverem da vírgula!

Voltemos ao nosso exemplo e vejamos até onde os números são considerados em nossos cálculos:

Valor 1 = 45.031,400000002400 -> 5 dígitos antes da vírgula e 12 após, totalizando 17, portanto sendo 2 desprezados. Como os dois últimos são "0" (zeros), nada se perde;

Valor 2 = 35.685,600000000000 -> Mesmo tamanho do anterior, com dois últimos sendo "0" (zeros) também. Novamente nada se perde;

Valor 3 = 1.523.133,000000000000 -> 7 dígitos antes da vírgula e 12 após, totalizando 19, sendo portanto 4 desprezados. Novamente os desprezados são os "0" (zeros).

Soma = 1.603.850,000000002400 -> 7 dígitos antes da vírgula e 12 após, totalizando 19, sendo portanto 4 desprezados. Desta vez os 4 últimos são "2400", onde ocorre o despreza dos 24 que haviam "desaparecido" da resposta do Excel.

Mas considerando que eu precise de precisão total, há como configurar minha planilha para considerar todos os dígitos? Não.

Via VBA eu conseguiria realizar este cálculo com total precisão? Sim, mas não seria nada simples, pois ainda há outro problema. Além da planilha seguir este padrão, o próprio computador também o segue, portanto isto também precisaria ser contornado em seu código.

Então não há como trabalhar com uma precisão superior a 15 dígitos? Há sim, basta instalar um complemento para isto, disponível em http://digilander.libero.it/foxes/index.htm. Ele amplia a precisão de 15 dígitos para 250 dígitos. Realmente se você ainda precisa de mais do que isso, melhor recorrer a um software estatístico!

Posted by paleo | with no comments
Filed under:

Normalmente o BES é instalado no  mesmo equipamento onde roda o Exchange Server, mas você pode desejar instalar ele em um servidor membro, para balancear a carga, uma vez que ele pesa bastante num SBS.

Como proceder?

Primeiramente você precisará instalar neste Member Server as bibliotecas Messaging Application Programming Interface (MAPI) nem a Collaboration Data Object (CDO) 1.2.1.

Para tanto faça o seguinte:

  1. Acesse o Microsoft Download web site e pesquise pelo artigo: 945835 ou pelo nome dele: Exchange Server 2003 MAPI CDO 1.2.1 and CDO 1.2.1.
  2. Faça o download do arquivo ExchangeMapiCdo.EXE, não do ExchangeMapiCdo.MSI.
  3. Quando questionado sobre Abrir ou Salvar o arquivo, clique em Salvar para colocá-lo na pasta que desejar e desta forma já possuir o arquivo para as próximas instalações.
  4. Abra o arquivo e faça com ele extraia os dados para uma pasta.
  5. Acesse a pasta onde os arquivos foram extraídos e clique no arquivo ExchangeMapiCdo.MSI para instalar or aquivos necessários do CDO e MAPI.
  6. Reinicie o servidor para inicializar o subsistema MAPI.
  7. Se você teve de interromper o processo de instalação do BES, acesse a pasta dos arquivos dele em C:\Research In Motion\BlackBerry Enterprise Server 5.0.2 e clique no arquivo Setup.exe. Desta forma vocêe continuará a instalação de onde havia parado.
Posted by paleo | with no comments

Cenário: Você acaba de migrar do seu SBS 2003 para o SBS 2008. Já está super satisfeito com os novos recursos dele, quando decide instalar o seu BlackBerry Enterprise Server 5.0.2 (BES) no servidor. Aí começa a receber alertas de que falta o arquivo CDO.DLL e que as bibliotecas MAPI estão desatualizadas. O que houve? O Exchange já não instalou isso?

Até a versão 2003 do Exchange, sim, mas na 2007 (que vem com o SBS 2008), não!

A partir da versão 2007 do Exchange, nem as bibliotecas Messaging Application Programming Interface (MAPI) nem a Collaboration Data Object (CDO) 1.2.1, são instaladas pelo produto. Para contornar este problema você precisará fazer o download delas do site da Microsoft.

Para fazer o download e instalar o cliente MAPI, execute os seguintes passos:

  1. Acesse o Microsoft Download web site e pesquise pelo artigo: 945835 ou pelo nome dele: Exchange Server 2003 MAPI CDO 1.2.1 and CDO 1.2.1.
  2. Faça o download do arquivo ExchangeMapiCdo.EXE, não do ExchangeMapiCdo.MSI.
  3. Quando questionado sobre Abrir ou Salvar o arquivo, clique em Salvar para colocá-lo na pasta que desejar e desta forma já possuir o arquivo para as próximas instalações.
  4. Abra o arquivo e faça com ele extraia os dados para uma pasta.
  5. Acesse a pasta onde os arquivos foram extraídos e clique no arquivo ExchangeMapiCdo.MSI para instalar or aquivos necessários do CDO e MAPI.
  6. Reinicie o servidor para inicializar o subsistema MAPI.
  7. Se você teve de interromper o processo de instalação do BES, acesse a pasta dos arquivos dele em C:\Research In Motion\BlackBerry Enterprise Server 5.0.2 e clique no arquivo Setup.exe. Desta forma vocêe continuará a instalação de onde havia parado.
Posted by paleo | with no comments
More Posts Next page »