在研究怎么在线程里再开线程

This commit is contained in:
2022-01-05 00:43:38 +08:00
parent 411e1f5645
commit 43aa9cd6fb
31 changed files with 333 additions and 123 deletions
Binary file not shown.
Binary file not shown.
+62 -49
View File
@@ -1,51 +1,64 @@
scan_run.cpp scan_run.cpp
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x680 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x4cd 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x682 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x4cf 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x684 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x4d1 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x686 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x4d3 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x689 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x4d6 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x6d9 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x526 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x6db 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x528 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x6dd 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x52a 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x6e2 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x52f 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x829 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x676 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x82a 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x677 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x82c 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x679 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x8c2 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x70f 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x8c3 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x710 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x8c7 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x714 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x8c8 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x715 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x8c9 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x716 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x958 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x7a5 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x959 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x7a6 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x95b 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x7a8 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x95e 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x7ab 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x95f 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x7ac 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xa21 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x86e 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xa26 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x873 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xa28 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x875 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xba8 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x9f2 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xba9 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x9f3 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xbaa 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x9f4 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xbad 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x9f7 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xbaf 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0x9f9 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xc7e 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xac5 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xc7f 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xac6 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xc82 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xac9 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xc83 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xaca 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xc87 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xace 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xcd1 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xb18 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xcd2 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xb19 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xcd4 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xb1b 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xcd7 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xb1e 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xcd8 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xb1f 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd86 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xbcd 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd8b 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xbd2 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd8d 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xbd4 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xeec 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd30 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xeed 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd31 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xeee 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd32 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xef1 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd35 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xef3 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xd37 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(66,17): warning C4189: “m_socket”: 局部变量已初始化但不引用 C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xeb4 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xeb8 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xeb9 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xebb 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xebc 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xebe 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xec0 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xec2 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xec4 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xec5 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(1,1): warning C4828: 文件包含在偏移 0xec7 处开始的字符,该字符在当前源字符集中无效(代码页 65001)。
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(81,82): warning C4018: “<”: 有符号/无符号不匹配
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(103,78): warning C4018: “<”: 有符号/无符号不匹配
C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\scan_run.cpp(58,17): warning C4189: “m_socket”: 局部变量已初始化但不引用
ip_sacaner.vcxproj -> C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\debug\ip_sacaner.exe ip_sacaner.vcxproj -> C:\Users\wuwen\Desktop\tcp_ip_scan\ip_sacaner\debug\ip_sacaner.exe
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+138
View File
@@ -0,0 +1,138 @@
/****************************************************************************
** Meta object code from reading C++ file 'scan_run.h'
**
** Created by: The Qt Meta Object Compiler version 68 (Qt 6.2.2)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include <memory>
#include "../scan_run.h"
#include <QtGui/qtextcursor.h>
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'scan_run.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 68
#error "This file was generated using the moc from 6.2.2. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_dispatch_t {
const uint offsetsAndSize[6];
char stringdata0[26];
};
#define QT_MOC_LITERAL(ofs, len) \
uint(offsetof(qt_meta_stringdata_dispatch_t, stringdata0) + ofs), len
static const qt_meta_stringdata_dispatch_t qt_meta_stringdata_dispatch = {
{
QT_MOC_LITERAL(0, 8), // "dispatch"
QT_MOC_LITERAL(9, 15), // "dispatch_finish"
QT_MOC_LITERAL(25, 0) // ""
},
"dispatch\0dispatch_finish\0"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_dispatch[] = {
// content:
10, // revision
0, // classname
0, 0, // classinfo
1, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
1, // signalCount
// signals: name, argc, parameters, tag, flags, initial metatype offsets
1, 0, 20, 2, 0x06, 1 /* Public */,
// signals: parameters
QMetaType::Void,
0 // eod
};
void dispatch::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
auto *_t = static_cast<dispatch *>(_o);
(void)_t;
switch (_id) {
case 0: _t->dispatch_finish(); break;
default: ;
}
} else if (_c == QMetaObject::IndexOfMethod) {
int *result = reinterpret_cast<int *>(_a[0]);
{
using _t = void (dispatch::*)();
if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&dispatch::dispatch_finish)) {
*result = 0;
return;
}
}
}
(void)_a;
}
const QMetaObject dispatch::staticMetaObject = { {
QMetaObject::SuperData::link<QThread::staticMetaObject>(),
qt_meta_stringdata_dispatch.offsetsAndSize,
qt_meta_data_dispatch,
qt_static_metacall,
nullptr,
qt_incomplete_metaTypeArray<qt_meta_stringdata_dispatch_t
, QtPrivate::TypeAndForceComplete<dispatch, std::true_type>, QtPrivate::TypeAndForceComplete<void, std::false_type>
>,
nullptr
} };
const QMetaObject *dispatch::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *dispatch::qt_metacast(const char *_clname)
{
if (!_clname) return nullptr;
if (!strcmp(_clname, qt_meta_stringdata_dispatch.stringdata0))
return static_cast<void*>(this);
return QThread::qt_metacast(_clname);
}
int dispatch::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QThread::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 1)
qt_static_metacall(this, _c, _id, _a);
_id -= 1;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 1)
*reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
_id -= 1;
}
return _id;
}
// SIGNAL 0
void dispatch::dispatch_finish()
{
QMetaObject::activate(this, &staticMetaObject, 0, nullptr);
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject> <!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 6.0.1, 2022-01-03T13:39:55. --> <!-- Written by QtCreator 6.0.1, 2022-01-04T22:59:23. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>EnvironmentId</variable> <variable>EnvironmentId</variable>
+1 -1
View File
@@ -221,7 +221,7 @@
</QtUic> </QtUic>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="scan_run.h" /> <QtMoc Include="scan_run.h" />
</ItemGroup> </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')"> <ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')">
+2 -2
View File
@@ -2,9 +2,9 @@
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup /> <PropertyGroup />
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<QtLastBackgroundBuild>2022-01-02T13:24:25.0325007Z</QtLastBackgroundBuild> <QtLastBackgroundBuild>2022-01-04T16:14:49.8540131Z</QtLastBackgroundBuild>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtLastBackgroundBuild>2022-01-02T13:24:25.2195241Z</QtLastBackgroundBuild> <QtLastBackgroundBuild>2022-01-04T16:14:50.0341967Z</QtLastBackgroundBuild>
</PropertyGroup> </PropertyGroup>
</Project> </Project>
@@ -1 +1 @@
C:\Users\wuwen\AppData\Local\Temp\blxvpzmx.l1w.designtime.props C:\Users\wuwen\AppData\Local\Temp\q4ot01m1.b1z.designtime.props
+23 -38
View File
@@ -26,39 +26,31 @@ quint32 ipv4str_to_int(const QString& ipstr)
} }
} }
void scan_run::connected() void trytry::run()
{ {
qDebug() << ipstr << ":" << ipint;
} }
void scan_run::ip_scan(const QString& ipstr, quint32 ipint)
{
qDebug() << ipstr << ":" << ipint; void dispatch::tray(const QString& ipstr, quint32 ipint)
{
if (ipint != 0 && ipstr != "") if (ipint != 0 && ipstr != "")
{ {
//qDebug() << ipstr << ":" << ipint;
QTcpSocket* m_socket = new QTcpSocket(this); trytry try_telnet;
m_socket->connectToHost(ipstr, ipint, QTcpSocket::ReadWrite); try_telnet.ipstr = ipstr;
connect(m_socket, &QTcpSocket::connected, [=] try_telnet.ipint = ipint;
{ try_telnet.timeout = timeout;
QString ip = ipstr;// m_socket->peerAddress().toString(); try_telnet.output_list = output_list;
quint16 port = ipint;// m_socket->peerPort(); try_telnet.moveToThread(main_thread);
try_telnet.run();
qDebug() << ip << ":" << port;
QString temp = QString("%1:%2").arg(ip).arg(port);
output_list->append(temp);
m_socket->disconnectFromHost();
m_socket->disconnect();
//delete m_socket;
});
} }
} }
void scan_run::tray_scan() void dispatch::run()
{ {
//qDebug()<< ui->IP_list->toPlainText(); //qDebug()<< ui->IP_list->toPlainText();
@@ -80,21 +72,21 @@ void scan_run::tray_scan()
for (quint32 ips = ipv4str_to_int(str_ips_list.at(0)); ips < ipv4str_to_int(str_ips_list.at(str_ips_list.size() - 1)) + 1; ips++)//取出每一个ip for (quint32 ips = ipv4str_to_int(str_ips_list.at(0)); ips < ipv4str_to_int(str_ips_list.at(str_ips_list.size() - 1)) + 1; ips++)//取出每一个ip
{ {
//qDebug() << ipv4int_to_str(ips); //qDebug() << ipv4int_to_str(ips);
for (quint16 ii = 0; ii < str_port_list.size(); ii++)//分离端口 for (quint32 ii = 0; ii < str_port_list.size(); ii++)//分离端口
{ {
str_ports_list = str_port_list.at(ii).split("-"); str_ports_list = str_port_list.at(ii).split("-");
if (str_ports_list.size() > 1) if (str_ports_list.size() > 1)
{ {
//端口段模式 //端口段模式
for (quint16 prots = str_ports_list.at(0).toInt(); prots < str_ports_list.at(str_ports_list.size() - 1).toInt() + 1; prots++) for (quint32 prots = str_ports_list.at(0).toInt(); prots < str_ports_list.at(str_ports_list.size() - 1).toInt() + 1; prots++)
{ {
scan_run::ip_scan(ipv4int_to_str(ips), prots); dispatch::tray(ipv4int_to_str(ips), prots);
} }
} }
else else
{ {
//单端口模式 //单端口模式
scan_run::ip_scan(ipv4int_to_str(ips), str_ports_list.at(0).toInt()); dispatch::tray(ipv4int_to_str(ips), str_ports_list.at(0).toInt());
} }
} }
} }
@@ -102,21 +94,21 @@ void scan_run::tray_scan()
else else
{ {
//单ip或域名模式 //单ip或域名模式
for (quint16 ii = 0; ii < str_port_list.size(); ii++)//分离端口 for (quint32 ii = 0; ii < str_port_list.size(); ii++)//分离端口
{ {
str_ports_list = str_port_list.at(ii).split("-"); str_ports_list = str_port_list.at(ii).split("-");
if (str_ports_list.size() > 1) if (str_ports_list.size() > 1)
{ {
//端口段模式 //端口段模式
for (quint16 prots = str_ports_list.at(0).toInt(); prots < str_ports_list.at(str_ports_list.size() - 1).toInt() + 1; prots++) for (quint32 prots = str_ports_list.at(0).toInt(); prots < str_ports_list.at(str_ports_list.size() - 1).toInt() + 1; prots++)
{ {
scan_run::ip_scan(str_ips_list.at(0), prots); dispatch::tray(str_ips_list.at(0), prots);
} }
} }
else else
{ {
//单端口模式 //单端口模式
scan_run::ip_scan(str_ips_list.at(0), str_ports_list.at(0).toInt()); dispatch::tray(str_ips_list.at(0), str_ports_list.at(0).toInt());
} }
} }
@@ -132,17 +124,10 @@ void scan_run::tray_scan()
} }
//sleep(1);//稍微等一下其他线程完成
emit dispatch_finish();
} }
void scan_run::run()
{
scan_run::tray_scan();
}
+27 -6
View File
@@ -8,20 +8,41 @@
#include <QDebug> #include <QDebug>
#include <QTcpSocket> //socket #include <QTcpSocket> //socket
class scan_run : public QThread
class trytry : public QThread
{ {
public: public:
quint16 timeout;
QString ipstr;
quint32 ipint;
QTextEdit* output_list;
void run();
};
class dispatch : public QThread
{
Q_OBJECT
public:
quint16 set_thread_num;
quint16 now_thread_num;
quint16 timeout;
QThread* main_thread;
QTextEdit* ip_list; QTextEdit* ip_list;
QTextEdit* port_list; QTextEdit* port_list;
QTextEdit* output_list; QTextEdit* output_list;
void tray_scan(); void tray(const QString& ipstr, quint32 ipint);
void ip_scan(const QString& ipstr, quint32 ipint);
void connected();
protected:
void run(); void run();
signals:
void dispatch_finish();
}; };
+20 -8
View File
@@ -25,13 +25,15 @@ public:
QTextEdit *port_list; QTextEdit *port_list;
QLabel *label_3; QLabel *label_3;
QPushButton *stard_scan; QPushButton *stard_scan;
QSpinBox *spinBox; QSpinBox *threads;
QLabel *label_4; QLabel *label_4;
QLabel *label_5; QLabel *label_5;
QPushButton *pushButton; QPushButton *pushButton;
QTextEdit *IP_list; QTextEdit *IP_list;
QLabel *label; QLabel *label;
QTextEdit *outputlist; QTextEdit *outputlist;
QLabel *label_2;
QSpinBox *timeout;
void setupUi(QWidget *Widget) void setupUi(QWidget *Widget)
{ {
@@ -49,15 +51,15 @@ public:
stard_scan = new QPushButton(Widget); stard_scan = new QPushButton(Widget);
stard_scan->setObjectName(QString::fromUtf8("stard_scan")); stard_scan->setObjectName(QString::fromUtf8("stard_scan"));
stard_scan->setGeometry(QRect(420, 220, 171, 41)); stard_scan->setGeometry(QRect(420, 220, 171, 41));
spinBox = new QSpinBox(Widget); threads = new QSpinBox(Widget);
spinBox->setObjectName(QString::fromUtf8("spinBox")); threads->setObjectName(QString::fromUtf8("threads"));
spinBox->setGeometry(QRect(300, 230, 111, 22)); threads->setGeometry(QRect(350, 230, 61, 22));
spinBox->setMinimum(1); threads->setMinimum(1);
spinBox->setMaximum(999); threads->setMaximum(999);
spinBox->setValue(1); threads->setValue(10);
label_4 = new QLabel(Widget); label_4 = new QLabel(Widget);
label_4->setObjectName(QString::fromUtf8("label_4")); label_4->setObjectName(QString::fromUtf8("label_4"));
label_4->setGeometry(QRect(240, 230, 53, 16)); label_4->setGeometry(QRect(320, 230, 31, 16));
label_5 = new QLabel(Widget); label_5 = new QLabel(Widget);
label_5->setObjectName(QString::fromUtf8("label_5")); label_5->setObjectName(QString::fromUtf8("label_5"));
label_5->setGeometry(QRect(10, 230, 53, 16)); label_5->setGeometry(QRect(10, 230, 53, 16));
@@ -74,6 +76,15 @@ public:
outputlist->setObjectName(QString::fromUtf8("outputlist")); outputlist->setObjectName(QString::fromUtf8("outputlist"));
outputlist->setGeometry(QRect(10, 270, 581, 221)); outputlist->setGeometry(QRect(10, 270, 581, 221));
outputlist->setReadOnly(true); outputlist->setReadOnly(true);
label_2 = new QLabel(Widget);
label_2->setObjectName(QString::fromUtf8("label_2"));
label_2->setGeometry(QRect(200, 230, 41, 16));
timeout = new QSpinBox(Widget);
timeout->setObjectName(QString::fromUtf8("timeout"));
timeout->setGeometry(QRect(250, 230, 61, 22));
timeout->setMinimum(1);
timeout->setMaximum(1000);
timeout->setValue(100);
retranslateUi(Widget); retranslateUi(Widget);
@@ -95,6 +106,7 @@ public:
"127.0.0.1\n" "127.0.0.1\n"
"0.0.0.0-255.255.255.255\n" "0.0.0.0-255.255.255.255\n"
"domain.com", nullptr)); "domain.com", nullptr));
label_2->setText(QCoreApplication::translate("Widget", "\350\266\205\346\227\266ms", nullptr));
} // retranslateUi } // retranslateUi
}; };
+18 -11
View File
@@ -22,22 +22,28 @@ Widget::Widget(QWidget *parent)
//qDebug("hello world"); //qDebug("hello world");
QThread* pt;
pt = new QThread(this);
scan_run *mt;
mt = new scan_run;
mt->ip_list = ui->IP_list;
mt->port_list = ui->port_list;
mt->output_list = ui->outputlist;
mt->moveToThread(pt); main_thread = new QThread(this);
connect(ui->stard_scan, &QPushButton::pressed, [=]() connect(ui->stard_scan, &QPushButton::pressed, [=]()
{ {
//tray_scan(); dispatch* dispatch_thread;
mt->start(); dispatch_thread = new dispatch;
dispatch_thread->ip_list = ui->IP_list;
dispatch_thread->port_list = ui->port_list;
dispatch_thread->output_list = ui->outputlist;
dispatch_thread->set_thread_num = ui->threads->value();
dispatch_thread->now_thread_num = 0;
dispatch_thread->timeout = ui->timeout->value();
dispatch_thread->main_thread = main_thread;
dispatch_thread->moveToThread(main_thread);
dispatch_thread->start();
connect(dispatch_thread, &dispatch::dispatch_finish, [=]()
{
qDebug() << "dispatch_finish";
//delete dispatch_thread;
});
});//'scan button pass' });//'scan button pass'
connect(ui->IP_list,&QTextEdit::textChanged,this, &Widget::auto_edit); connect(ui->IP_list,&QTextEdit::textChanged,this, &Widget::auto_edit);
@@ -46,6 +52,7 @@ Widget::Widget(QWidget *parent)
Widget::~Widget() Widget::~Widget()
{ {
delete main_thread;
delete ui; delete ui;
} }
+2
View File
@@ -24,6 +24,8 @@ public:
void auto_edit(); void auto_edit();
QThread* main_thread;
Ui::Widget* ui; Ui::Widget* ui;
private: private:
+38 -6
View File
@@ -64,12 +64,12 @@
<string>开始扫描</string> <string>开始扫描</string>
</property> </property>
</widget> </widget>
<widget class="QSpinBox" name="spinBox"> <widget class="QSpinBox" name="threads">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>300</x> <x>350</x>
<y>230</y> <y>230</y>
<width>111</width> <width>61</width>
<height>22</height> <height>22</height>
</rect> </rect>
</property> </property>
@@ -80,15 +80,15 @@
<number>999</number> <number>999</number>
</property> </property>
<property name="value"> <property name="value">
<number>1</number> <number>10</number>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_4"> <widget class="QLabel" name="label_4">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>240</x> <x>320</x>
<y>230</y> <y>230</y>
<width>53</width> <width>31</width>
<height>16</height> <height>16</height>
</rect> </rect>
</property> </property>
@@ -161,6 +161,38 @@ domain.com</string>
<bool>true</bool> <bool>true</bool>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>200</x>
<y>230</y>
<width>41</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>超时ms</string>
</property>
</widget>
<widget class="QSpinBox" name="timeout">
<property name="geometry">
<rect>
<x>250</x>
<y>230</y>
<width>61</width>
<height>22</height>
</rect>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>1000</number>
</property>
<property name="value">
<number>100</number>
</property>
</widget>
</widget> </widget>
<resources/> <resources/>
<connections/> <connections/>