存档: 标签: ‘VC’

QQ在线查看器(附下载)

4 条评论 2010年7月10日

忙里偷闲,做了一个QQ在线查看器。
其主要功能为:1.在你QQ不上线的情况下,输入某一QQ号可查知对方是否在线;2.可查看你某一QQ好友是否对你设置隐身可见或在线隐身。
主要操作方法就是在网络畅通的情况下,输入你想查的QQ号码即可。
qq seek QQ在线查看器(附下载)

|点击下载QQ在线查看器|

如有任何问题请留言。

自动获取网页源代码(基于WinInet class的实验)

没有评论 2010年2月1日

今天陪老爸老妈爬了山,挺累的,本来想明天再来实验的,结果没想到一到晚上人反而兴奋了,所以索性实验完了得了~下面就是本人对WinInet class这个类的实验过程,包括遇到的问题和解决方案。实验环境:windows XP, .net 2003

首先是打开这个页面:http://www.vckbase.com/english/code/internet/get_webpage.shtml.htm,将里面的WebWorld.h和WebWorld.cpp分别添加进自己的工程里(【项目】——【添加新项】),编译,之后就会遇到你的第一个问题:

fatal error C1083: 无法打开包含文件:“WebThief.h”: No such file or directory

这个问题真花费了我不少时间。我翻遍了我的VC文件夹,都找不到这个头文件,到GOOGLE上面去找,也没有提供下载的,也几乎没有人对这个问题提问,即使问了,也是所问非所答。失望之余,决定用英文试试,于是尝试着用关键词“WebThief.h download”在GOOGLE理搜索。果然发现一条有价值信息:“I guess it is a mistake. Replace it with WebWorld.h”我按照这个方法一试。。果然啊,是这个作者把头文件写错了。。- -后来自己仔细一想,这个不是明摆着吗,WebWorld.h肯定应该对应着WebWorld.cpp,只怪自己太心急了。那么继续。

编译通过,链接却出现了错误:

WebWorld.obj : error LNK2019: 无法解析的外部符号 __imp__InternetOpenA@20 ,该符号在函数 “public: __thiscall CWebWorld::CWebWorld(void)” (??0CWebWorld@@QAE@XZ) 中被引用
WebWorld.obj : error LNK2019: 无法解析的外部符号 __imp__InternetCloseHandle@4 ,该符号在函数 “public: virtual __thiscall CWebWorld::~CWebWorld(void)” (??1CWebWorld@@UAE@XZ) 中被引用
WebWorld.obj : error LNK2019: 无法解析的外部符号 __imp__InternetReadFile@16 ,该符号在函数 “public: class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > __thiscall CWebWorld::GetWebPage(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > const &)” (?GetWebPage@CWebWorld@@QAE?AV?$CStringT@DV?$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@ABV23@@Z) 中被引用
WebWorld.obj : error LNK2019: 无法解析的外部符号 __imp__HttpQueryInfoA@20 ,该符号在函数 “public: class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > __thiscall CWebWorld::GetWebPage(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > const &)” (?GetWebPage@CWebWorld@@QAE?AV?$CStringT@DV?$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@ABV23@@Z) 中被引用
WebWorld.obj : error LNK2019: 无法解析的外部符号 __imp__InternetOpenUrlA@24 ,该符号在函数 “public: class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > __thiscall CWebWorld::GetWebPage(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > const &)” (?GetWebPage@CWebWorld@@QAE?AV?$CStringT@DV?$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@ABV23@@Z) 中被引用
Debug/HTMLSource.exe : fatal error LNK1120: 5 个无法解析的外部命令

这个我比较幸运,一搜就找到了解决方案:http://topic.csdn.net/t/20050330/12/3893951.html,就是在WebWorld.cpp里添加“#pragma   comment(lib,”Wininet.lib”)”,再一试果然就可以了。不过我还不明白这是为什么,希望有高人能给我指点一下,感激不尽。

最后别忘了把WebWorld.h添加到你的项目中。我比较喜欢用基于对话框的VC程序,做了一个按钮控件,在其中添加代码:

CWebWorld a;
CString PageContent;
PageContent = a.GetWebPage("http://www.vckbase.com/english/code/internet/get_webpage.shtml.htm");
MessageBox(PageContent);

最后点击按钮,会弹出这个网页的源文件,试验成功!

沪ICP备09091602号