C语言实现查询whois
2024-09-06 19:05:38
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <windows.h> int main()
{
HANDLE handle;
FILE *fp;
FILE *foutput;
int i, j, k, l;
char szDomain[1024 * 4];
char szBuf[1024 * 4];
handle = GetStdHandle(STD_OUTPUT_HANDLE); for (i = 'b'; i <= 'z'; i++)
{
for (j = 'c'; j <= 'z'; j++)
{
for (k = 'd'; k <= 'z'; k++)
{
for (l = 'a'; l <= 'z'; l++)
{
sprintf(szDomain, "whois.exe %c%c%c%c.cn", i, j, k, l);
fp = _popen(szDomain, "r");
if (fp)
{
memset(szBuf, 0, sizeof(szBuf));
fread(szBuf, 1, sizeof(szBuf), fp);
if (strstr(szBuf, "no matching record."))
{
SetConsoleTextAttribute(handle, FOREGROUND_GREEN |
FOREGROUND_INTENSITY);
printf("%s\n", szDomain);
SetConsoleTextAttribute(handle, FOREGROUND_RED |
FOREGROUND_GREEN |
FOREGROUND_BLUE);
printf("%s\n", szBuf);
foutput = fopen("output.txt", "a+");
fprintf(foutput, "%s\n", szDomain);
fclose(foutput);
}
else
{
printf("%s\n", szDomain);
printf("%s\n", szBuf);
}
_pclose(fp);
Sleep(1000);
}
}
}
}
}
return 0;
}
保存还未占用的域名
乱码是由于cmd默认是gbk编码方式。
修改方法:
在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容。在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中文字符集或者西文字符集。
如果想正确显示UTF-8字符,可以按照以下步骤操作:
1、打开CMD.exe命令行窗口
2、通过 chcp命令改变代码页,UTF-8的代码页为65001
chcp 65001
执行该操作后,代码页就被变成UTF-8了。但是,在窗口中仍旧不能正确显示UTF-8字符。
3、修改窗口属性,改变字体
在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为True Type字体"Lucida Console",然后点击确定将属性应用到当前窗口。
这时使用type命令就可以显示UTF-8文本文件的内容了:
type filename.txt
4、通过以上操作并不能完全解决问题,因为显示出来的内容有可能不完全。可以先最小化,然后最大化命令行窗口,文件的内容就完整的显示出来了。
chcp 65001 就是换成UTF-8代码页
chcp 936 可以换回默认的GBK
chcp 437 是美国英语
最新文章
- 深入学习jQuery样式操作
- AC日记——欧几里得的游戏 洛谷 P1290
- python 定义实例方法
- web安全之sql注入实例(5.0之前的)
- 第一次进div1了
- Mysql slave 状态之Seconds_Behind_Master
- 【Oracle&;SQLServer】并集、交际、补集
- Kinect开发学习笔记之(一)Kinect介绍和应用
- 国内国外最好的java开发论坛及站点 [转]
- javascript从入门到精通(二)
- struts配置时遇到的几个问题
- javascript之求最值
- 笔记本开通手机WiFI热点
- iOS 文件操作:沙盒(SandBox)、文件操作(FileManager)、程序包(NSBundle)
- mapreduce任务失败、重试、猜測式运行机制小结
- 获取IP地址bash[转载]
- cocos2dx 从2.2.6 到3.16 升级流水记录
- oracle的for和i++
- java points[复习]
- PYTHON使用入门