便便代码人生

关注技术, 偶尔动动手

Archive for March, 2009

[原] Total Commander Service to show/hide TC by hotkey/boss key/shortcut key

Posted by bianbian on 2009-03-17 02:48


本文Tags: , ,

Total Commander Service is a NT service, which supports:
1. Auto-launch TC when starting Windows
2. Hotkey: Win+Q to show/hide TC, or start TC when exit

Please put the TotalCMDService.exe (52K) in TC’s directory, and run to install/uninstall the NT service.

Tips, the best configuration:
Operation:
Check “Allow only 1 copy of Total Commander at a time”
Uncheck “Move icon to system tray when minimized”

Feel free to modify or distribute this code in any medium as long as these following two lines remain unchanged:
Total Commander Service, by bianbian.org@gmail.com
http://bianbian.org/technology/336.html

Download exe:TotalCmdService.zip (22K) , and src:TotalCmdServiceSrc.zip (10K, VC++6.0)

标签: , ,

遵守创作共用协议,转载请链接形式注明来自http://bianbian.org 做人要厚道

相关日志

Posted in C/C++, Technology, Windows | 4 Comments »

[原] 自制Total Commander自动启动和呼出热键

Posted by bianbian on 2009-03-16 08:25


本文Tags: , ,

经历多次安装卸载安装卸载,我这次终于静下心来琢磨了一下传说中的Total Commander。
总算有点上手了,确实方便,尤其现在内存大,根本不在乎耗多少资源。哈哈
不过郁闷的是这个玩意定义了那么多快捷键,却不支持呼出自己的快捷键。。。
好吧,我写个了windows NT 服务,来启动Total Commander。。。
同时注册了个全局热键(快捷键):Win+Q 来呼出Total Commander
Win+Q:T400的键盘这两个键,对我的手来说刚好是左手拇指和小指很舒服的位置。如果要改您下源码改吧
在注册表里扫了一遍,居然没有total commander的任何信息,果然绿色。
好吧,我承认,现在由于忙的关系,这个服务只做了个框。。。。过几天发布。。。。
补充:
好吧,发布了,嘿嘿:[原] Total Commander Service to show/hide TC by hotkey/boss key/shortcut key
1. 是系统服务(意味着没登录就启动TC了)
2. Win+Q隐藏或者呼出TC
下载到TC的目录里运行,安装/反安装(第一次运行安装,第二次卸载,。。。)。
由于是系统服务(默认用户是LocalSystem),如果直接启动TC也将以LocalSystem的身份运行,会带来很多问题(比如输入法就启动不了了)。
因此程序调用API(LogonUser)先进行了模拟登录,所以安装的时候需要输入用户密码。

Download exe:TotalCmdService.zip (22K) , and src:TotalCmdServiceSrc.zip (10K, VC++6.0)

标签: , ,

遵守创作共用协议,转载请链接形式注明来自http://bianbian.org 做人要厚道

相关日志

Posted in C/C++, Technology, Windows | 11 Comments »

[转] T400 XP系统安装步骤

Posted by bianbian on 2009-03-13 05:09


本文Tags: , , ,

A. 首先开机按F1进入BIOS设置,进入configuration,然后在SATA里面将SATA模式设置compatibility(兼容模式),默认的是AHCI模式(高级主控接口),这一步很重要,否则安装XP时会蓝屏。其原因是因为XP系统安装盘一般不带SATA驱动。然后按F10,回车,退出BIOS设置。注意,在Ghost系统之前,也必须将此选项设置成compatibility,不然一般的DOS启动盘会发现不了硬盘的存在,导致Ghost失败,囧…

B. 开机按F12键选择从光驱启动

C. 系统安装(具体过程不再详解)

D. XP2的系统安装完毕。接下来的事情就是安装驱动程序了

