自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

微笑的撒旦的专栏

撒旦的天堂

  • 博客(27)
  • 资源 (2)
  • 收藏
  • 关注

转载 Wsizer: 用键盘控制窗口

Wsizer是一个我刚刚开发完成的软件。它拥有我很喜欢的一些功能。和DeskAngel一样,那些功能都来源于日常使用的积累。作为第一版,它包含三个部分的功能。第一个功能,最小化窗口到系统托盘区。这个功能同样也包含在DeskAngel中,但是Wsizer取消了让用户感到疑惑的预定义的列表。操作也和DA中的一样简单,按下’Alt’键,然后最小化窗口,窗口就会从任务栏上消失,改为出现在系统托盘区。系统托

2009-02-20 13:25:00 1127

原创 DeskAngel使用指南

DeskAngel使用指南 (括号中为菜单中的名字,该功能可通过菜单开启或关闭)-- 微笑的撒旦DeskAngel集成了很多有用的功能,是使用windows系统的人士日常办公不可或缺的一款工具。下面将详细描述一些主要的功能。1. 切换窗口永在最前状态(激活窗口最前功能)对经常在电脑上编辑文件的人来说,这是非常有用的一个功能。比如你需要从多个文件中收集资料,并把它们汇总到一个最终文件。这时你可以把打

2008-12-03 18:57:00 2561

原创 c语言递归实现的通配符搜索

#include #include bool WildSearch(char *psz_buf, int n_buflen, char *psz_sub, int n_sublen, bool b_full, char sz_prechar){ if (n_buflen == 0 && n_sublen != 0) {

2008-07-03 15:20:00 1348

原创 opera test

opera test测试

2008-04-24 19:03:00 461

原创 在资源管理器中显示应用程序的图标

一个应用程序想在windows的资源管理器中能够显示图标,需要满足以下几点:1. 图标为16色。直到vista,资源管理器中仍然只能显示16色的图标。如果你的图标大于16色,在资源管理器中显示的就是一个没有图标的程序。2. ID最小。在资源管理器中显示的图标,是在resource.h中id最小的那个。一般来说,也就是最先被创建的那个图标。

2008-04-22 14:32:00 1819 1

原创 kmp算法

分两个部分:1. 子串预处理表2. 搜索算法子串W预处理表T[]的建立:1. A为W的子串,并且其字首的子串和字尾的子串同为B。2. W中字符,若其前面的所有字符构成子串A,则该字符在T中对应的值为最大B的字长。3. 否则,该字符在T中对应的值为04. T[0] = -1, T[1] = 0搜索算法:1. i 为当前正在比较的字符在W中的位置(从0开始),j为主串S中开始比较的字符的位置2

2008-04-01 16:51:00 561

原创 exception in c++(1)

exception是有用的。但不能在程序中大量使用。更不能把exception作为error handling的一种方式。问为什么的人是还没有了解error和exception的区别。就拿经典的除零来讲。大多数人都说除零是一个exception,但是忘了这是对cpu来说的。把零当成除数是一个常识性的错误(error),但对cpu来说只是一个异常,因为它并不了解一段机器码是一个除法,它没有除法单

2008-01-18 15:23:00 1372

原创 C++ exception 七宗罪 (exception in c++ (2))

1. 晦涩的多重出口一个函数最好只有一个出口。但是有时为了减少函数代码的复杂度,也会在代码中间,比如一个判断之后使用return跳出函数。但是throw却和return不同。你无法的很快的判断throw之后的代码位置,你需要结合上下文,甚至是其他的函数来理解这一流程。你无法总是明确的知道一个throw会在什么时候被捕获。这是比goto更糟糕的东西!虽然在happy path上你无需关注

2008-01-14 19:14:00 1393 2

原创 Opera官方中文论坛

地址 因为opera communication被屏蔽,一群opera fans和opera沟通后,在opera支持下建立了该官方性质的论坛。

2007-10-02 19:59:00 1290

原创 可以使用opera写文章了?

测试一下,看看是否真的支持opera。虽然cpu的使用会在100%,但是可以考虑以后再把blog搬回来。

