Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Учёт траффика Добавлено: 15.07.03 01:47  

Автор вопроса:  Padre  | Web-сайт: localhost | ICQ: 346632205 
Пордскажите кто-нить как учитывать траффик под диалап и под DSL соединение

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #1
Добавлено: 15.07.03 03:50

'Вот код модуля, в зависимости от операционной системы, используются и соответствующие процедуры...

Option Explicit

Private Declare Function RasGetConnectionStatistics Lib "rasapi32.dll" (ByVal hRasConn As Long, lpStatistics As RASSTATS2000) As Long

Public Type RASSTATS2000

dwSize As Long

dwBytesXmited As Long 'The number of bytes transmitted through this connection or link.

dwBytesRcved As Long 'The number of bytes received through this connection or link.

dwFramesXmited As Long 'The number frames transmitted through this connection or link.

dwFramesRcved As Long 'The number of frames received through this connection or link.

dwCrcErr As Long 'The number of cyclic redundancy check (CRC) errors on this connection or link.

dwTimeoutErr As Long 'The number of timeout errors on this connection or link.

dwAlignmentErr As Long 'The number of alignment errors on this connection or link.

dwHardwareOverrunErr As Long 'The number of hardware overrun errors on this connection or link.

dwFramingErr As Long 'The number of framing errors on this connection or link.

dwBufferOverrunErr As Long 'The number of buffer overrun errors on this connection or link.

dwCompressionRatioIn As Long 'The compression ratio for the data being received on this connection or link.

dwCompressionRatioOut As Long 'The compression ratio for the data being transmitted on this connection or link.

dwBps As Long 'The speed of the connection or link, in bits per second.

dwConnectDuration As Long 'The amount of time, in milliseconds, that the connection or link has been connected.

End Type

Public Type VBRasStats95

BytesXmited As Long 'The number of bytes transmitted through this connection or link.

BytesRcved As Long 'The number of bytes received through this connection or link.

FramesXmited As Long 'The number frames transmitted through this connection or link.

FramesRcved As Long 'The number of frames received through this connection or link.

CrcErr As Long 'The number of cyclic redundancy check (CRC) errors on this connection or link.

TimeoutErr As Long 'The number of timeout errors on this connection or link.

AlignmentErr As Long 'The number of alignment errors on this connection or link.

HardwareOverrunErr As Long 'The number of hardware overrun errors on this connection or link.

FramingErr As Long 'The number of framing errors on this connection or link.

BufferOverrunErr As Long 'The number of buffer overrun errors on this connection or link.

Runts As Long

TotalBytesXmited As Long

TotalBytesRcved As Long

ConnectSpeed As Long 'The amount of time, in milliseconds, that the connection or link has been connected.

End Type

Public Function VBRasGetStat2000(hRasConn As Long, myStats As RASSTATS2000) As Long

myStats.dwSize = Len(myStats)

VBRasGetStat2000 = RasGetConnectionStatistics(hRasConn, myStats)

End Function

Public Function VBRasGetStat9x(clsVBRasStats As VBRasStats95) As Long

Dim hKey As Long, rtn As Long, lngLen As Long, lResult As Long

On Error GoTo er

lResult = RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StatData", 0&, &H7, hKey)

With clsVBRasStats

lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\Buffer", 0&, ByVal 0&, .BufferOverrunErr, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\BytesRecvd", 0&, ByVal 0&, .BytesRcved, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\BytesXmit", 0&, ByVal 0&, .BytesXmited, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\ConnectSpeed", 0&, ByVal 0&, .ConnectSpeed, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\CRC", 0&, ByVal 0&, .CrcErr, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\Alignment", 0&, ByVal 0&, .AlignmentErr, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\FramesRecvd", 0&, ByVal 0&, .FramesRcved, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\FramesXmit", 0&, ByVal 0&, .FramesXmited, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\Framing", 0&, ByVal 0&, .FramingErr, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\Overrun", 0&, ByVal 0&, .HardwareOverrunErr, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\Runts", 0&, ByVal 0&, .Runts, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\Timeout", 0&, ByVal 0&, .TimeoutErr, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\TotalBytesRecvd", 0&, ByVal 0&, .TotalBytesRcved, lngLen)

lResult = lResult Or rtn: lngLen = 4

rtn = RegQueryValueEx(hKey, "Dial-Up Adapter\TotalBytesXmit", 0&, ByVal 0&, .TotalBytesXmited, lngLen)

lResult = lResult Or rtn

End With

Exit Function

er:

Call RegCloseKey(hKey)

Call MsgBox(GetINI("Msg", "m14", vbNullString), , "VBRasGetStat9x")

End Function

Ответить

Номер ответа: 2
Автор ответа:
 xShadow



ICQ: 52405490 

Вопросов: 7
Ответов: 11
 Профиль | | #2 Добавлено: 15.07.03 04:14

to Sne

- не будет это работать, есть еще RssEnumConnections и RasDial, из которых надо будет hRasConn вытягивать ...

Ответить

Номер ответа: 3
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #3
Добавлено: 07.10.03 01:58

Ну это уже само собой разумеющееся, я полагаю !?

Ответить

Номер ответа: 4
Автор ответа:
 xShadow



ICQ: 52405490 

Вопросов: 7
Ответов: 11
 Профиль | | #4 Добавлено: 24.03.04 04:22
- кстати говоря, нет, не само собой, тем кто незнает картину целиком, куски не помогут ...

Ответить

Номер ответа: 5
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #5
Добавлено: 24.03.04 18:46

Хорошо, для полноты картины, для NT, нужно получить hRasConn, т.е. хэндл соединения, его можно получить либо если мы сами звоним, ф-цией RasDial, либо RasEnumConnections, не путать с RasEnumEntryes, первая перечисляет все работающий на данный момент соединения, вторая же возвращает имена соединений, записанных в системе...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам