Pregunta: | 22913 - CONTROLAR LOS MB CONSUMIDOS DURANTE LA CONEXION A INTERNET |
Autor: | OvI WaNe |
Soy un programador novatillo y me gustaria crearme una aplicacion que me controle los Mb transferidos por internet durante la conexion. Querria saber con que control o api puedo extraer estos datos del sistema en tiempo real |
Respuesta: | SuNcO |
Con este codigo puedes ver varias cosas acerca de la conexion activa
Estas 2 son lo que tu buscas Debug.Print stat.dwBytesRcved Debug.Print stat.dwBytesXmited Te lo pongo completo por si algo mas te sirve. Para cerrar una conexion puedes buscar en internet la palabra clave "RasHangUp" Private Declare Function RasEnumConnections Lib "rasapi32" Alias "RasEnumConnectionsA" (ByVal lprasconn As Long, ByVal lpcb As Long, ByVal lpcConnections As Long) As Long Private Declare Function RasGetConnectionStatistics Lib "rasapi32" (ByVal hRasConn As Long, ByVal lpStatistics As Long) As Long Private Type RASCONN dwSize As Long hRasConn As Long szEntryName(0 To 256) As Byte szDeviceType(0 To 16) As Byte szDeviceName(0 To 128) As Byte pad As Byte End Type Private Type RAS_STATS dwSize As Long dwBytesXmited As Long dwBytesRcved As Long dwFramesXmited As Long dwFramesRcved As Long dwCrcErr As Long dwTimeoutErr As Long dwAlignmentErr As Long dwHardwareOverrunErr As Long dwFramingErr As Long dwBufferOverrunErr As Long dwCompressionRatioIn As Long dwCompressionRatioOut As Long dwBps As Long dwConnectDuration As Long End Type Private Sub Form_Load() Dim conn As RASCONN Dim stat As RAS_STATS Dim y As Long, z As Long conn.dwSize = Len(conn) y = conn.dwSize If RasEnumConnections(VarPtr(conn), VarPtr(y), VarPtr(z)) = 0 Then stat.dwSize = Len(stat) If RasGetConnectionStatistics(conn.hRasConn, VarPtr(stat)) = 0 Then 'Debug.Print stat.dwAlignmentErr 'Debug.Print stat.dwBps 'Debug.Print stat.dwBufferOverrunErr ' ----- Datos Recibidos y Transmitidos Debug.Print stat.dwBytesRcved Debug.Print stat.dwBytesXmited 'Debug.Print stat.dwCompressionRatioIn 'Debug.Print stat.dwCompressionRatioOut 'Debug.Print stat.dwConnectDuration 'Debug.Print stat.dwCrcErr 'Debug.Print stat.dwFramesRcved 'Debug.Print stat.dwFramesXmited 'Debug.Print stat.dwFramingErr 'Debug.Print stat.dwTimeoutErr End If End If End Sub |