Visual Basic - NO SE ENCUENTRA EL ARCHIVO NETAPI32.DLL!! URGENTE

Life is soft - evento anual de software empresarial
Filtrado por el usuario: yo mismo
<<>>
Filtrado por el usuario 'yo mismo' (Eliminar fitro)
 
Vista:

NO SE ENCUENTRA EL ARCHIVO NETAPI32.DLL!! URGENTE

Publicado por Franlibert (193 intervenciones) el 04/11/2005 18:23:21
hola colega, tengo un gran problema con mi aplicacion, el equipo que estoy
programando tiene sistema operativo Windows Xp funciona perfectamente pero en
los usuarios de windows 98 no, he realizo la codificación para asignar a mi
programa la hora del servidor al grabar los registros pero cuando intento
correr el sistema en las pc con windows 98 me muestra un mensaje de error que
dice que "No se encuentra el archivo Netapi32.Dll" al buscar el archivo en la
maquina donde muestra el error lo encuentro en la carpeta C:\Windows\System\
ya que tambien cuando hize el empaquetado para la instalacion fue agregado.
Que podra suceder con este error y como podre solucionarlo??? Gracias por la
ayuda, se que este material puede ser provechoso para muchos amigos mas.

Este es el codigo que empleo para la hora, luego se llama a la funcion para
ejecutarla:

Public Declare Function NetRemoteTOD Lib "NETAPI32.DLL" _
(yServer As Any, _
pBuffer As Long) As Long

Public Declare Function NetApiBufferFree Lib "NETAPI32.DLL" _
(ByVal lpBuffer As Long) As Long

Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(hpvDest As Any, _
hpvSource As Any, _
ByVal cbCopy As Long)

Private Type TIME_OF_DAY
Elapsedt As Long
Msecs As Long
Hours As Long
Mins As Long
Secs As Long
Hunds As Long
Timezone As Long
Tinterval As Long
Day As Long
Month As Long
Year As Long
Weekday As Long
End Type
Const NERR_SUCESS = 0

Public Function fndServertime() As Date
Dim udtTime As TIME_OF_DAY
Dim pudtTime As Long
Dim lResult As Long
Dim abServer() As Byte
Dim dServDate As Date
Dim PserveRName As String
Dim TPTR
PserveRName = "SERVIDOR"
'Este nombre le buscas en el entorno de RED para saber
'como se llama, bajo la red de Windows, el servidor de datos
abServer = "\\" & PserveRName
lResult = NetRemoteTOD(abServer(0), pudtTime)

If lResult = NERR_SUCESS Then
'Ahora hay que copiar esa zona de memoria a nuestro udt.
CopyMemory udtTime, ByVal pudtTime, Len(udtTime)
NetApiBufferFree (TPTR)

'Por ultimo montamos la fecha
With udtTime
dServDate = DateSerial(.Year, .Month, .Day)
dServDate = dServDate + TimeSerial(.Hours, .Mins - .Timezone, .Secs)
fndServertime = dServDate
Date = dServDate
End With
Else
'Error. Poner tratamiento de errores (Ej: no existe el servidor)
End If
End Function
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:NO SE ENCUENTRA EL ARCHIVO NETAPI32.DLL!! URGEN

Publicado por Esteban (1144 intervenciones) el 07/11/2005 01:39:41
En primer lugar, ví el código y me pareció interesante, y lo ejecuté sobre 2 máquinas en 2 redes diferentes, en ambas me funciona hacer "net time", pero cuando ejecuto el código no me da nada, más bien lanza un valor 123, y me da problemas.

En una red el dominio es un 2003 en otro es un Linux con Samba, pero no ejecuta nada, o al menos no ejecuta nada bien.

Qué de especial tienes en la red para que pueda funcionar este código.

Por cierto, en Windows 98 la DLL no está, habría que copiarla para ver si funciona
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar