NOME DO GRUPO DE TRABALHO NA REDE
BOM DIA PESSOAL
é POSSÃVEL CAPTURAR O NOME DO GRUPO DE TRABALHO NA DE VIA VB?
PARA GRAVAR EM UM BD,
O OBJETIVO é TER CONTROLE DE ACESSO DO APLICATIVO ON LINE, SABER QUE ACESSOU E DA ONDE,
ESPECIFICANDO USUARIO, HD, NOME DO MICRO E O GRUPO DE TRABALHO,
NO MEU CASO OS DEMAIS ESTÃO OK, PRECISO SOMENTE DO GRUPO DE TRABALHO
OBRIGADO
é POSSÃVEL CAPTURAR O NOME DO GRUPO DE TRABALHO NA DE VIA VB?
PARA GRAVAR EM UM BD,
O OBJETIVO é TER CONTROLE DE ACESSO DO APLICATIVO ON LINE, SABER QUE ACESSOU E DA ONDE,
ESPECIFICANDO USUARIO, HD, NOME DO MICRO E O GRUPO DE TRABALHO,
NO MEU CASO OS DEMAIS ESTÃO OK, PRECISO SOMENTE DO GRUPO DE TRABALHO
OBRIGADO
Tá na mão...
Em um módulo vc coloca:
Type WKSTA_INFO_101
wki101_platform_id As Long
wki101_computername As Long
wki101_langroup As Long
wki101_ver_major As Long
wki101_ver_minor As Long
wki101_lanroot As Long
End Type
Declare Function NetWkstaGetInfo& Lib [Ô]Netapi32[Ô] _
(strServer As Any, ByVal lLevel&, pbBuffer As Any)
Declare Sub lstrcpyW Lib [Ô]kernel32[Ô] (dest As Any, ByVal src As Any)
Declare Sub RtlMoveMemory Lib [Ô]kernel32[Ô] _
(dest As Any, src As Any, ByVal size&)
Declare Function NetApiBufferFree& Lib [Ô]Netapi32[Ô] (ByVal buffer&)
Function GetWorkgroup() As String
Dim ret As Long, buffer(512) As Byte, i As Integer
Dim wk101 As WKSTA_INFO_101, pwk101 As Long
Dim langroup As String
ret = NetWkstaGetInfo(ByVal 0&, 101, pwk101)
RtlMoveMemory wk101, ByVal pwk101, Len(wk101)
lstrcpyW buffer(0), wk101.wki101_langroup
i = 0
Do While buffer(i) <> 0
langroup = langroup & Chr(buffer(i))
i = i + 2
Loop
ret = NetApiBufferFree(pwk101)
GetWorkgroup = langroup
End Function
Para obter o grupo de trabalho, basta chamar a função GetWorkgroup
p. ex:
MsgBox GetWorkgroup
Em um módulo vc coloca:
Type WKSTA_INFO_101
wki101_platform_id As Long
wki101_computername As Long
wki101_langroup As Long
wki101_ver_major As Long
wki101_ver_minor As Long
wki101_lanroot As Long
End Type
Declare Function NetWkstaGetInfo& Lib [Ô]Netapi32[Ô] _
(strServer As Any, ByVal lLevel&, pbBuffer As Any)
Declare Sub lstrcpyW Lib [Ô]kernel32[Ô] (dest As Any, ByVal src As Any)
Declare Sub RtlMoveMemory Lib [Ô]kernel32[Ô] _
(dest As Any, src As Any, ByVal size&)
Declare Function NetApiBufferFree& Lib [Ô]Netapi32[Ô] (ByVal buffer&)
Function GetWorkgroup() As String
Dim ret As Long, buffer(512) As Byte, i As Integer
Dim wk101 As WKSTA_INFO_101, pwk101 As Long
Dim langroup As String
ret = NetWkstaGetInfo(ByVal 0&, 101, pwk101)
RtlMoveMemory wk101, ByVal pwk101, Len(wk101)
lstrcpyW buffer(0), wk101.wki101_langroup
i = 0
Do While buffer(i) <> 0
langroup = langroup & Chr(buffer(i))
i = i + 2
Loop
ret = NetApiBufferFree(pwk101)
GetWorkgroup = langroup
End Function
Para obter o grupo de trabalho, basta chamar a função GetWorkgroup
p. ex:
MsgBox GetWorkgroup
Tópico encerrado , respostas não são mais permitidas