Boa Noite Galera
Desculpa se estou postando errado , mais preciso de uma ajuda muito grande de voceis,
Aqui na minha rede eu tenho Windows 2008 R2 X64 , com AD, tudo direitinho funcionando, e gostaria de bloquiar o multiplos logins, mais nao por maquina como da pra fazer no windows, ai eu li aqui mesmo no forum uma saida, e a fiz, porem estou com seguinte
problema
Quando o usuario faz o loguin no terminal, ele executa o script.
CODE
On Error Resume Next
'-- Inicia variável Logoff
Logoff = False
'-- Cria objeto Network
set oNet = Wscript.CreateObject("Wscript.Network")
'-- Cria objeto de Conexão
Set con = Wscript.CreateObject("ADODB.Connection")
'-- Abre conexão com o Banco
'-- Trocar os *** pelos dados do seu banco
con.Open "Provider=SQLOLEDB.1;Password=11319954;Persist Security Info=True;User ID=SA;Initial Catalog=LOGON;Data Source=INFOTEC2\SQLEXPRESS"
'-- Cria Recordset
Set rst = Wscript.CreateObject("ADODB.Recordset")
'-- Cria variavel com consulta verificando se usuário já existe na tabela
SQL = "select * from Usuarios where usuario = '" & oNet.UserName & "'"
'-- Abre recordset
rst.Open SQL, con, 2, 2
'-- Se retornou dados, seta variável Logoff como True
If Not rst.Eof Then
Logoff = True
End If
'-----------------------------------------
'-- Adicionando registro na tabela Usuarios
'-----------------------------------------
rst.AddNew
'-- Preenche colunas usuário, máquina e data
rst("usuario") = oNet.UserName
rst("maquina") = oNet.ComputerName
rst("data") = Date & " " & Time
'-- Update na base
rst.Update
'-- Fecha Recordset
rst.Close
'-- Destroi Objetos
Set rst = Nothing
Set con = Nothing
'-- Se Logoff = True, executa logoff
If Logoff = True Then
'-- Aguarda
WScript.Sleep 750
Const ForcedLogoff = 4
Set oShell = Wscript.CreateObject("WScript.Shell")
strComputer = oNet.ComputerName
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}\\" & _
strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery ("SELECT * FROM Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
ObjOperatingSystem.Win32Shutdown(0 + 4)
Next
'-- Aguarda
WScript.Sleep 1100
oShell.Run "shutdown.exe -l -f", 0, True
End If
'-- Destroi objeto Network
Set oNet = Nothing
"Obs esta sem os creditos , pq o script tava dando erro hehe"
Ele executa mais nao grava nada na DB , nisso passando alguns segundos ele gera o LogOff do nada, ele nao esta gravando nada na DB.
Poderiam me ajudar por gentileza
esse é o processo e o autor
http://www.portaltecnologia.net/2009/05/27/como-impedir-multiplos-logons-em-uma-rede-com-active-directory/