Home » Delphi » Delphi Code Mendapatkan Nama Interface Network Hanya Dari TAP-Win32 Provider V9 Adapter

Delphi Code Mendapatkan Nama Interface Network Hanya Dari TAP-Win32 Provider V9 Adapter

Delphi Code Mendapatkan Nama Interface Network Hanya Dari TAP-Win32 Provider V9 Adapter

Bagi yang ingin membuat atau mengembangkan sendiri software Tun2Socks atau Socks2Tap baik mau edit source code dari yang Om David yang mungkin pertama kali yang membuat ini software. Ini delphi code yang ingin saya share adalah dari codenya Om David. Cuma saya edit sedikit untuk cara mendapatkan nama interface networknya. Code dari Om David interface networknya terekam semua termasuk dari adapter-adapter wlan, modem, lan, dsb. Jadinya ketika mencari pilihan di combo box nya bingung yang mana adapter TAP-Win32 Provider V9 Adapter. Jadi dengan code ini software Tun2Socks nantinya akan otomatis cuma menampilkan nama interface network hanya yang dari TAP-Win32 Provider V9 Adapter saja.

tap-win32_adapter.png

Delphi codenya :

// INI ADALAH BAGIAN UNTUK MENDAPATKAN NAMA INTERFACE NETWORK

uses WbemScripting_TLB, activex;

type TIWrapper=class
public
prop:ISWbemProperty;
constructor Create(p:ISWbemProperty);
end;

constructor TIWrapper.Create(p: ISWbemProperty);
begin
prop:=p;
end;

procedure clear(Adapters:TStrings);
var i:integer;
begin
for i:=1 to Adapters.Count do
begin
Adapters.Objects[i-1].Free;
Adapters.Objects[i-1]:=nil;
end;
Adapters.Clear;
end;

function getPropValue(sprop:ISWbemProperty):string;
var sValue:string;
count:integer;
begin
sValue := ”;
if VarIsNull(SProp.Get_Value) then
sValue := ‘<empty>’
else
case SProp.CIMType of
wbemCimtypeSint8, wbemCimtypeUint8, wbemCimtypeSint16, wbemCimtypeUint16,
wbemCimtypeSint32, wbemCimtypeUint32, wbemCimtypeSint64:
sValue := IntToStr(SProp.Get_Value);
wbemCimtypeString, wbemCimtypeUint64:
if VarIsArray(SProp.Get_Value) then
begin
if VarArrayHighBound(SProp.Get_Value, 1) > 0 then
for Count := 1 to VarArrayHighBound(SProp.Get_Value, 1) do
sValue := sValue + ‘ ‘ + SProp.Get_Value[Count];
end
else
sValue := SProp.Get_Value;
wbemCimtypeDatetime:sValue:=SProp.Get_Value//DateTimeToStr(SProp.Get_Value)
else
Exception.Create(‘Unknown type’);
end; {case}
result:=sValue;
end;

procedure getAdapters(owner:TComponent; RemoteMachine,RemoteUser,
RemotePassword:string; Adapters:TStrings);

const
cWQL = ‘SELECT NetConnectionID, NetConnectionStatus FROM Win32_NetworkAdapter Where Manufacturer = “TAP-Win32 Provider V9″‘;

var
aLoc : ISWbemLocator;
aSrv : ISWbemServices;
aObjSet : ISWbemObjectSet;
pEnum : IEnumVARIANT;
vOut : OleVariant;
dwRetrieved : LongWord;
hRes : HResult;
sNetConnectionID : String;
iNetConnectionStatus : Integer;

begin
aLoc := CoSWbemLocator.Create;
aSrv := aLoc.ConnectServer (”,’root\cimv2′, ”,”,”,”,0, nil);
aSrv.Security_.ImpersonationLevel := wbemImpersonationLevelImpersonate;
aObjSet := aSrv.ExecQuery (cWQL, ‘WQL’, 0, nil);
pEnum := aObjSet.Get__NewEnum as IEnumVARIANT;

while (true) do
begin
hRes := pEnum.Next (1, vOut, dwRetrieved);

if not (hRes = S_OK) then
Break;

if (VarIsNull (vOut.NetConnectionID)) then
Continue;

sNetConnectionID := vOut.NetConnectionID;

iNetConnectionStatus := vOut.NetConnectionStatus;

Adapters.Add (Format (‘%s’, [sNetConnectionID, iNetConnectionStatus]));
end; { while }
end;

// AKHIR CODE MENDAPATKAN INTERFACE NETWORK

Code “cWQL = ‘SELECT NetConnectionID, NetConnectionStatus FROM Win32_NetworkAdapter Where Manufacturer = “TAP-Win32 Provider V9″‘;

Itulah yang berfungsi memanggil dan menampilkan interface network name yang hanya dari TAP-Win32 Provider V9. Mungkin biasa dikembangkan lagi jika ingin difungsikan untuk memanggil interface network name lainnya.

Hasilnya nanti akan kurang lebih seperti ini. Pilihan TAP Name-nya cuma 1, bisa 2 atau lebih jika Anda menginstall banyak TAP-Win32 Adapter banyak.

get_name_tap-win32_adapter.png

Untuk membuang atau un-install TAP-Win32 Adapter Anda bisa menggunakan referensi tutorial berikut => http://masyono.com/262/install-tap-win32-adapter-tanpa-install-openvpn.html

Good Luck

Sing podo digolek'i :

cara mendapatkan ip sakti indosat, kegunaan tap vpn, cara menggunakan debian noroot, kegunaan tapvpn, tap vpn pro apk, Indosatoredo, Cara mendapatkan ip 100, tap vpn pro, cara mendapatkan ip 100 indosat, cara mendapatkan ip sakti http injector

[ DOWNLOAD Delphi Code Mendapatkan Nama Interface Network Hanya Dari TAP-Win32 Provider V9 Adapter ]

Related Posts To "Delphi Code Mendapatkan Nama Interface Network Hanya Dari TAP-Win32 Provider V9 Adapter"

Tags: ,

This entry was posted on Wednesday, April 8th, 2015 at 8:45 pm and is filed under Delphi. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply