Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2009, 21:47   #1
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию Почему не работает исходник для отслеживания трафика

Есть исходник для отслеживания трафика,нормально компилируется,но при нажатии на кнопку ни чего не выдает
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  FlibHandle: THandle;
  dwInOctets :DWORD;
  dwOutOctets	:DWORD;
  dwPhysAddrLen: DWORD;
  bDescr		: array[0..255] of Char;
  bPhysAddr	: array[0..7] of Byte;
  GetIfTable:         pointer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
type TMAC = array [0..7] of Byte;
  function GetMAC(Value: TMAC; Length: DWORD): String;
  var
    i: Integer;
  begin
    if Length = 0 then Result := '00-00-00-00-00-00' else
    begin
      Result := '';
      for i:= 0 to Length -2 do
        Result := Result + IntToHex(Value[i],2)+'-';
      Result := Result + IntToHex(Value[Length-1],2);
    end;
  end;
begin
FLibHandle := LoadLibrary('IPHLPAPI.DLL'); 
GetIfTable:=GetProcAddress(FLibHandle, 'GetIfTable');
Label1.Caption:='Входящий трафик: '+IntToStr(dwInOctets);
Label2.Caption:='Исходящий трафик: '+IntToStr(dwOutOctets);
Label3.Caption:='МАС-адрес: '+(GetMAC(TMAC(bPhysAddr),dwPhysAddrLen));
FreeLibrary(FLibHandle);
end;
end.
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 18.03.2009, 23:14   #2
uberchel
Участник клуба
 
Аватар для uberchel
 
Регистрация: 19.01.2009
Сообщений: 1,454
По умолчанию

А у вас, на сколько я вижу библиотека .dll подгружается -она у вас есть?
uberchel вне форума Ответить с цитированием
Старый 19.03.2009, 21:11   #3
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Это системная dll.лежит по адресу \WINDOWS\system32\
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 20.03.2009, 01:09   #4
Виталий Серов
Заснувший
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 213
По умолчанию

У меня на базе этой библиотеки есть программа(она работает), если надо то дам исходник. Однако там код намного больше и сложнее чем у вас. Там его несколько кило текста, а вас несколько строк.
Сама прога по адресу vitalijsero.narod.ru/traff.exe
И у меня кстати этот код выдал кучу сообщений неопределённых переменных(идендификаторов)

Последний раз редактировалось Виталий Серов; 21.03.2009 в 00:56.
Виталий Серов вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему не работает тег align=right?valign работает а align нет! aviv HTML и CSS 5 21.01.2009 17:46
Не работает исходник. В чём проблемма? AngelOfDeath Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 13.11.2008 18:38
почему не работает domovoi Общие вопросы Delphi 1 15.10.2008 18:42