摘要: 添加代码与预编译指令与上一篇使用 Visual Studio 编译 wget 为可执行文件一致,区别在于这回建的是静态库工程(编译为动态库过程类似:))从wget的main函数开始读下来,发现问题不少,程序可能基于效率或者编码方便的因素,大量使用静态变量,导致在将其修改为静态库之后存在潜在危险。需要修改的部分如下:1、main.c文件,no_prefix函数:static char *no_prefix (const char *s){ static char buffer[1024]; static char *p = buffer; ...}由于原程序使用指针p来指向尚未处理的数据,no_ 阅读全文
posted @ 2011-07-04 17:06 BlueGlass 阅读(668) 评论(0) 推荐(0) 编辑
摘要: wget是一个在Linux/Unix下应用十分广泛的下载软件,详细介绍如下:http://www.gnu.org/software/wget/前段时间在一个软件更新程序中使用system 函数通过命令行参数调用wget做FTP下载,但是后来增加了需要显示进度的功能,讨论后决定开始阅读wget代码并对其增加下载进度回调。并将修改后的wget编译成静态库使用。在此先给出如何使用VS将wget代码编译为可执行文件的过程具体步骤如下:1、将wget代码的src目录下文件加入VS的空工程中,此时直接编译将会产生大量错误,主要问题在于缺少预编译指令与openssl相关函数2、添加openssl头文件,导入 阅读全文
posted @ 2011-07-04 16:05 BlueGlass 阅读(1525) 评论(0) 推荐(0) 编辑
摘要: 在做设置面板的时候,经常需要一个可以用来设置热键的控件,记下当初实现这个控件的过程吧。。。热键设置控件界面分为两个部分,描述文本与热键输入框,分别使用Label与TextBox控件,置于StackPanel中,XAML代码如下:<StackPanel Orientation="Horizontal"> <Label Name="label" Width="100" HorizontalContentAlignment="Right"></Label> <TextBox Na 阅读全文
posted @ 2011-07-04 12:36 BlueGlass 阅读(1226) 评论(2) 推荐(0) 编辑