Mostrando postagens com marcador event viewer. Mostrar todas as postagens
Mostrando postagens com marcador event viewer. Mostrar todas as postagens

sexta-feira, 3 de setembro de 2010

The Scripting Fiad - Apagando Temporários do Outlook e Temporary Internet Files

Olá Rapaziada! Atendendo aos milhões de pedidos (...) dos fãs do meu super hiper blog, vai aqui um script que apaga os temporários dos arquivos .PST do Outlook e também todos os Temporary Internet Files.

No meu caso tive que desenvolver este script pois como eu uso perfil móvel, alguns perfis estavam com 5 ou até 8 Giga. Quando fui ver tinha uns 10 arquivos .TMP com o tamanho dao arquivo de dados do Outlook. Não sei porque ele fez isso, mas tudo indica que é quando dava algum problema, ele passava o Reparador de pasta do outlook e criava esses temporários.

Coloquei tanto na inicialização como no encerramento do Windows, e nunca mais tive esse problema.

Abaixo, o script

'Script para apagar arquivos com extensão .TMP do diretório Outlook - Computadores com Windows XP
'Editado em 03 Setembro 2010 - Adicionado apagar todos os Arquivos temporários da internet
'Desenvolvido por Felipe Gustavo Fiad

On Error Resume Next

Dim sDocsAndSettings
Dim strComputer
Dim oFolder
Dim fso
Dim oFolder1
Dim oFolder2
Dim oFolder3
Dim oSubFolder1
Dim oSubFolder2
Dim oSubFolder3
Dim colSubfolders1
Dim colSubfolders2
Dim colSubfolders3
Dim oFile
Dim userProfile
Dim Windir

' Deleta todos os temporários do outlook para evitar demora ao ler perfil

Set DeleteTmp = CreateObject("Scripting.FileSystemObject")

Set objUsuario = CreateObject("Wscript.Network")
Usuario = objUsuario.Username


