none
Criando PST com VBS - Otimização de Outlook! RRS feed

  • Pergunta

  • Prezados, bom dia.

    Primeiro irei explicar o meu cenário, posteriormente a pergunta, para poder ficar bem detalhado.

    Bom, no meu ambiente, temos 2 mil usuarios, e para cada um desses usuarios, criamos um compartilhamento em um file server e criamos uma pasta para cada um deles com o nome do usuario.

    Exemplo..

    \\10.0.0.1\pst\daniel.shun_2014 (explicarei o porque do 2014 posteriormente)

    e dentro dessa pasta, jogamos os arquivos de PST (arquivos de dados do outlook), e configuramos para o usuario armazenar os emails nessa pst que se encontra na rede..bom, como somos uma empresa de engenharia, e temos varios setores que recebem varios emails ao dia com varios anexos, adotamos uma policita de PST ANUAL.

    Todo vez que vira o ano, criamos mais uma pst para cada um desses usuarios..

    E como ja viramos para 2015, precisamos criar para 2 mil usuarios uma nova pst e adiciona-la na caixa de email como padrão par aesses usuarios para passarem a usar essa caixa..e a antiga, colocaria no disco D de cada usuario para ficar apenas como consulta.

    agora, a questão é o seguinte.

    Faziamos isso manual, porem, como é 2mil usuarios, o pessoal de suporte leva muito tempo fazendo esse trabalho..como adoro desafios, resolvi pensar que poderia criar um script para fazer o seguinte..o script rodava na inicialização do usuario, o script verificava se existia a PST_2015 na rede, na pasta do usuario, se não existisse, ele criaria uma, e copiaria a antiga (2014) para o disco D de cada usuario..até ae tudo bem, consegui fazer em batch..mas dae pra frente, não consegui desenvolver..

    O que está faltando para o script funcionar?

    Falta criar o arquivo .PST e adicionar o PST 2015 como padrão na conta do outlook do usuario..

    Pesquisei bastante, vi o kit de developer do Outlook, e mesmo assim não consegui achar, saber que funciona eu sei..mas queria saber como fazer isso em VBS ou em outra linguagem..alguem sabe como? e se tem como?

    Fico grato!

    quinta-feira, 15 de janeiro de 2015 18:00

Respostas

  • Olá Daniel, tudo bem?

    O script citado no link abaixo, faz exatamente isso que você deseja. Basta adequar os parâmetros para as características do seu ambiente.

    http://powershell.com/cs/media/p/2992.aspx

    Recomendo já que o processo vai ser automatizado, que valide primeiro seu funcionamento em um ambiente de teste e depois faça um agendamento para operacionalização do script por grupos de usuário.

    A quantidade de grupos, depende da capacidade de workload da máquina que vai disparar o comando, das estações e da rede que vai suportar o tráfego. Tente validar realizando primeiro em um grupo pequeno e vá aumentando gradativamente até encontrar um valor suficiente.

    Um grande abraço,


    Sergio Figueiredo
    Microsoft Certified Solutions Associate

    sexta-feira, 16 de janeiro de 2015 11:59
  • Pra renomear via vbs seria algo assim:

    Set fso = CreateObject("Scripting.FileSystemObject")
    
    set oFldr = fso.getfolder("C:\Users\TESTE\")
    
    for each ofile in oFldr.Files
     if lcase(fso.GetExtensionName(ofile.Name)) = ".PST" then
      ofile.name = "DANIELV2015.PST"
      Exit for
     end if


    Sergio Figueiredo
    Microsoft Certified Solutions Associate

    sexta-feira, 16 de janeiro de 2015 19:12

Todas as Respostas

  • Olá Daniel, tudo bem?

    O script citado no link abaixo, faz exatamente isso que você deseja. Basta adequar os parâmetros para as características do seu ambiente.

    http://powershell.com/cs/media/p/2992.aspx

    Recomendo já que o processo vai ser automatizado, que valide primeiro seu funcionamento em um ambiente de teste e depois faça um agendamento para operacionalização do script por grupos de usuário.

    A quantidade de grupos, depende da capacidade de workload da máquina que vai disparar o comando, das estações e da rede que vai suportar o tráfego. Tente validar realizando primeiro em um grupo pequeno e vá aumentando gradativamente até encontrar um valor suficiente.

    Um grande abraço,


    Sergio Figueiredo
    Microsoft Certified Solutions Associate

    sexta-feira, 16 de janeiro de 2015 11:59
  • Bom dia Sergio!

    Bom, dei uma lida la no post, porem, está em PowerShell, e também ele faz acesso ao Exchange..

    Me corrija se eu estiver errado.

    Por esse método, infelizmente não vai ser possível, pois nossa equipe de Segurança da Informação fica na argentina, eles que controlam o Exchange, e o AD, acho meio impossível eles liberar para fazermos esse teste..

    Não existe algum jeito de fazer em VBScript?

    Ou algo do tipo?

    sexta-feira, 16 de janeiro de 2015 13:12
  • Neste caso precisaria ter o Exchange ou uma máquina administrativa com o módulo de administração da ferramenta.

    VBS é muito amarrado comparado a gama de funcionalidades do PowerShell.. vou dar uma olhada e tão logo tenha uma resposta, retorno aqui.

    Abcs,


    Sergio Figueiredo
    Microsoft Certified Solutions Associate

    sexta-feira, 16 de janeiro de 2015 15:25
  • Boa tarde Sergio,

    Eu fiz da seguinte maneira, criei uma PST de modelo em um share, e coloquei um script para verificar se o usuario já tem a PST_2015, se não tiver, ele pega a PST de modelo que criei, e joga na pasta do usuario, o unico problema agora, é que preciso renomear esse PST_2015 para NOMEDOUSUARIO_2015.

    Pelo REN do batch não tá indo..já tentei por VBS, mas também não vai..alguma sugestão?

    A questão de deixar a pst como padrão, acho que também estou achando a solução pelo registro do windows..mas estou agarrado na parte de renomear o arquivo para poder avançar..

    sexta-feira, 16 de janeiro de 2015 17:23
  • Pra renomear via vbs seria algo assim:

    Set fso = CreateObject("Scripting.FileSystemObject")
    
    set oFldr = fso.getfolder("C:\Users\TESTE\")
    
    for each ofile in oFldr.Files
     if lcase(fso.GetExtensionName(ofile.Name)) = ".PST" then
      ofile.name = "DANIELV2015.PST"
      Exit for
     end if


    Sergio Figueiredo
    Microsoft Certified Solutions Associate

    sexta-feira, 16 de janeiro de 2015 19:12