最近有個專案需要手機可以與pc進行tcp傳輸檔案,pc做server時在我的電腦可以,在其他電腦時手機連線超時。
檢視了埠,防火牆等等問題未能解決。最後發現是qt在獲取ip位址時獲取錯了,獲取的是第乙個而不是正在使用的。
qstring stripaddress;
qprocess cmd_pro ;
qstring cmd_str = qstring("ipconfig");
cmd_pro.start("cmd.exe", qstringlist() << "/c" << cmd_str);
cmd_pro.waitforstarted();
cmd_pro.waitforfinished();
qstring result = cmd_pro.readall();
qdebug() << result;
qstring pattern("[0-9]\\.[0-9]\\.[0-9]\\.[0-9]");
qregexp rx(pattern);
int pos = 0;
bool found = false;
while((pos = rx.indexin(result, pos)) != -1)
stripaddress = tmp;
}pos += rx.matchedlength();
}qdebug()<<"ip: " << stripaddress;
Qt獲取本機的ip位址 MAC位址
qstring gethostipaddress 如果沒有找到,則以本地ip位址為ip if stripaddress.isempty stripaddress qhostaddress qhostaddress localhost tostring return stripaddress qstr...
Qt5 12獲取本機IP位址
最近在寫有關qt網路通訊方面,下面是乙個小模組,獲取主機的ip位址。qstring get local ip return 0.0.0.0 首先獲取本機所有ip位址資訊,包括環迴位址如127.0.0.1,以及本機位址如192.168.1.x等等,有安裝虛擬機器的還有其他位址等等。brief 檢測當前...
獲取本機IP位址
cstring strlocalip char szhostname 64 memset szhostname,0x00,sizeof szhostname gethostname szhostname,sizeof szhostname phostent phost gethostbyname s...