Ir para conteúdo
Fórum Script Brasil
  • 0

Utilizar variável %userprofile% no VBScript


octavio.rocha

Pergunta

Boa tarde, pessoal do fórum.

Espero que não seja repost esse tópico, fiz uma pesquisa rápida e não encontrei nada relacionado. Caso seja repost, por favor apenas apontem o tópico que contem a dúvida resolvida.

Vamos à situação:

Eu preciso de um script para comparar dois arquivos e copiar o de origem (na rede), caso ele seja mais novo, sobrescrevendo o de destino.

Fuçando na web achei o código que vou postar logo abaixo, até aí tudo bem, ele compara e copia sem problemas, desde que eu use como destino um caminho absoluto (C:\users\shimpato yamazaki\), porém eu preciso que ele utilize como destino a variável de ambiente %USERPROFILE%, assim fica um único código para todos os usuários que fizerem logon, em qualquer computador (vou colocar o script numa gpo).

'Nome do arquivo a ser comparado e copiado
strArquivo = "gestao.exe"

'Pasta origem do arquivo
strOrigem="C:\teste\"

'Pasta destino do arquivo
Dim WshS
Set WshS = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")

'Expand Environment
usrProfile = WshS.ExpandEnvironmentStrings("%UserProfile%")

set objFSO = CreateObject("Scripting.FileSystemObject")
set Origem = objFSO.getFile (strOrigem & strArquivo)
set Destino = objFSO.getFile (usrProfile & strArquivo)

wscript.echo Origem.path &" " & Origem.dateLastModified
wscript.echo Destino.path  & " " & Destino.dateLastModified
If objFSO.FileExists(strDestino & strArquivo) Then
   if Origem.dateLastModified > Destino.dateLastModified Then
    objFSO.DeleteFile(strDestino & strArquivo)
        objFSO.CopyFile strOrigem & strArquivo , strDestino & strArquivo, OverwriteExisting    
   End if
Else 
   objFSO.CopyFile strOrigem & strArquivo , strDestino & strArquivo, OverwriteExisting    
End if

Da forma como está o código acima, quando executo ele dá erro na linha 17 - Caract.: 1 - Arquivo não encontrado - Código: 800A0035.

Se entendi bem, ele não está justamente chegando até o USERPROFILE, por isso dá que não existe.

Agradeço qualquer ajuda.. e desculpem pelo post longo.

Obrigado.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...