PB 利用PBWS32.DLL獲取IP地址在12.5中得出來的結果不準確,經測驗在PB12.5 中PBWS32.DLL的gethost()回傳的主機名,而非IP。哪位能提供較詳細的例子供參考。
uj5u.com熱心網友回復:
1.可以用run命令ipconfig -all > c:\1.txt 然后從1.txt中提取出想要的結果2.可以換個dll用GetNet.dll
//得到本機IP地址
Function string GetLocalIp() Library "GetNet.dll" alias for "GetLocalIp;Ansi"
uj5u.com熱心網友回復:
兄弟有12.5的正版?還是破解版 給個地址下載uj5u.com熱心網友回復:
我用的是破解版uj5u.com熱心網友回復:
二樓給個詳細的例子可以嗎uj5u.com熱心網友回復:
可用internetresult 和inet 來打開網頁http://www.ip138.com/然后把獲取的IP決議出來即可//本函式需要 internetresult n_cst_internet
integer li_f,flen,li_rc
string ls_result,ls_ip
inet linet_main
n_cst_internet luo_data
linet_main = CREATE inet
luo_data = CREATE n_cst_internet
SetPointer(HourGlass!)
li_rc =linet_main.GetURL('http://www.ip38.com', luo_data)
SetPointer(Arrow!)
ls_result = luo_data.is_data
ls_ip=Mid(ls_result,Pos(ls_result,'您的本機IP地址:',1)+14,Pos(ls_result,' 來自',1) - Pos(ls_result,'您的本機IP地址:',1) - 16)
return trim(ls_ip)
//
DESTROY luo_data
DESTROY linet_main
uj5u.com熱心網友回復:
樓上,如果是在C/S方式下獲取本機IP地址呢?uj5u.com熱心網友回復:
winsock可以實作//
function int WSAStartup( uint UIVersionRequested, ref s_WSAData lpWSAData ) library "wsock32.dll "
function int WSACleanup() library "wsock32.dll "
function int WSAGetLastError ( ) library "wsock32.dll "
function int gethostname ( ref string name, int namelen ) library "wsock32.dll "
function string GetHost(string lpszhost, ref blob lpszaddress ) library "pbws32.dll "
使用方法:
s_wsadata l_WSAData
string ls_HostName = space(128)
string ls_IpAddress
int li_version = 257
blob{4} lb_hostaddress
IF wsastartup ( li_version, l_WSAData ) = 0 THEN
IF gethostname ( ls_HostName, len(ls_HostName) ) < 0 THEN
messagebox( "GetHostName ",WSAGetLastError())
ELSE
GetHost(ls_HostName, lb_HostAddress)
ls_IpAddress = string(asc(string(blobmid(lb_HostAddress,1,1))), "000 ") + ". "
ls_IpAddress += string(asc(string(blobmid(lb_HostAddress,2,1))), "000 ") + ". "
ls_IpAddress += string(asc(string(blobmid(lb_HostAddress,3,1))), "000 ") + ". "
ls_IpAddress += string(asc(string(blobmid(lb_HostAddress,4,1))), "000 ")
END IF
WSACleanup()
ELSE
messagebox( "GetHostName ",WSAGetLastError())
END IF
sle_6.text=ls_hostname
sle_7.text=ls_ipaddress
getnet.dll可以實作
uj5u.com熱心網友回復:
哪位大俠給予些技術幫助!首先謝謝!pb9.0下獲取計算機名、本地IP地址、MAC地址,在pb11.5和12.5下,都失效了。。。。。。。
uj5u.com熱心網友回復:
http://zhidao.baidu.com/question/392210222.html創建存盤程序然后直接呼叫
uj5u.com熱心網友回復:
如果連的oracle資料庫,oracle就可以做了。一個函式的問題,相當簡單
uj5u.com熱心網友回復:
這個得到的是局域網ip吧?外網ip得不到
uj5u.com熱心網友回復:
請問里面的 ls_result = luo_data.is_data is_data是怎么定義的???
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/55543.html
標籤:API 調用
