PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
23735 10/10/29 10:25:49 RE(4):IPアドレスの取得(PB9→PB11.5) By mn
23734 10/10/28 19:37:34 RE(3):IPアドレスの取得(PB9→PB11.5) By hakobako
23733 10/10/28 18:14:05 RE(2):IPアドレスの取得(PB9→PB11.5) By mn
23732 10/10/27 17:31:18 RE(1):IPアドレスの取得(PB9→PB11.5) By hakobako
23731 10/10/27 12:02:57 IPアドレスの取得(PB9→PB11.5) By mn

カテゴリ:スクリプトの記述
日付:2010年10月28日 19:37 発信者:hakobako
題名:RE(3):IPアドレスの取得(PB9→PB11.5)

mnさん、こんばんは。

>hakobakoさん、こんばんは。

>そうかな?と思って、下記に変更しました。
>function long WSAStartup(uint wVersionRequested, ref SG_WSADATA lpWSAData) library \"wsock32.dll\" 
>alias for \"WSAStartup;Ansi\"
>function long WSACleanup() library \"wsock32.dll\"

>function long gethostname(ref string strName, long namelen) library \"wsock32.dll\" alias 
>for \"gethostname;Ansi\"
>function long gethostbyname(string strName) library \"wsock32.dll\" alias for \"gethostbyname;Ansi\"

>function long inet_ntoa(ulong addr) library \"wsock32.dll\"

>subroutine RtlMoveMemory( ref SG_HOSTENT buf, long p, long s ) library \"kernel32.dll\" alias 
>for \"RtlMoveMemory;Ansi\"
>subroutine RtlMoveMemory( ref ulong buf, long p, long s ) library \"kernel32.dll\" 

>でも、残念でした。

すみません、もう一つ忘れてました。
恐らく返ってくる値が文字化けしてるのではないですか?

以下の部分を修正してみてください。
-----------------------------------------------------------
// 文字列に変換
string s_addr
s_addr = String( inet_ntoa(addr), \'address\' ) /////IPアドレス
-----------------------------------------------------------

-----------------------------------------------------------
// 文字列に変換
string s_addr
blob lb_temp
s_addr = String( inet_ntoa(addr), \'address\' ) /////IPアドレスがunicodeのままなのでこのままじゃ見
れない!
lb_temp = Blob(s_addr) // 一旦blob型にして…
s_addr = String(lb_temp , EncodingANSI!) // Ansiでエンコード→IPアドレス
-----------------------------------------------------------

これでどうでしょう?

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

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

Server SoftWare

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

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