Usuário com melhor resposta
Problema Script de Inicialização

Pergunta
-
Amigos,
Conforme lido em alguns posts anteriores resolvemos implementar um script na inicialização de cada maquina fazendo o seguinte.
echo Username - %username% / Machine - %computername% / Date - %date% / %time%>> \\srv03\logon\info.txt
Com esse script ele deveria gravar no arquivo info.txt as informações de logon como usuario / maquina / dia do logon / hora, so que não e o que está ocorendo, tipo alguns logons ele não grava o nome do usuario.
Abaixo o log gerado pelo script.
Username - / Machine - PESSOAL04 / Date - seg 04/06/2007 / 10:14:36,41
Username - mpires / Machine - PESSOAL04 / Date - seg 04/06/2007 / 10:19:28,76
Username - / Machine - CONTROLADORA / Date - seg 04/06/2007 / 10:50:29,32
Username - lmousquer / Machine - CONTROLADORA / Date - seg 04/06/2007 / 10:50:42,71
Username - / Machine - PROCURADORIA02 / Date - seg 04/06/2007 / 11:22:29,40
Username - darantes / Machine - PROCURADORIA02 / Date - seg 04/06/2007 / 11:22:44,41
Username - / Machine - DETIN01 / Date - seg 04/06/2007 / 12:52:56,56
Username - / Machine - PESSOAL03 / Date - seg 04/06/2007 / 12:54:12,20
Username - / Machine - CONTABIL03 / Date - seg 04/06/2007 / 13:05:58,46
Username - / Machine - PESSOAL01 / Date - seg 04/06/2007 / 13:08:15,22
Username - aoliveira / Machine - PESSOAL01 / Date - 04/06/2007 / 13:08:23,06
Username - narantes / Machine - CONTABIL03 / Date - 04/06/2007 / 13:08:05,46
Username - / Machine - PROTOCOLO01 / Date - seg 04/06/2007 / 13:09:28,17
Username - protocolo01 / Machine - PROTOCOLO01 / Date - seg 04/06/2007 / 13:10:56,53
Username - protocolo01 / Machine - PROTOCOLO01 / Date - seg 04/06/2007 / 13:12:24,09
Username - / Machine - PROTOCOLO01 / Date - seg 04/06/2007 / 13:12:24,29
Username - mpires / Machine - PESSOAL04 / Date - seg 04/06/2007 / 13:16:45,53
Username - / Machine - PESSOAL04 / Date - seg 04/06/2007 / 13:16:58,15
Username - / Machine - CONTABILIDADE05 / Date - ter 01/01/2002 / 1:01:35,09
Username - icorrea / Machine - CONTABILIDADE05 / Date - ter 01/01/2002 /Alguem saberia me dizer o pq disso?
Wagner
Respostas
-
Olá,
pelo que eu entendi, o correto seria colocar esse script como script de inicialização, não de startup.
[]s,
Vinicius Canto
MVP Scripting- Marcado como Resposta Fábio JrModerator segunda-feira, 5 de dezembro de 2011 13:15
Todas as Respostas
-
Olá,
pelo que eu entendi, o correto seria colocar esse script como script de inicialização, não de startup.
[]s,
Vinicius Canto
MVP Scripting- Marcado como Resposta Fábio JrModerator segunda-feira, 5 de dezembro de 2011 13:15
-
-
-
Fala Wagner eu costumo usar esse vbs aki...uso para executar auditoria nas estalções de trabalho.
Uso via gpo na parte de logon, porém o contra é que os usuários devem ter permissão para gravar na pasta.
Code Snippet'Inventario basico da Estação de Trabalho
'Romeu Malacarne Avancini - rmavancini@gmail.comstrComputer = "."
Set objWMIService = GetObject("winmgmts:\\"& strComputer & "\root\cimv2")Set colSettings = objWMIService.ExecQuery ("Select * from Win32_ComputerSystem")
Set colBIOS = objWMIService.ExecQuery ("Select * from Win32_BIOS")
Set colDisks = objWMIService.ExecQuery ("Select * from Win32_LogicalDisk")
Set colAdapters = objWMIService.ExecQuery ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")Set oNetwork = CreateObject("WScript.Network")
Dim fso, sf, StrNew, strDay, strMonth, srtYear,strTime, UNC, strComputer, strUser, strManufac, strModel, strSerial, strBVersion
Dim strMemo, strMac, strIp, strDiskToal, strDiskFree
'aqui você coloca o caminho do compartilhamento.
UNC = "\\servidor\LAST_LOGON$\"
strComputer = oNetwork.ComputerName
struser = oNetwork.UserName
systime = Now()
srtDay = cstr(day(systime))
strMonth = cstr(month(systime))
strYear = cstr(year(systime))
strTime = cstr(Time())
Const ForAppending = 8For Each objComputer in colSettings
strManufac = objComputer.Manufacturer
strModel = objComputer.Model
strMemo = objComputer.TotalPhysicalMemory/1024000
NextFor each objBIOS in colBIOS
strSerial = objBIOS.SerialNumber
strBVersion = objBIOS.Version
Next
n = 1
For each objNetwork in colAdapters
strMac = objNetwork.MACAddress
If Not IsNull(objNetwork.IPAddress) Then
For i = 0 To UBound(objNetwork.IPAddress)
strIp = objNetwork.IPAddress(i)
Next
End If
n = n + 1
NextFor each objDisk in colDisks
strDiskTotal = objDisk.Size/1024
strDiskFree = objDisk.FreeSpace/1024
NextSet fso = CreateObject("Scripting.FileSystemObject")
StrNew = UNC & strComputer &".log"
set sf=fso.OpenTextFile (StrNew, ForAppending, True)
sf.writeline "Date ="& srtDay &"-"& strMonth &"-"& strYear &"; Time ="& strTime &"; UserID ="& strUser & _
"; Manufacturer =" & strManufac & "; Model ="& strModel &"; Serial Number ="& strSerial & "; BIOS Version =:"& strBVersion & _
"; Memoria Fisica Total ="& strMemo &"; MAC ADDRESS ="& strMac & "; IP ADDRESS ="& strIp & _
"; Disk Size ="& strDiskTotal &"; Free Space ="& strDiskFreeBoa sorte!!
Ps.: Se você der uma melhorada nele, posta no forum pra gente!
Abraço.
Romeu.
-
Vale lembrar que, mesmo sendo o seu script, precisa ser colocado como script de startup, e não de inicialização. Isso acontece porque alguns dos dados que vc usa no script (o nome do usuário, por exemplo) só estão disponíveis depois do usuário completar o logon dele.
[]s,
--
Vinicius Canto <scripterbr_at_gmail_dot_com>
MVP Visual Developer - Scripting
MCP Windows 2000 Server, Windows XP e SQL Server 2000
Bacharelando em Ciências da Computação - USP
Blog sobre scripting: http://viniciuscanto.blogspot.com