2006-08-23 13:24:00 1126

原创 利用python批量修改文件名中特定字符串

    Windows下的rename命令只能使用相同长度的字符串替换文件名中的特定字符。cygwin下的mv不支持批量更名。所以下自己写一个。原来准备使用C的,感觉太麻烦;主要是想多用用python。    第一次使用python是做video encoder的时候,把它当成超级计算器。写了一些小程序,来运算一些算法,比如RGB to YUV,FDCT,IDCT之类的。可惜离职时留在了公司的电脑

2005-01-26 19:31:00 5598 1

原创 类型不匹配引发的一个issue

 VS 2003.net在使用SetFilePointerEx设置文件位置的时候,需要使用到LONGLONG类型,然后在读一段dwRead长的数据之后,需要把文件位置复位: LARGE_INTEGER lnFilePos.QuadPart = 0x00 - dwRead;SetFilePointerEx(…); 问题就出现了,这段代码是有问题的。因为0x00 - dwRea

2004-10-16 01:29:00 1254

原创 在快捷方式的右键菜单上添加打开所在目录的菜单项

有时候经常要打开一个文件所在的文件夹,去寻找其他的文件,比如要打开vc的工具目录运行没有列在开始菜单中的程序,或是修改一个程序的配置文件。对于有快捷方式的,一般的做法是在快捷方式上右击,打开快捷方式的属性,通过find target来进入所在的文件夹。下面列出的vb script会直接打开快捷方式的目标文件所在的文件夹。通过修改注册表,可以在右键菜单上添加Open Folder项来调用这个脚本。/

2004-10-15 14:24:00 2357 1

原创 C++ templet操作符的设计缺陷

之前一直主要使用汇编和C,最近想看看stl,翻出jjhou的 《Genericity/STL大系》。其中第一个例子:#include #include #include #include using namespace std;int main(){int ia[ ] = { 27, 210, 12, 47, 109, 83, 40 };vectorallocator > vec( ia, ia+

2004-10-06 13:50:00 1080

原创 DirectShow Filter的Render问题

昨天与同事讨论问题的时候,发现如果在graphedit中render一个mpg文件的话,有时候,有些filter会被多次创建,而且是先创建多个instance,然后再删掉其余,只留下一个;而不是创建一个,然后删掉,之后在创建一个。这样问题就出现了。 如果我们在filter的构造函数中create一个文件的句柄,在filter运行的时候对这个文件进行操作,然后在析构函数中close这个han

2004-09-01 10:08:00 2199 1

原创 让Video Render停下来

使用DirectShow开发Filter的过程中,遇到一个奇怪的问题。当Video Render有图像可以播放的时候,点GraphEdit的Stop没有问题,可以很正常的停止;但是当Render没有数据的时候,点Stop,整个graphedit就会没有响应,10秒之后,timeout了,会弹出个对话框,说无法停止。解决这个问题的方法很简单,就是在某个filter的pause中当m_State

2004-08-06 16:43:00 1559

原创 最简单的makefile

NAME=main $(NAME).exe : $(NAME).obj   $(NAME).obj : $(NAME).cpp   要点: exe在前,obj在后。因为nmake判断$(NAME).obj,如果不是最新的,就更新obj,然后创建exe。这里,分号前叫做“target”,分号后叫做“dependent”。 这还不是最简单的,这里使用了宏NAME。对宏的引用是$(),如果宏是单个字符

2004-08-02 19:26:00 1897

原创 搬家完毕

之前的文章都是从fantast_xue.blogone.net上搬过来的,并作了一些修正。主要是一些技术相关的文章。以后就只贴技术文章了。

2004-08-01 00:08:00 1101

原创 common lisp for emacs

找到一个gnu common lisp,可以集成在emacs中。现在可以lisp和emacs一起学习了:em22:。 http://www.cs.utexas.edu/users/novak/gclwin.html  我改了其中的一些设置,以符合我自己的环境, gcl1.bat: 以下内容为程序代码:  @echo off set C_INCLUDE_PATH=F:gnuGCLisplibgcl

