C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[19233] Re:[부탁] 델파이 --> 빌더 변환해 주실 고수님을 찾습니다.
유영인.Chris [cuperido] 785 읽음    2002-06-10 12:14
고수는 아니지만..


//---------------------------------------------------------------------------

#include <vcl.h>
#include <winsock.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
}
//---------------------------------------------------------------------------

String __fastcall TForm1::HostNameToIpAddr(String sHost)
{

hostent           *P;
in_addr           la;


P = gethostbyname(sHost.c_str());

if(P) {
   la.S_un.S_un_b.s_b1 = P->h_addr_list[0][0];
   la.S_un.S_un_b.s_b2 = P->h_addr_list[0][1];
   la.S_un.S_un_b.s_b3 = P->h_addr_list[0][2];
   la.S_un.S_un_b.s_b4 = P->h_addr_list[0][3];
}

return(inet_ntoa(la));

}
//---------------------------------------------------------------------------

String __fastcall TForm1::IpAddrToHostName(String sIP)
{

in_addr           la;
hostent           *P;


la.s_addr = inet_addr(sIP.c_str());

if(la.s_addr != u_long(INADDR_NONE)) {
   P = gethostbyaddr((char *)&la, 4, PF_INET);
   if(P) return(P->h_name);
}


return("Invalid IP address");

}
//---------------------------------------------------------------------------


void __fastcall TForm1::Button1Click(TObject *Sender)
{

ShowMessage( HostNameToIpAddr("kns.kornet.net") );
ShowMessage( IpAddrToHostName("168.126.63.1") );

}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)
{

WORD wVersionRequested;
WSADATA WSAData;
wVersionRequested = MAKEWORD(1,1);
WSAStartup(wVersionRequested,&WSAData);

}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormDestroy(TObject *Sender)
{

WSACleanup();

}
//---------------------------------------------------------------------------




에궁... 님이 쓰신 글 :
: 델파이는 암것도 모르는데..제가 원하는 소스를 델파이로 만든걸 찾았거든여..
:
: 아래 소스인데.....델파이 잘하시는분 빌더로 변환좀 해주세염..
:
: 빌더랑 비슷한거 같은데..제 딴에 조금 고쳤더니..에러 무자게 많이 뜨더군여..-_-;;
:
: 참 이 소스 IP를 호스트 네임으로 호스트 네임을 아이피로 변환해 주는 함수입니다.
:
:
: uses WinSock
:
: function HostNameToIpAddr(const sHost: string): string;
: var
: P: PHostEnt;
: Ia: TInAddr;
: begin
: Ia.S_addr := 0;
: P := gethostbyname(PChar(sHost));
: if P <> NIL then
: with Ia.S_un_b, P^ do
: begin
: s_b1 := h_addr_list^[0];
: s_b2 := h_addr_list^[1];
: s_b3 := h_addr_list^[2];
: s_b4 := h_addr_list^[3];
: end;
: Result := inet_ntoa(ia);
: end;
:
:
:
: function IpAddrToHostName(const sIP: string): string;
: var
: I: Integer;
: P: PHostEnt;
: begin
: Result := '';
: I := inet_addr(PChar(sIP));
: if I <> u_long(INADDR_NONE) then
: begin
: P := GetHostByAddr(@I, SizeOf(Integer), PF_INET);
: if P <> NIL then
:   Result := P^.h_name;
: end else
: Result := 'Invalid IP address';
: end;
:

+ -

관련 글 리스트
19084 [부탁] 델파이 --> 빌더 변환해 주실 고수님을 찾습니다. 에궁... 717 2002/06/03
19233     Re:[부탁] 델파이 --> 빌더 변환해 주실 고수님을 찾습니다. 유영인.Chris 785 2002/06/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.