随笔分类 -  程序设计

摘要:先把最近看到的一些收录一下,以后慢慢更新:1、迅雷7的 "Bolt" 界面引擎(摘一段别人写的)以下内容仅针对界面引擎。迅雷从5越到了7(其实6是存在的);迅雷7的一个显著改善是UI(User Interface - 用户界面)。从官方博客文章看,界面被放在了特性的第一位,可见对界面的改善是一个重大升级。关于用户界面的升级:对于一个终端用户,关注的主要还是下载速度,迅雷7的下载速度基本没啥改善(听说);不过作为编程圈一员,这个东西不能忽略。我很清楚迅雷的工程师们需要花多少时间在开发这个上面。(这个界面框架可以说是伟大的,如果我写完了我也一定会高调一下..虽然我很清楚用户大致 阅读全文
posted @ 2011-09-30 11:05 swordzj 阅读(1521) 评论(0) 推荐(0) 编辑
摘要:C# 3.0语言的新特性——Lambda表达式Lambda表达式在C# 3.0 中,Microsoft 添加了“lambda 表达式”。lamdba表达式曾经用于很久以前的LISP计算机语言中,在1936年由一个美国数学家Alonzo Church对其进行了概念化描述。这些表达式提供了便捷的语法来指定一个算法。但是在接下来开始介绍lambda表达式之前,首先看看将一个算法指定为某个方法的参数的演进过程,因为这正是lambda表达式的目的。1. 使用命名的方法在C# 2.0之前,当一个方法或变量要用到委托(delegate)时,开发人员必须创建一个命名方法,并在需要委托的位置传入这个名称。例如, 阅读全文
posted @ 2011-09-12 18:07 swordzj 阅读(231) 评论(0) 推荐(0) 编辑
摘要:1.首先下载ddk开发包Windows DDK 3790.1830 下载安装DDK后,去http://ddkwizard.assarbad.net/ 下载ddkwizard_setup_v1.2.0a、ddkbuild_bat.zip、ddkbuild_cmd.zip。2.拷贝 DDKBUILD.bat 和 DDKBUILD.cmd 到DDK安装根目录,如我的是D:\WinDDK.3.. 将上述文件(DDKBUILD.bat 和 DDKBUILD.cmd )的路径添加到系统的path变量(右击我的电脑,系统属性/高级/环境变量/系统变量/path变量双击修改值)。4. 根据你所安装的DDK的不 阅读全文
posted @ 2010-12-14 19:27 swordzj 阅读(1190) 评论(0) 推荐(0) 编辑
摘要:插件一般是以dll的形式存在,而宿主则以exe的形式存在,他们之间必然要交互。通常,交互方式可以是com,一种微软定义的复杂接口方式,不过支持的人挺多的,但是不利于跨平台使用,而且开发太复杂了。另一方式就是使用消息系统,交互之间传递消息,还可以实现交互,就是处理起来用异步方式,稍微有点不自然,也不利于跨平台使用。还有一种方式就是相互调用函数,exe调用dll的方式早在dll诞生的时候就已经存在,使用LoadLibrary,再用GetProcAddress取得函数地址,就可以调用了。而dll并无直接调用exe的手段,不过exe可以传递过callback之类函数指针让dll来调用,这就形成了交互, 阅读全文
posted @ 2008-03-04 11:44 swordzj 阅读(553) 评论(0) 推荐(0) 编辑
摘要:Koder 下面这篇文章详细介绍了关于内存处理中字节对齐。结构体 或者 类 存在字节对齐的问题,这个问题的理解需要对内存中数据的存放等有深刻的理解。是工程项目中经常需要用到的。--------------------------------------------------------------------------------------------------- #pragma pack(4) class TestB { public: int aa; char a; short b; char c; }; int nSize = sizeof(TestB); 这里nSize结果为1 阅读全文
posted @ 2008-03-03 10:17 swordzj 阅读(685) 评论(0) 推荐(0) 编辑
摘要:原始出处在:http://www.halcyon.com/~ast/dload/guicon.htm.我修改了一下,合并成一个头文件guicon.h,在vs2005中调试通过,修改了部分代码以适应64bit的编译,用法就不多说了,只要在使用前调用RedirectIOToConsole(),一次就可以了。 很简单的。#ifndef__GUICON_H__#define__GUICON_H__#ifdef_DEBUG#include<windows.h>#include<stdio.h>#include<fcntl.h>#include<io.h># 阅读全文
posted @ 2007-12-05 17:34 swordzj 阅读(1512) 评论(0) 推荐(0) 编辑
摘要:原载:http://www.chinaunix.net/jh/23/946840.htmlstructxxx**x; x=(structxxx**)darray_new(5,4,sizeof(structxxx)); ... 这里就可以用x[1][3]...x[0][3]...来操作了:) ... darray_free(x); #include<stdio.h>#include<stdlib.h>#include<string.h>void**darray_new(introw,intcol,intsize){ void**arr; arr=(void** 阅读全文
posted @ 2007-09-12 23:22 swordzj 阅读(224) 评论(0) 推荐(0) 编辑
摘要:调用(calling)机制从汇编时代起已经大量使用:准备一段现成的代码,调用者可以随时跳转至此段代码的起始地址,执行完后再返回跳转时的后续地址。 CPU为此准备了现成的调用指令,调用时可以压栈保护现场,调用结束后从堆栈中弹出现场地址,以便自动返回。借堆栈保护现场真是一项绝妙的发明,它使调用者和被调者可以互不相识,于是才有了后来的函数和构件,使吾辈编程者如此轻松愉快。若评选对人类影响最大之发明,在火与车轮之后,笔者当推压栈调用。 话虽这样说,此调用机制并非完美。回调函数就是一例。函数之类本是为调用者准备的美餐,其烹制者应对食客了如指掌,但实情并非如此。例如,写一个快速排序函数供他人调用,其中必包 阅读全文
posted @ 2007-07-29 14:22 swordzj 阅读(287) 评论(0) 推荐(0) 编辑
摘要:ASCII编码表ASCII是英文American Standard Code for Information Interchange的缩写。ASCII码是目前计算机最通用的编码标准。因为计算机只能接受数字信息,ASCII码将字符作为数字来表示,以便计算机能够接受和处理。比如大写字母M的ASCII码是77。ASCII码中,第0~32号及第127号是控制字符,常用的有LF(换行)、CR(回车);第33~126号是字符,其中第48~57号为0~9十个阿拉伯数字;65~90号为26个大写英文字母,97~122号为26个小写英文字母,其余的是一些标点符号、运算符号等。以下是常用的ASCII码对照表: 十 阅读全文
posted @ 2007-05-08 16:23 swordzj 阅读(732) 评论(0) 推荐(0) 编辑
摘要:1 什么是回调软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用;回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。回调和异步调用的关系非常紧密,通常我们使用回调来实现异步消息的注册,通过异步调用来实现消息的通知。同步调用是三者当中最简单的,而回调又常常是异步调用的基础,因此,下面我们着重讨论回调机制在不同软件 阅读全文
posted @ 2007-04-24 10:57 swordzj 阅读(61918) 评论(7) 推荐(26) 编辑
摘要:用MFC很容易把当前屏幕截取,并显示在自己程序的UI上。以对话框为例,在执行绘制的单元(比如OnPaint)中调用下面这个函数就能做到: BOOL CSrnShotDlg::GetMyScreen( CDC *pdc // 目标DC ) { CDC dc; dc.CreateDC("DISPLAY", NULL, NULL, NULL); // 屏幕DC CRect clientRect; GetClientRect(clientRect); // 对话框矩形区域 pdc->BitBlt(0, 0, // 起始位置 clientRect.Width(),clientR 阅读全文
posted @ 2007-04-12 19:52 swordzj 阅读(230) 评论(0) 推荐(0) 编辑
摘要:早晨的时候在这里开了个帖子问怎么在winxp下配置j2me的开发环境,一直没有人回答。哎,什么东西都要自己动手,才能丰衣足食亚,经过一个上午的尝试,终于将如何在winxp下配置j2me开发环境的方法找出来了,现在感觉特happy,不敢独享,拿到这里供像我一样的菜鸟们学习。我以前都是用eclipse作为java的开发工具的,所以上午只针对它作了一下配置,在配置j2me之前,你首先必须具备如下文件,也就是配置j2me环境的前提:(在此只以配置eclipse为例)1.eclipse 3.0.0或以上版本2.eclipseme插件3.j2me wireless toolkit4.j2se sdk1) 阅读全文
posted @ 2005-04-25 23:56 swordzj 阅读(283) 评论(0) 推荐(0) 编辑
摘要:在Unix/Linux上令(java)JVM支持中文输出一、在Unix/Linux上令JVM支持中文输出如果用户使用的是UNIX的远程服务器,就会遇到中文字体在图像中输出的问题,特别是由于许多管理员并不喜欢把主机的locale定为zh(因为意味着可能出乱码或必须装微形图形终端象zhcon,但很多情况下这样的条件并不具备)。大部分程序员的JAVA经验苟限于JSP脚本程序,部分熟练的程序员大概开发过中间件、servlet、applet或在WINDOWS上运行的GUI程序。如果开发的jfreechart是使用WINDOWS作为主机运行的话,可以略过这一段,但如果使用的是UNIX类型的服务器的话,就常 阅读全文
posted @ 2005-04-24 22:13 swordzj 阅读(443) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示