2004-08-01 00:04:00 2954 1

原创 使用汇编来编写静态库

      其实只要书写普通的汇编语言文档,然后使用ml /c /coff /Cp xxx.asm来编译obj文件,之后使用lib.exe来打包lib文件就可以了。    调用时申明需要调用的函数的原形即可,同时需要注意的是它的调用方式。如果定义时是stdcall,调用时也需要使用stdcall(如果提供头文件应该会统一的),如果给C/C++使用,对stdcall来说,汇编中定义: … stdca

2004-08-01 00:00:00 2016

原创 cygwin下的ftp自动登录

 在cygwin下,windows的ftp有很大的问题——无法删除输入的字符,所以下了一个netkit-ftp-0.18-pre1 for Linux,在cygwin下编译了一下,比win下的ftp好用很多,除了在输入用户名(可能还有密码)的时候无法删除字符外,其他时候都很好,只是有时好像会变成zombi——但是已经不是win下的ftp可比了。   今天想登录自己的ftp的时候少输入一些字符,就在

2004-07-31 23:58:00 3082

原创 软件工程的一些思考

两个人以上的项目,就需要有管理。为什么这么说呢?因为有两个人,就需要交流;有交流,就必然会有合作;有合作,就需要有分工;有分工,就需要有协调;有所有这些,就需要有管理。但此刻的管理,我们说,杀鸡用牛刀,高射炮打蚊子,都是不智的。但还是需要管理。  然而一个人的项目是否不需要管理?当然不是,因为有文档,有代码,有灵感,有经验,等等都需要管理。只是此刻的管理是自己完成的,可以更简单一点。我们已经有过一

2004-07-31 23:53:00 1763 1

原创 可变参数宏

新的C99规范支持了可变参数的宏,具体使用如下:  以下内容为程序代码:  #include  #include  #define LOGSTRINGS(fm, ...) printf(fm,__VA_ARGS__)  int main() {      LOGSTRINGS("hello, %d ", 10);      return 0; }   但现在似乎只有gcc才支持。

2004-07-31 23:43:00 2076 2

原创 Compile libjpeg.dll with vc.net

从sourceforge上下载下来的libjpeg源代码中有一个makefile.vc的文件,可以通过nmake /f makefile.vc [nodebug=1]来编译libjpeg,但是只能编译静态库,如果需要编译dll以便在emacs等程序中使用的话,需要修改makefile.vc和jmorecfg.h文件。在makefile.vc文件中添加编译dll规则: 以下内容为程序代码:  li

2004-07-31 23:41:00 1674

原创 Emacs与visual studio结合

功能:把当前打开的文件用emacs打开.我之前下载了VisEmacs,看来也就是这个功能.当然,他会自动打开(但是我不喜欢). visual studio.net 2003:Menu->Tools->External Tools->Add Title: &EmacsCommand: F:/gnu/emacs/bin/gnuclientw.exeArguments: $(ItemPath)Initi

2004-07-31 23:38:00 3384

原创 ntfs 数据流

前几天看到了一片关于ntfs数据流的老文章,依此写了一个枚举文件中命名数据流的小软件,现在把源代码贴出来。 以下内容为程序代码: // ntfs.cpp : Defines the entry point for the console application.// // 1.0.0.0: First version.// 1.0.0.1: All error info output to std

2004-07-31 23:32:00 1277

原创 在windows下编译GNU Emacs

      如果还不知道emacs是什么,可以上google查一下;如果觉得notepad已经足够,或是vs.net 2003已经完美,那么下面的内容不是为您准备的。       要取得emacs最新源代码,可以ftp://ftp.gnu.org/emacs 下载,但推荐的方法是通过CVS下载最新的源代码。使用如下命令: export CVS_RSH="ssh" cvs -z3 -d:ext:a

2004-07-31 22:59:00 6014 12

MiniHex-16进制编辑

非常快速的16进制编辑工具。支持快速编辑大文件。

2009-02-02

DeskAngel

桌面辅助工具,鼠标增强工具。

2008-01-18

空空如也

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

TA关注的人

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