我是一个新手,请大家帮忙!
如何通过网络获得对方计算机的IP地址,如何写代码!还有需要的控件。
获得对方的IP之后怎样获得对方计算机的权限。
求大家帮忙!本人十分感谢!
如何通过网络获得对方计算机的IP地址,如何写代码!还有需要的控件。
获得对方的IP之后怎样获得对方计算机的权限。
求大家帮忙!本人十分感谢!
解决方案 »
- SQL查询的问题
- 如何去掉MDI父窗体的滚动条?
- 急!拜读了李维《Delphl5.x ADO/MTS/COM+高级程序设计篇》大作,毕竟是很久以前的书,请问最新的COM+书籍有哪些?
- 如何判断MDI窗体的某个子窗体是否被create?
- 文件操作问题:改名,删除,移动
- 急!请教各位大侠,在ttable控件中有一个属性是indexfieldnames,这个属性里设的值是起什么作用的,和实际数据库中表的index有什么关系吗
- 如何把图象存入/取出数据库
- 那么难码,怎么没有人会阿 !!!dbgrid 问题
- 关于SQL SERVER主键的问题
- 如何把dbgrid 或 adoquery里的记录输出到execel
- 怎样才能知道某个MDI子窗口已经创建,然后显示在最前面?
- 键盘和鼠标勾子的问题,一直都想不明白!!高手请进!!
gethostbyname()
下面抄的:
function GetIPFromHost(const Name: string): string;
var
wsdata: TWSAData;
hostName: array[0..255] of char;
hostEnt: PHostEnt;
addr: PChar;
begin
WSAStartup($0101, wsdata);
try
gethostname(hostName, sizeof(hostName));
StrPCopy(hostName, Name);
hostEnt := gethostbyname(hostName);
if Assigned(hostEnt) then
if Assigned(hostEnt^.h_addr_list) then
begin
addr := hostEnt^.h_addr_list^;
if Assigned(addr) then
begin
Result := Format('%d.%d.%d.%d', [byte(addr[0]),
byte(addr[1]), byte(addr[2]), byte(addr[3])]);
end
else
Result := '';
end
else
Result := ''
else
begin
Result := '';
end;
finally
WSACleanup;
end
end;
//根据IP地址获取对方计算机名函数
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe :PHostEnt;
pptr : PaPInAddr;
I : Integer;
GInitData : TWSADATA;
begin
WSAStartup($101, GInitData);
Result := '';
phe :=GetHostByName(pchar(Name));
pptr := PaPInAddr(Phe^.h_addr_list);
result:=StrPas(inet_ntoa(pptr^[0]^));
WSACleanup;
end;function GetDomainName(Ip:string):string;
//根据计算机名获取IP地址函数
var
pH:PHostent;
data:twsadata;
ii:dword;
begin
WSAStartup($101, Data);
ii:=inet_addr(pchar(ip));
pH:=gethostbyaddr(@ii,sizeof(ii),PF_INET);
if (ph<>nil) then
result:=pH.h_name
else
result:='';
WSACleanup();
end;
还是搞不定,请大家帮忙。
上面那位老兄说的PHostEnt、PaPInAddr、inet_addr这些在我的机器里编译通不过
说是没有定义,但我用F1也找不到,请那位老兄帮忙!
USES winsock