justforLord
asked on
(A grade for every who answer)I have asked 4 times no one gave me an good answer,this is the 5th:how can I get Default gateway?
Please don't give me link such as
"
For gateway check this:
https://www.experts-exchange.com/questions/10232657/IP-address-for-Gateway-DNS.html
For the MAC Address
https://www.experts-exchange.com/questions/20297408/MAC-address.html
For the subnet mask check this:
https://www.experts-exchange.com/questions/20570057/Getting-Subnet-mask.html
"
no use I have done experiments
-------------------------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- --------
please give me full Delphi unit code and fuction name to use it .Please do experiments to make sure that your unit work right,before you give your unit code to me!
and I suggest you dont use register function to get it (the reason is below) API *.dll function is the best way I think.
-------------------------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- --------
I tried some function but them dont work out.
Tell me some function to do this after your examination!Do give me anything you haven't haven a examination! had better give me full unit and function name to use this unit after your examination!I will give everyone A grade who answer!
had better dont use function of get register value
beacuse my register of gateway is strange such: HKEY_LOCAL_MACHINE/SYSTEM/ CurrentCon trolSet/Se rvices/{42 03270B-BDA F-418B-BF4 1-25697705 80C4}/Para meters/Tcp ip/Default Gateway
So I want such API function to get defaultgateway ,beacuse I want to get default gateway regardless of which way to register.
I have use some function:
function my_ip_address:longint;
const
bufsize=255;
var
buf: pointer;
//str: string;
RemoteHost : PHostEnt; (* No, don't free it! *)
begin
buf:=NIL;
try
getmem(buf,bufsize);
winsock.gethostname(buf,bu fsize); (* this one maybe without domain *)
RemoteHost:=Winsock.GetHos tByName(bu f);
if RemoteHost=NIL then
my_ip_address:=winsock.hto nl($070000 01) (* 127.0.0.1 *)
else
my_ip_address:=longint(poi nter(Remot eHost^.h_a ddr_list^) ^);
//str:= inet_addr(pointer(RemoteHo st^.h_addr _list^)^);
finally
if buf<>NIL then freemem(buf,bufsize);
end;
result:=winsock.ntohl(resu lt);
end;
function LongToIp(Long: Longint): string;
var
ipx: array[0..3] of Byte;
i: Byte;
begin
Longint(ipx) := long;
Result := '';
for i := 0 to 3 do Result := Result + IntToStr(ipx[i]) + '.';
SetLength(Result, Length(Result) - 1);
end;
but I don't have haven the correct answer from thoese two function
My Default GetWay:192.168.1.1 vpn host
my ip :192.168.1.103 in vpn
The GetWay above 192.168.1.1 : 218.86.198.1
mask:225.225.225.0
first DNS:202.98.192.68
second DNS:192.168.1.11
with the two function run
I got getway as 128.1.1.223 why?
where did 128.1.1.223 come from?
and I ping 128.1.1.223 I can't ping through it.
I can ping through 192.168.1.1 192.168.1.103 218.86.198.1 first DNS:202.98.192.68
second DNS:192.168.1.11
-------------------------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- --------
"
For gateway check this:
https://www.experts-exchange.com/questions/10232657/IP-address-for-Gateway-DNS.html
For the MAC Address
https://www.experts-exchange.com/questions/20297408/MAC-address.html
For the subnet mask check this:
https://www.experts-exchange.com/questions/20570057/Getting-Subnet-mask.html
"
no use I have done experiments
--------------------------
please give me full Delphi unit code and fuction name to use it .Please do experiments to make sure that your unit work right,before you give your unit code to me!
and I suggest you dont use register function to get it (the reason is below) API *.dll function is the best way I think.
--------------------------
I tried some function but them dont work out.
Tell me some function to do this after your examination!Do give me anything you haven't haven a examination! had better give me full unit and function name to use this unit after your examination!I will give everyone A grade who answer!
had better dont use function of get register value
beacuse my register of gateway is strange such: HKEY_LOCAL_MACHINE/SYSTEM/
So I want such API function to get defaultgateway ,beacuse I want to get default gateway regardless of which way to register.
I have use some function:
function my_ip_address:longint;
const
bufsize=255;
var
buf: pointer;
//str: string;
RemoteHost : PHostEnt; (* No, don't free it! *)
begin
buf:=NIL;
try
getmem(buf,bufsize);
winsock.gethostname(buf,bu
RemoteHost:=Winsock.GetHos
if RemoteHost=NIL then
my_ip_address:=winsock.hto
else
my_ip_address:=longint(poi
//str:= inet_addr(pointer(RemoteHo
finally
if buf<>NIL then freemem(buf,bufsize);
end;
result:=winsock.ntohl(resu
end;
function LongToIp(Long: Longint): string;
var
ipx: array[0..3] of Byte;
i: Byte;
begin
Longint(ipx) := long;
Result := '';
for i := 0 to 3 do Result := Result + IntToStr(ipx[i]) + '.';
SetLength(Result, Length(Result) - 1);
end;
but I don't have haven the correct answer from thoese two function
My Default GetWay:192.168.1.1 vpn host
my ip :192.168.1.103 in vpn
The GetWay above 192.168.1.1 : 218.86.198.1
mask:225.225.225.0
first DNS:202.98.192.68
second DNS:192.168.1.11
with the two function run
I got getway as 128.1.1.223 why?
where did 128.1.1.223 come from?
and I ping 128.1.1.223 I can't ping through it.
I can ping through 192.168.1.1 192.168.1.103 218.86.198.1 first DNS:202.98.192.68
second DNS:192.168.1.11
--------------------------
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Most honour to the only one and rightness and goodness!
Let's work for eachother just in rightness and goodness!
Let's work for eachother just in rightness and goodness!
ASKER
Thank the only one and rightness and goodness!
Let's work for eachother just in rightness and goodness!
Let's work for eachother just in rightness and goodness!
Does that mean the code worked? :)
ASKER
Most honour to Lord!
If God agree!
I love God!
you gave me a wonderful delphi code
If God agree!
I love God!
you gave me a wonderful delphi code
ASKER
we're not here to do the work for you: I hope you are just in rightness!
I will do hard work for you all just in rightness!
If you want help, ask in a civilized manner. I think I am very civilized just in rightness!
1) Multiple alias users for the same person are not allowed here yes,please delete the acount"forLord" dont delete this account If you think you must delete one of the two account,ok?