PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
23885 12/08/03 11:11:15 RE(1):WinSockでローカルIPアドレスを取得する方法 By kouz
23884 12/08/03 10:49:28 WinSockでローカルIPアドレスを取得する方法 By kouz

カテゴリ:スクリプトの記述
日付:2012年08月03日 10:49 発信者:kouz
題名:WinSockでローカルIPアドレスを取得する方法

PCのIPアドレスを取得したいのですが?
ログ検索で14263の質問回答から同様に記述をしましたが、
結果、IPアドレスがバケ化けしてしまいました。
どこがおかしいのでしょうか?
OS:Windows7
PowerBuilder12.1 Build 6518J

【構造体】
WSADATA{
 unsignedlong wVersion;
 unsignedlong wHighVersion;
 character szDescription[257];
 character szSystemStatus[129];
 unsignedinteger iMaxSockets;
 unsignedinteger iMaxUdpDg;
 string lpVendorInfo;
}

HOSTENT{
 unsignedlong h_name;
 unsignedlong h_aliases;
 unsignedinteger h_addrtype;
 unsignedinteger h_length;
 unsignedlong h_addr_list;
}

【外部関数】
FUNCTION long WSAStartup(uint wVersionRequested, REF WSADATA lpWSAData) library \"wsock32.dll\" 
alias for \"WSAStartup;Ansi\"
FUNCTION long WSACleanup() library \"wsock32.dll\" alias for \"WSACleanup;Ansi\"
FUNCTION long gethostname(ref string szName, long lNameLength) library \"wsock32.dll\" alias 
for \"gethostname;Ansi\"
FUNCTION long gethostbyname(string szName) library \"wsock32.dll\" alias for \"gethostbyname;Ansi\"
FUNCTION long inet_ntoa(ulong ulAddr) library \"wsock32.dll\" alias for \"inet_ntoa;Ansi\"
subroutine RtlMoveMemory(REF HOSTENT buf, ulong p, long s) library \"kernel32.dll\" alias 
for \"RtlMoveMemory;Ansi\"
subroutine RtlMoveMemory(REF ulong buf, ulong p, long s) library \"kernel32.dll\" alias 
for \"RtlMoveMemory;Ansi\"

【スクリプト】
記述内容は、同じ記述としています。

DOSプロンプトのipconfigでは、172.27.232.7と表示されていますが
PBのデバッグをするとinet_ntoaの引数内容は、132651948となっています。

誰か、ご教授の程、お願い致します。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS (記載なし)
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.