E. 驱动安装(一共17个驱动)
1. 首先安装Intel主板驱动程序
2. 安装显卡驱动,注意,解压缩后,不要点击其子目录下的setup,而是分别安装driver和CCC两个子目录下的setup,然后再装一个.net fx 2.0
3. 安装显示器驱动,在桌面显示属性里面手工升级驱动
4. 安装无线网卡和网卡,看清楚自己的两个网卡型号了!无线网卡可直接setup,有线网卡必须用驱动更新方式手工安装
5. 检查一下设备管理器中的系统设备下是否有“M$用于High Definition Audio的UAA总线驱动”,这个是安装MODOM和声卡的前提,如果没有的话,得先去找个M$的HD总线补丁打上(Thinkpad T400主板驱动中好像有,所以一般不要另装)
6. 接下来声卡驱动、猫驱动、摄像头驱动安装
7. 安装蓝牙驱动
8. 接下来安装3个“基本系统设备”(4in1读卡器)
9. 再安装智能读卡器驱动(这个貌似有点问题…需要inf手工右键点安装)
10. 接下来安装指纹的驱动程序
11. 再安装AMT,这个比较恶心,对应着两个未知设备,一个叫“PCI简易通讯控制器”,一个叫“PCI串行口”,两个联想的AMT驱动都必须装
12. 接下来再装迅盘驱动,对应着设备管理器中的“PCI内存控制器”,必须手工升级驱动。虽然迅盘在XP下不起作用,但还是要安装的,不然每次重启都提示找到新硬件,甚烦!
13. 安装SATA驱动程序。这个是个难点。解开驱动压缩,首先运行其中prepare子目录中的install.bat,然后重启,记得进系统前一定要先将BIOS SATA configuration从compatibility改为AHCI;重启后,再在设备管理器中,展开IDE ATA/ATAPI控制器,发现其中有个”PCI Device”,然后手工升级这个驱动,SATA这才安装完毕。
14. 再安装TPM安全芯片驱动,这个在设备管理器中对应着某个“未知设备”,必须手工升级驱动,驱动在TPM子目录里面
15. 然后安装电源管理驱动和电源管理软件,至此,在设备管理器中扫描检测硬件改动,不会发现有任何未识别的设备。

F. 最后,可根据需要,把检测硬盘震动、Access Connections、Presentation Director、Hotkey Features等软件装上

from: http://www.cppblog.com/w2001/archive/2009/02/24/74741.html

AMT可以在BIOS里禁用,呵呵。

标签: , , ,

遵守创作共用协议,转载请链接形式注明来自http://bianbian.org 做人要厚道

相关日志

Posted in Technology | No Comments »

[原] C#泛型实现流中C/C++格式的struct数据的通用读取方法

Posted by bianbian on 2009-03-02 09:26


本文Tags: , , ,

背景简单提一下:好多个C/C++构成的结构体(struct)数据需要在C#中读取,他们可能在文件中或网络中(总之有办法转为流Stream)。
在C#中用Marshal的PtrToStructure()可以实现byte[]向struct的转变。
不过如果每个struct都要写个方法也太低效了,尤其是我现在遇到几十个struct的情况。。。。
研究了一下泛型(C#2.0就支持了),发现方法泛型可以解决这个问题。
Read the rest of this entry »

标签: , , ,

遵守创作共用协议,转载请链接形式注明来自http://bianbian.org 做人要厚道

相关日志

Posted in C#, Technology | 2 Comments »

[原] C# 3.0的委托(delegate)及Lambda表达式应用实例

Posted by bianbian on 2009-03-02 11:27


本文Tags: , , , ,

C# 3.0新增了很多特性,其中委托(delegate)配合Lambda表达式使得程序简洁了很多。
我也就来尝尝鲜(其实也不算鲜了,C# 4.0都出来了。。。),说说我的应用实例:读取Micaps(一种气象上用的软件)数据文件。
Micaps有各类数据文件,比如第一类表示地面填图,格式是:
diamond 1 屏幕上需显示的内容
年 月 日 时次 总站点数
区站号 经度 纬度 ……(后面的你也不关心,就略掉了)

第二类表示高空填图,格式是:
diamond 2 屏幕上需显示的内容
年 月 日 时次 层次 总站点数
…… (参数与地面当然不一样)

如上,第一行是所有文件的通用信息,表示了该文件的类型、标题等,后面就是具体数据,每类文件格式不一。
于是,就要针对不同类型写不同的处理方法,但是,打开文件、关闭文件、检验第一行 这些又是一样的,导致代码重复。
这时候,委托就非常有意义:可以在父类里完成通用处理,而具体的数据处理通过委托交给子类具体负责。
Read the rest of this entry »

标签: , , , ,

遵守创作共用协议,转载请链接形式注明来自http://bianbian.org 做人要厚道

相关日志

Posted in C#, Technology | No Comments »