自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 关于开源代码的许可问题

网友已经写了一份很详细的说明:http://www.oschina.net/question/12_2663,这里就不再t

2014-05-10 11:26:32 393

原创 windows 下gtk字体问题

windows下运行gtk程序,出现如下问题:PangoWarning: couldn't load font "微软雅黑 Not-Rotated 9", falling back to "Sans Not-Rotated 9", expect ugly output.  解决方法:

2014-05-07 15:47:04 1094

原创 web2py 编辑器改造

Web2Py 是一个Python的Web框架。在默认情况下,Web2Py提供的编辑器只支持文本编辑。如下图:在Essay Content编辑框中是不可以插入图片的,所有HTML标签都以文本方式显示。我们可以通过指定编辑框的Widget,来让它成为一个所见即所得的富文本编辑框(WYSIWYG)。这里,我们选择CKEditor作为编辑器。第一步:下载CKEditor编辑器:ht

2014-03-14 12:24:56 813

原创 Python SocketServer简介

SocketServer模块是一个创建网络服务的框架。它由一系列的网络服务类和一系列的请求处理类组成。网络服务类处理通信相关事项,请求处理类处理协议相关事项。要创建一个网络服务器,最基本的有三步:  继承BaseRequestHandler类,并重载handle()方法。在handle()方法中对客户端请求进行处理;实例化网络服务类,传入监听地址和服务处理类;网络服务类的pro

2014-03-13 15:45:14 532

原创 小型研发团队应该怎样对待开源项目

首先得定义一下什么是小型研发团队?第一,开发人员在30人以下;第二,开发“自有”产品。第一点是现在的软件越来越复杂,同时终端平台众多,三十来个人其实做不了太多的事,所以只能说是小团队。至于五十或一百人算不算小团队,由于我本人只在小公司呆过,见过的也就是三十来个人的团队,所以这个我说不好;第二点,这里强调的是做产品,做项目的时候遇到的情况会不同,这里就不讨论。小型研发团队对待开源项目,我

2014-03-08 23:44:52 583

原创 使用noVNC连接虚拟机控制台

最近在做一个KVM的虚拟机管理网站,需要在网页中显示虚拟机控制台。自然选到了noVNC。简单使用:命令行执行:./utils/launch.sh --vnc 127.0.0.1:5900输出:Warning: could not find self.pemStarting webserver and WebSockets proxy on port 6080

2014-03-06 09:44:49 2635

原创 编译tigervnc

1.编译时参考BUIDING.txt文件,但是照着那个文件还是不能编译成功的2.要完成服务器的编译,先要编译客户端;要编译客户端,就要先编译fltk库3.编译fltk库的步骤:  3.1 下载fltk 1.3.2源码,BUIDING.txt文件提到的链接已经不可用。要从一下链接下载源码包:      http://www.fltk.org/software.php?VERSION=

2014-02-21 15:02:52 1147

原创 星号在python函数参数中的作用

python函数参数中,有时会见到单星号和双星号,他们的作用是:单星号:传入任意长度的元组双星号:传入任意长度的字典例如:#!/usr/bin/env python# encoding: utf-8def one_star(*args): print '%s:%s'%(type(args),args) def two_stars(**args):

2014-02-17 15:12:18 550

原创 python中使用select和poll的例子

本文实现一个回显服务器,所谓回显服务器即服务器当接收到客户端发送的消息后,将该消息发送回客户端。首先看客户端的实现:指定解析器和编码类型,导入模块#!/usr/bin/env python# encoding: utf-8import socketimport sys

2014-02-13 15:50:15 2218 1

原创 2014,新的一年

明天就要上班了。说实话,我并不抵触。因为有了工作,我才能赚钱养家糊口;因为了有工作,我才有实现我小小愿望的可能。但是工作并不是完全如意的,比如工资。工作中也要面对形形色色的难题和各种各样的冲突。无所谓啦,这就是生活。其实我应该感恩,10年前,我从农村来到这个陌生的大城市求学;10年后,我已经成家立业在这个城市扎根。上天对我已经很不错了。所以,新的一年,倾听内心的声音,勇敢地面对各种挑战

2014-02-10 00:17:34 428

原创 使用noVNC连接虚拟机控制台

最近在做一个KVM的虚拟机管理网站,需要在网页中显示虚拟机控制台。自然选到了noVNC。简单使用:命令行执行:./utils/launch.sh --vnc 127.0.0.1:5900在浏览器中访问:http://192.168.0.200:6080/vnc.html?host=192.168.0.200&port=6080可以进入对应的虚拟机控制