DeleteTmp.DeleteFile("C:\Documents and Settings\" & Usuario & "\Outlook\*.tmp")

DeleteTmp.DeleteFile("\\srvadm\profiles$\" & Usuario & "\Outlook\*.tmp")


' Deleta todos os arquivos temporários da internet

strComputer = "."
Set fso = createobject("Scripting.FileSystemObject")

'USER PROFILES
sDocsAndSettings = "C:\Documents and Settings\" ' Probably there is an environment variable or other variable

Set colFolders = fso.GetFolder(sDocsAndSettings) 'Collection of all profiles

For Each oFolder In colFolders.SubFolders
Select Case LCase(oFolder.Name)
Case "admin", "administrator", "newuser", "all users", "default user.original", "localservice", "networkservice"
'DO NOTHING
Case Else
'Set up environment
Set WSHShell = CreateObject("WScript.Shell")
Set fso = createobject("Scripting.FileSystemObject")
userProfile = WSHShell.ExpandEnvironmentStrings("%userprofile%")
Windir = WSHShell.ExpandEnvironmentStrings("%windir%")

'start deleting files
Set oFolder1 = fso.GetFolder(userProfile & "\Local Settings\Temp\")
For Each oFile In oFolder1.files
oFile.Delete True
Next

'Delete folders and subfolders
Set colSubfolders1 = oFolder1.Subfolders
On Error Resume Next
For Each oSubfolder in colSubfolders1
fso.DeleteFolder(oSubFolder), True
Next
Set oFolder2 = fso.GetFolder(userProfile & "\Local Settings\Temporary Internet Files\")
For Each oFile In oFolder2.files
oFile.Delete True
Next
Set colSubfolders2 = oFolder2.SubFolders
For Each oSubfolder in colSubfolders2
fso.DeleteFolder(oSubFolder)
Next
Set oFolder3 = fso.GetFolder(Windir & "\Temp\")
For Each oFile In oFolder3.files
oFile.Delete True
Next
Set colSubfolders3 = oFolder1.Subfolders
For Each oSubfolder in colSubfolders3
fso.DeleteFolder(oSubFolder)
Next

End Select
Next

'Clear memory
Set fso = Nothing
Set oFolder1 = Nothing
Set oFolder2 = Nothing
Set oFolder3 = Nothing
Set oSubFolder1 = Nothing
Set oSubFolder2 = Nothing
Set oSubFolder3 = Nothing
Set colSubfolders1 = Nothing
Set colSubfolders2 = Nothing
Set colSubfolders3 = Nothing
Set oFile = Nothing
Set userProfile = Nothing
Set Windir = Nothing

WScript.Quit

Tá Prontinho! É só recortar e colar. Apenas atente ao perfil do Outlook, pode ser que em sua empresa ele esteja em outra pasta. Espero ter ajudado!!

segunda-feira, 7 de junho de 2010

Erro NetLogon 5719

Um notebook velho da Dell que tinhamos aqui, foi passado para deixar na recepção, pois tem placa de rede wireless e dá pra rodar alguns programas do escritório.

Depois de formatá-lo e instalar o windows e o office via R.I.S. (ou Windows Deployment Services para as versões mais novas), fui aplicar a instalação dos softwares da empresa via GPO.

De jeito nenhum funcionava. Não aplicava a politica para o computador não importa o que eu fizesse, nem gpupdate /sync /force /boot, conforme pode ser visto no meu primeiro post, neste link.

Então, utilizando o Group Policy Management Console (GPMC) fiz algumas simulações de ambiente e obtive o seguinte erro:

Instalação de software

Instalação de software did not complete policy processing because a system restart is required for the settings to be applied.
Group Policy will attempt to apply the settings the next time the computer is restarted.

Additional information may have been logged. Review the Policy Events tab in the console or the application event

log for events between 14/5/2010 15:57:22 and 14/5/2010 15:57:25.

Localizei então no Event Viewer o erro:

Tipo de evento: Erro
Origem do evento: NETLOGON
Categoria do evento: Nenhum
Identificação do evento: 5719
Data: 9/28/2001
Hora: 16:12:55
Usuário: N/D
Computador Server
Descrição:
Nenhum controlador de domínio do Windows NT ou Windows 2000 está disponível para o domínio . O seguinte erro ocorreu: Atualmente não há servidores de logon disponíveis para executar a solicitação de logon.
Dados: 0000: c00000

Verificando na internet, pude localizar a solução na seguinte KB da Microsoft: KB 310339

Mas para facilitar a vida do visitante já vou postar a solução, que requer editar o registro da maquina local que está dando o problema.

Uma possível causa deste erro é a falta de espaço no buffer de datagrama ou NetBT. Para resolver isto, voce precisará abrir o editor de registro do Windows.

Vamos pressupor que será utilizado o REGEDIT, através do Menu Iniciar>Executar>Regedit.exe

Localize a entrada HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters

Após, clique com o botão direito do mouse em Parâmetros, clique em Novo e em REG_DWORD -ou- No menu Editar, clique em Novo e em REG_DWORD e adicione as novas informações da chave de registro conforme abaixo:

Nome do valor: MaxDgramBuffering Tipo de dados: REG_DWORD Valor: 0x40000

Lembre-se: no registro do windows não vai aparecer 0x400000 mas sim 0x00400000 - o que é a mesma coisa.. você, concentrado no problema, vai perceber que não ficou igualzinho a solução e vai achar estranho. Porém está correto.

A Entrada de seu registro deve ficar assim:



Reinicie o computador e verifique se está funcionando!!

Espero ter ajudado! As vezes as soluções das KB's da Microsoft são meio confusas e alguns sites que postam soluções são pagos, requerem registro, ou seja são chatos pra caramba. Quero sempre poder ajudar. Conforme vão surgindo os problemas mais cabeludos vou postando aqui. Se esta solução não funcionou em seu computador, comente e vamos juntos tentar achar a solução.

Abraços!