Coding的痕迹

一位互联网奔跑者的网上日记

0%

近段时间趁着寒假的功夫,打开了尘封了一段时间的《计算机网络:自顶向下方法(原书第七版)》( Computer Networking: A Top-Down Approach (Seventh Edition ))。在学习的时候,深感计算机网络相关的内容繁多而有趣。于是打算归纳整理书中所学相关知识,结合曾经的开发经验,写一系列计算机网络相关的文章,为日后考研复习使用,也与网上诸位分享,共同探讨这里面的问题。

阅读全文 »

不知道标题描述得是否准确。社团里布置好了两个海康威视的监控摄像头,但是没有录像相关的设备,想到了之前二百元在闲鱼上淘到的小主机,于是申请买了一块500G的硬盘。

这个闲鱼上买的小主机,买来的时候是打算做软路由的。性能较差,买来的时候预装的是 Windows XP,我用了不到十分钟,就点了关机,换成了 Debian。原先想用海康威视的 SDK 来写这个工具,毕竟能锻炼下自己C++能力,考虑到录像这玩意催的比较紧,就改用Python写了。

阅读全文 »

导语

因为 Ankiweb 的服务器实在太慢,另外有网友指出,Anki 可能是一个个人项目,指不定哪天就不见了。稳妥起见,打算趁着寒假的空闲自建一个 Anki 服务器(这样就能好好背单词了)。然而事实证明建这个 Server 的时间能做不少东西……在此记录遇到的坑,想到的一些解决方案,作为纪念,也供将来折腾的人参考。

由于网上自建服务器的教程很多,重复之处不再赘述。我的目的是补充现有教程很多过时(out of date)的地方。考虑到一部分自建 Anki 的同学在技术操作上存在困难,先说结论:

阅读全文 »

这真是一次让我觉得着了魔的经历。
为了得到安全教育考试的题库,事先爬取了几十次模拟考试的网页源代码存着。耽搁了几天,才翻出来打算整理一下。整理的代码中有这么一段:

1
2
3
4
5
# extract_questions.py
for html_file in glob.glob('*.html'):
fp = open(html_file, encoding = 'UTF-8')
page = BeautifulSoup(fp.read(), 'html5lib')
fp.close()

由于程序正常执行时后续解析的代码有些错误,便在开头的for循环处下断点调试。发现每次在 BeautifulSoup 那一行时会抛出 ExitException 异常。在“表达式”窗口查看 fp.read() 返回了正常的网页内容。但是再向下执行一行时 fp.read() 的值为 ‘’。
后来在Python交互式解释器中进行验证,没有出现这样的问题。
(调试一度陷入僵局)

后来才注意到,Visual Code 中,在初次“表达式”窗口查看 fp.read() 返回了正常的网页内容。但是再向下执行一行时 fp.read() 的值为 ''。查看 fp.read() 的值会使文件指针指向文件尾…调试工具真的执行了一次 read()
em…

在学习二维数组的动态分配,写出了以下代码,怎么捣鼓也不对,总算想通了。写于此,分享一下。答案在后面,白底白字(已修改)。在不上机调试的情况下,能找出来吗?

阅读全文 »

迁移博客时注
这篇文章还是我在草稿箱翻到的,直接迁移了过来。当时市里给各学校下发任务,要求参加这种知识竞赛。有人用 Cheat Engine 搜索内存实现改成绩,我则倾向于抓包 - 改包。游戏程序是用 flash 做的,当时还折腾了好长时间 swf 的逆向,每天中午一回家就打开电脑弄这个,一有机会接触电脑就查资料,也不知道哪来的热情。第二年这个竞赛拿php还是jsp重写了,用了Google的验证码库,遂放弃。第三年就没有这个比赛了。
以现在的方法,当然一个不长的 Python 脚本就能搞定这一切。或许正如古人所说,“后之视今,亦犹今之视昔”吧。
共勉!

以下是原文


如果可以说这是一个外挂的话。
这种东西技术含量不高,嗯,如果不认为这个可以作为一篇教程的话,就当本文是我的个人日记好了。

阅读全文 »

由于时间仓促,所以没有加过多的错误处理或检查,另外结构体、变量和字符串等没有动态定义,可能会导致严重的缓冲区错误,所以如果要当做一个项目来做的话,建议加上这些处理、检查,并动态分配内存。
虽然说这是写成了一个C++类,但是文件读写以及许多函数都是C中的。见代码吧!代码看起来比较简单,老规矩,下载地址在后面。

阅读全文 »

可以说《[原创]VC成功实现重启路由器(完整源码)》差不多是抄来的(有点点修改——惭愧!),当时用自己的方法始终不行。不过当时那个程序体积太大,我便又打算重新写一遍代码,来实现重启TP-LINK路由器的功能。

阅读全文 »

最近对VC实现修改文件创建、访问、修改时间属性的方法产生了兴趣,我便在网上查了这方面的教程,但是却总是看不明白,有的不够简洁。例如在一些文章中提到了使用FindFirstFile()函数和WIN32_FIND_DATA结构,我认为完全没有必要,因为到最后时我们需要用到SetFileTime()函数,而这个函数和FindFirstFile()是无关的,我们只需用到SYSTEMTIMEFILETIME结构体。如果感兴趣的话,你可以先看看微软的官方帮助和支持文档:FILETIME 结构使用信息,里面讲的不仅仅是FILETIME结构的使用,很值得一看。

阅读全文 »