2013-12-03 17:18:06 3042 2

原创 Apache2 CGI 方式的设定

<!--body, td {font-family:Tahoma; font-size:10pt}-->一、Apache2 CGI 设定以ubuntu为例,首先安装apache2:sudo apt-get install apache2然后配置apache2服务器:sudovim /etc/apache2/sites-

2012-10-13 20:33:31 512

原创 flv格式

1.      9个字节的文件头:前三个字节为"FLV";第4个字节为文件的版本号(01);第5个字节的前5位是保留位,第6位标识是否有音频信息,第7位保留,第8位标识是否有视频信息。所以,图上的01说明当前的flv文件中只有视频数据,没有音频数据。如果第5个字节的值是05,说明既有视频数据,又有音频数据;最后4个字节表示文件头的长度,固定为9个字节。2.

2011-11-23 19:09:12 538

原创 python ssl socket 的使用(服务器+客户端)

首先,使用如下命令生成证书和key:openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem接下来实现服务器:import socket, ssl,time

2011-09-29 12:36:22 7656 1

原创 onStartCommand 的返回值

在android中,我们使用startService启动服务。在Service的派生类里,会调用onStartCommand(Intent,int,int)来启动服务。onStartCommand有三种返回值:START_STICKY:sticky的意思是“粘性的”。

2011-09-07 17:33:05 3373 2

原创 The Preference Activity

We can create ourselves preference activity in our android applications, but this is a tedious work, we have to operate every thing by ourse

2011-09-01 17:45:06 526

原创 Windows硬中断的处理过程

键盘、打印机、磁盘等等设备的中断请求是由中断控制器(Interrupt Controller)统一控制的。中断控制器提供有限的中断请求(IRQ)数,如i8259A可编程中断控制器(Programmable Interrupt Controller, PIC)它提供了16个IRQ。

2011-08-28 00:24:38 1628

原创 windows内核调试模式的开启

默认情况下,windows是不开启内核调试模式的。可以通过以下命令开启:bcdedit /debug ON重启计算机器后windows内核就处于调试模式了;在此模式下,有下安全性要求极高的软件是用不了的,如某些银行的网银系统。我们可以通过bcdedit /debu

2011-08-27 13:33:21 2000

原创 Storing preferences

In Android, you can use the SharedPreferenced class to store UI state,user preferences or application settings.Using the SharedPreferences c

2011-08-26 14:20:19 306

原创 近期在学习的一些内容

自从CSDN不支持客户端写博客后,原本不太经常写博客的我现在更加懒得写了。原因两个:第一个是写技术文件一般都要贴图,不支持客户端贴图就麻烦一点;第二个写作过程中虽然页面上可以自动保存,但不如客户端可靠,不小心还是会误关浏览器。发完牢骚,还是写写近期在学什么吧。

2011-08-19 14:41:08 314

原创 Windows编码方式

     很多情况下,微软把我搞得头晕晕。    Unicode是一种字符集,它只规定了符号的二进制表示。但是没有规定这个符号应该怎样存储。就是说,Unicode只是给每一个字符分配一个唯一的编号,至于这个字符在计算机中是以一个字节、两个字节或者更多来存储,这不是Unicode的职责所在。    ANSI是一种编码,但是它会随着你使用的平台的不同而不同的。比如你使用的是Windows

2011-06-13 11:58:00 1045

原创 Facade Pattern(外观模式)

