Приветствую Вас Гость | RSS

Меню сайта

Категории раздела
Мои статьи [11]
Видео [3]

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » Мои статьи

Проброс портов uPNP
unit Unit1;
 
interface
 
uses
 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, WinSock ,
 oleAuto, Vcl.StdCtrls;
type
 TForm1 = class(TForm)
 Button1: TButton;
 procedure Button1Click(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;
 
var
 Form1: TForm1;
implementation
 
{$R *.dfm}
 
function GetLocalIP: String;//Получить локальный IP компьютера
const WSVer = $101;
var
 wsaData: TWSAData;
 P: PHostEnt;
 Buf: array [0..127] of Char;
begin
 Result := '';
 if WSAStartup(WSVer, wsaData) = 0 then begin
 if GetHostName(@Buf, 128) = 0 then begin
 P := GetHostByName(@Buf);
 if P <> nil then Result := iNet_ntoa(PInAddr(p^.h_addr_list^)^);
 end;
 WSACleanup;
 end;
end;
 
 Procedure AddUPnPEntry(Port: Integer; const Name: ShortString; LAN_IP: string);
Var
 Nat: Variant;
 Ports: Variant;
 SavedCW: Word;
Begin
 if NOT(LAN_IP = '127.0.0.1') then
 begin
try
 Nat := CreateOleObject('HNetCfg.NATUPnP');
 Ports := Nat.StaticPortMappingCollection;
 

Категория: Мои статьи | Добавил: Mitiay (27.05.2014)
Просмотров: 370 | Теги: исходники, UPNP | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
  Мой сайт   Главная   Регистрация   Вход  
Форма входа

Поиск

  • Есть вопросы?
  • Друзья сайта


    Разработка программного обеспечения
    Copyright MyCorp © 2024 Бесплатный хостинг uCoz