<br />Facade pattern 可以叫做外观模式,或者是门面模式。很多情况下,我们发现有些类库太复杂了,太难使用了。这时候,对果你是一个体贴的类库开发者,或者你想让将来的人(包括你自己)面对这堆代码时,能够不再那么痛苦,你就可以使用外观模式了,把常用的功能做一下封装,让那再复杂的东西在你这里终止。<br /> <br />下面就是一下使用外观模式的例子:<br />import javax.swing.*; public class ShowOptionPane { publi

2011-03-21 17:41:00 327

原创 适配器模式(类适配器)

<br />      我们会在软件的开发过程中积累各种功能的代码。比如日志操作类,比如网络通信类等等。但是由于种种原因,当我们要用到这些类的时候,比较日期的格式不符合我们的要求,或者坐标的表示方案不同等等。还有一种情况就是这些类的功能都符合我们的要求,只是函数名称有出入。这个时候,类适配器就派上用场了。<br /> <br />      所谓的适配器模式,就是让那些原本不符合要求的类通过这个适配器变得符合我们的要求。想想当你的手机需要一个三脚的电源插座而办公桌上只有二脚的插座时,你怎么办?<br /> 

2011-03-16 17:50:00 448

原创 linux 下vnc剪贴板改造之二

<br />     上一篇文章里介绍的linux下vnc使用剪贴板的方法可能比较复杂,也不见得很有效。比如对于//uxxxx这类的字符串,就无能为力。下面再介绍另外一种方法。相对来说比较简单,通常也更加有效。<br /> <br />      我们知道,rfb协议里剪贴板的格式是:<br />typedef struct _rfbClientCutTextMsg {<br /> CARD8 type; /* always rfbClientCutText */<br /> CARD8 pad1;<b

2011-03-04 12:01:00 1412 1

原创 Linux下VNC 剪贴板的改造

    在RFB协议中,定义了剪贴板的支持。分别是ClientCutText和ServerCutText两条消息。前者是将客户端的剪贴板数据发送到服务端,后者正好相反。既然RFB协议中已经有了这两条消息,是不是意味着我们就可以使用剪贴板啦。很遗憾,不是。    目前的linux下的vnc服务器(如tightvnc server)只支持cut buffer这种剪贴板形式,我想将来也不会有其它的支持。原因如下:cut buffer是一种“消极”的Peer-to-Peer的通信方式,在整个过程中,内容的提供者只要

2011-02-25 13:48:00 2172

原创 vnc快捷方式的禁用

<br />不知道是因为什么原因, 在使用vnc时,一按下d,窗口就不见了。<br />后来发现,系统把按键d当成一个快捷方式。<br />使用gnome-keybinding-properties,找到相应的选项,禁用了就可以。<br />或者在首选项里也可以找到键盘快捷键这个设置。

2011-02-16 12:08:00 603

原创 mysql 导入导出

<br />一,mysql导出<br />导出数据库的结构和数据:<br />mysqldump -u root -p --skip-opt --skip-comments --complete-insert 'your db name' > 'your file name';<br />只导出数据库的结构:<br />mysqldump -u root -p -d --skip-opt --skip-comments --complete-insert 'your db name' > 'your fil

2011-02-16 09:48:00 498

原创 vmware server 安装备忘

<br /><br />1.首先在vmware网站上下载vmware server。这一步略过;<br />2.参考ubuntu社区中的一篇文章(https://help.ubuntu.com/community/VMware/Server),一般来说,vmware server 在新版本的ubuntu上安装是很麻烦的。ubuntu社区提供了一个方便的工具,让我们安装过程变得很简单;<br />3.安装完成后,就可以通过8333端口访问vmware server的管理网站了;<br />4.nat端口映射,

2011-01-24 10:43:00 416

原创 Ubuntu下简单的网络配置

<br /><br />1.静态IP<br />修改/etc/network/interfaces文件,内容如下:<br />auto eth0<br />iface eth0 inet static<br />address 192.168.3.90<br />gateway 192.168.3.1<br />netmask 255.255.255.0<br />network 192.168.3.0<br />broadcast 192.168.3.255<br /> <br />2.DNS

2011-01-17 17:40:00 459

原创 C言语哈希表(uthash)简介

一、哈希表的概念及作用<br />        在一般的线性表或者树中,我们所储存的值写它的存储位置的关系是随机的。因此,在查找过程中,需要一系列的与关键字的比较。算法的时间复杂度与比较的次数有关。线性表查找的时间复杂度为O(n)而平衡二叉树的查找的时间复杂度为O(log(n))。无论是采用线程表或是树进行存储,都面临面随着数据量的增大,查找速度将不同程度变慢的问题。而哈希表正好解决了这个问题。它的主要思想是通过将值与其存储位置相关联,来实现快速的随机存储。<br />关于哈希表的详细说明,可以参考以下链

2010-12-28 16:52:00 9471 4

原创 linux启动引导过程中内核在内存中的位置(linux0.11)

None

2010-12-23 09:02:00 675

原创 打造自己的字节序转换函数(16位、32位和64位)

在计算机科学领域中,字节序是指存放多字节数据的字节(byte)的顺序,典型的情况是整数在内存中的存放方式和网络传输的传输顺序。不同的处理器所采用的字节序可能是不同的,例如: x86,6502, Z80, VAX,和 PDP-11都是采用小端字节序,而 Motorola 6800 、 68k, IBM POWER, 和 System/360则采用大端字节序。另外,网络协议通常也会规定其所采用的字节序,还有像java这样的语言,也是规定了字节序的(tcp/ip和java都是采用大端字节序)。通常,系统中会提供n

2010-12-22 17:05:00 5896 3

原创 关于 RandR

在使用linux的过程中,有时会出现:“Xlib:  extension "RANDR" missing on display xxx”的提示信息。一般来说,这个信息是可以忽略的,但是,由于RANDR 扩展的不存在,会导致在使用的过程中无法动态改变屏幕的大小。这在xvnc中几乎是一个通病,除非你用的是如realvnc企业版之类vnc。 那么RandR是什么呢?wikipedia中说道:“The X Resize, Rotate and Reflect Extension (RandR)[2] allows

2010-12-21 12:11:00 8375

原创 shell 的一些特殊变量

      1. $# 传递到脚本的参数个数 2. $* 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过9个 3. $$ 脚本运行的当前进程ID号 4. $! 后台运行的最后一个进程的进程ID号 5. $@ 与$#相同,但是使用时加引号,并在引号中返回每个参数 6. $- 显示shell使用的当前选项,与set命令功能相同 7. $? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

2010-12-15 14:18:00 382

原创 VNC简介

      VNC的全称是Virtual Network Computing,是一种常见的远程屏幕分享工具。       VNC由Olivetti & Oracle研究室(ORL)开发,它的发明者是Tristan Richardson。最初是基于X Window 系统可以将用户的界面显示在不同的计算机上这一特点,ORL扩展了一些功能,让用户的界面能够动态地重定向到不同的X桌面上,并开发出了Teleporing System。这里可以简单地理解成就是基于X协议,将用户界面显示在不同的计算机上。但是,使用X协

2010-12-14 10:46:00 642

原创 X window Copy_Paste 的原理

     X Window中提供了三种方式实现client之间的传输数据。(这里强调,这种数据传输不同于我们所说的进程间通信,由于X环境的特殊性,两个client可以运行于两个互不联通网络环境中,而在同一个x server中显示。)这三种方式分别为:selections、cut buffers和drag-and-drop。这里只介绍前两种,至于darg-and-drop方式,它与selections相关,这里就不进行介绍了。     首先,Copy&Paste有主动和被动模式之分。主动模式就是在数据的传输

2010-12-09 16:51:00 1050

原创 utf8转换成gb2312

<br />在windows上使用gtk,经常遇到的问题是:gtk中的编码方式是utf8,而我们的windows 系统中使用的编码方式是gb2312,一旦我们要在gtk程序中使用windows api,所传入的参数(如文件名)就必需换成gb2312编码。<br />下面是一个utf8转换成gb2312的函数,使用完后,要记得释放内存。<br />#ifdef G_OS_WIN32/* * NB:the return string must free * */#include <Windows

2010-12-06 17:28:00 758

原创 libxml2在mingw中的使用

<br />libxml2是一套非常好用的xml库,官网是http://www.libxml.org/,但是天知道是什么原因,此网页无法访问。<br /> <br />好不容易下载下来,在mingw中却问题多多。<br />第一个问题:<br /> <br />E:**:14: undefined reference to `_imp__xmlFree'E:**:48: undefined reference to `_imp__xmlFree'E:**:14: undefined referenc

2010-11-15 11:32:00 2364 4

原创 django的结构

<br />(本文摘选自http://zh.wikipedia.org/wiki/Django)组件<br />Django的核心包括:一个对象-关系映射器,用作数据模型(以python类的形式定义)和关系数据库之间的媒介;一个基于正则表达式的URL分发器;一个视图系统,用于处理请求;以及一个模板系统。<br /><br />核心框架中还包括:一个轻量级的、独立的Web服务器,用于开发和测试。一个表单序列化及验证系统,用于HTML表单和适于数据库存储的数据之间的转换。一个缓存框架,并有几种缓存方式可供选择。

2010-11-07 23:29:00 487

原创 使用GtkBuilder要注意的问题

最近想用GTK实现一个系统托盘,我使用的开发工具是Anjuta+Glade,很自然就会用到GtkBuilder。结果问题来了,弹出式菜单显示不了, 出现了如下的错误:(monitor:3810): Gtk-CRITICAL **: gtk_status_icon_set_visible: assertion `GTK_IS_STATUS_ICON (status_icon)' failed(monitor:3810): Gtk-CRITICAL **: gtk_menu_popup: assertion `

2010-11-03 10:50:00 1085

MFC类库详解

像字典一样,和JDK文档差不多

2007-06-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除