随笔-60  评论-35  文章-15  trackbacks-0
 

QCurses是什么?
QCurses是对Linux/Unix下面终端界面库curses的C++封装,可以快速开发基于curses的界面程序,新版本的QCurses更是增加了qcs脚本与解释器使其成为快速开发基于字符界面的开发利器!

基于需要QCurses主要提供平台为SCO UNIX5.X的操作系统,如果有其他系统的需要可以发信息告知我,我会考虑加入下一个版本中。

QQ:1964477
MSN:qxk2001@hotmail.com
E-MAIL:qxk2005@gmail.com

QCurses旧版本的主页是:http://qclass.xbhome.com/
新版本的主页正在制作中。

新版本功能简述(待续):

  1. 编写qcurses程序只需要编写“.qcs”脚本文件即可进行qcurses程序编写,脚本内容类似于html文档,而qcurses自带的解释器类似于IE浏览器,这样编程人员就可以从繁杂的代码编写中解放出来专心进行业务层的代码编写了。
  2. 新版本的qcurses支持网络传输,自带一个类似于Apache的服务器,同时使用qcurses自带的解释器就可以进行网络程序开发,因为每个程序的界面都已经使用QCS脚本编写好了,因此网络中传输的仅仅是文本文件了,而这些文件在本地进行解析并且动态生成界面,同时可以将这个界面中相关的数据提交给qcurses的网络服务器,而业务层的实现就可以在这里做到
  3. 待续……
posted @ 2006-04-26 20:40 Q系列类、方法、变量…… 阅读(201) | 评论 (0)编辑 收藏

一、系统属性中的项目∶
鼠标右健单击桌面上的"我的电脑",选择"属性",打开"系统属性"对话框
  1.关闭系统还原
找到系统还原选项, 如果你不是老噼里啪啦安装一些软件(难道你比我还厉害),你也可以去掉,这样可以节省好多空间。将"在所有盘中禁用系统还原"前面的囗中打钩,点击"应用"。
  2. 去掉"更新"选项:
对于大多数的用户来说,Windows XP的Windows Update功能似乎作用不大,多数程况下,补丁越多系统越慢,我们可以去掉它,操作步骤如下:点击"自动更新"选项卡,将"保持我的计算机最新"前面的"囗"内的勾取消,然后点击"应用"。
  3. 打开DMA传输模式∶
选"硬件"选项卡,定"设备管理器"在设备管理器里展开"IDE ATA/ATAPI 控制器"前面的"+"号,可看到"主要通道"和"次要通道",右键点击"主要通道"或"次要通道",选属性,在属性窗口中点"高级"选项卡 ,将所有的传送模式都设定为"使用DMA(若用的)" ,系统就会自动打开DMA支援(在BIOS里也应该要先设为支援DMA),然后点击"确定"。
  4.为IRQ中断请求排优先次序
为IRQ中断请求排优先次序计算机的每一个主要部件都设了个IRQ中断号。这里就是要通过修改每个IRQ请求的优先次序达到优化目的。这里主要的优化对象是系统/CMOS实时钟,它通过主板来提升性能。首先,要确定你想要哪个组件获得更高的性能,然后找到这个硬件正在使用的IRQ中断号。怎么找呢?打开控制面板里的系统属性(也可以按键盘上的Windows+Break热键组合打开它)。选中"硬件"选项卡,然后点击"设备管理器"按钮。右键点击要查IRQ号的组件,选择"属性",然后点击"资源"选项卡。这里可以看到设备正在使用的IRQ中断号(如果没有IRQ中断号,选择另一个设备)。把中断号记下来,然后运行注册表编辑器regedit,找到注册表中的HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/PriorityControl 位置。我们要在这里建立一个名为IRQ#Priority(其中"#"是具体的IRQ中断号)的DWORD双字节值,然后把它的值设为1。譬如说,我的系统CMOS实时钟的IRQ中断号是8,我要建立的键名就是IRQ8Priority。重新启动计算机之后,就会发现刚优化过的组件性能有所提高。笔者强烈建议用这个方法优化系统CMOS实时钟,因为它能改善整块主板的性能。当然也可以把多个IRQ中断号优先级提高,但这样做的效果没那么好,而且有可能造成系统不稳定。要把这个优化设置撤消的话,只要把刚才建立的注册表键值删掉就OK了。
  5.关闭"远程桌面"功能
顾名思义,这个功能就是让你可以让别人在另一台机器上访问你的桌面。可以说,在一个网络环境中,比如单位的局域网,这个功能很有用(要在防火墙没有限制的情况下)。比如你有问题了可以向同事求助,他可以不用到你的跟前,直接通过"远程桌面"来访问你的机器帮你解决问题。我个人认为这个功能有一定的不安全因素在里面,并且,计算机也不是时时都在出问题,所以我的建议关掉它,否则你不用它就等于白白浪费内存。
  6.优化"视觉效果"设置
Windows XP在操用界面方面,的确是好看多了,不过好看的背后是以消耗大量内存作为代价的,如果你的内存没有256MB以上,最好还是优化一下你的"视觉效果"功能。右键单击"我的电脑",点击属性,点击"高级",在"性能"一栏中,点击"设置",点击"视觉效果",在这里可以看到外观的所有设置,可以手工去掉一些不需要的功能。
  7.优化"启动和故障恢复"设置
如果在你的系统崩溃时发现你的硬盘使劲儿的响,那是因为Windows XP正在写DUMP文件呢,如果你不打算把这个文件寄给微软(浪费电话费),那么它又有什么用呢?所以笔者的建议是关闭。右键单击"我的电脑",点击属性,点击"高级",在"启动和故障恢复"一栏中,点击"设置",其中的"系统失败"一栏中,建议改为∶自动重新启动,不转存。
  8. 禁用"错误汇报"功能
这个功能可以在你的Windows XP发生错误的时候,系统自动收集一些错误资料然后发送给微软公司,以便其完善他们的操作系统(又一个浪费电话费且没用的功能)。笔者建议关掉它。如果这个功能对你没有用,那又何必让它占用着你的内存呢?右键单击"我的电脑",点击属性,点击"高级"→"错误汇报",选择"禁用错误汇报"功能。
  9.自定义虚拟内存的大小
在"高级"选项卡中的"虚拟内存"栏目内点"更改"按钮。选择"自定义大小",在"初始大小值"和"最大值"框内同时输入同一数值,该数值的大小=你的物理内存大小的2.5倍即可,(如果你的内存是128M的即输入576,内存越大所用的倍数越小。如果你有512M以上的内存即可禁用虚以内存,选择"无分页文件")。输入数值后,一定要点击"设置"按钮,看到上面框内的数值改变了才生效,然后点确定,关闭窗口。

二、显示属性中的项目∶
右键单击桌面空白处,选择"属性",打开"显示 属性"
  1.关闭休眠支持
关闭"休眠支持"因为休眠功能占的硬盘空间约250M, 所以关闭比较好,屏幕保护程序-->电源-->休眠--取消"启用休眠"前面囗内的勾(不要打勾)(不过:我觉得休眠还是有用的。)
  2.电源使用方案
其中"关闭监视器"建议选择30分钟为宜,而"关闭硬盘"这里选择"从不",因为对硬盘进行关闭的话,再重新启动对磁头有很大的伤害.
  3.刷新率
一般情况下你把刷新率设置在75Hz以上显示器就没有闪烁感,你就会感觉很舒服。而刷新率和显示器的带宽有关系,带宽越大其刷新率就越高。另外,俺建议你不要使用额外的刷新率,因为这相当于是对显示器进行超频,而且和对CPU的超频相比伤害更大!只要你的显示器刷新率达到85Hz就足够了,而不必刻意追求更高的刷新率,反而会大大减少了显示器的寿命。

三、组策略中的项目∶

开始-运行-键入 gpedit.msc ,打开"组策略"窗口
1. 取消限制可保留带宽
展开 "管理模板"中的"网络" , 展开 "QoS 数据包调度程序", 在右边窗右键单击"限制可保留带宽" ,在属性中的"设置"中有"限制可保留带宽" ,选择"已禁用",确定即可。当进行完上述修改并应用后,用户应该在网络连接的属性对话框内的一般属性标签栏中能够看到 "(QoS 数据包调度程序)"。如果没有该条目,说明修改没有成功,QoS仍然在占用着20%的带宽。Home版不支持该操作,无法去除该限制!
    有必要说明一下,但还是留着让大家参考!
    关于xp或2003有20%的"保留带宽",有这样一个推论:去掉后速度提升20%,xp在带宽上做了手脚。这些说法在网上广为流行,然而你费时费力去掉这个限制后,却发现速度并没有提升!
据我所知,这个方法最早来源于《电脑报》,直到今天这个所谓的"技巧"还在网上广为流传。所以,我觉得有必要在这儿说一下。
    其实根本不用去掉。
    这个20%带宽并非"保留",是指在使用QoS 应用程序编程接口 (API)的程序最多在每个接口基础链路上可以申请预留20%的带宽,但是如果此程序并未充分利用,这些带宽仍然可以被其他程序所用。
    在微软的《技术资源规划》中指出:除非有应用程序专门请求优先的带宽,否则在 Windows XP PC 上运行的应用程序可以共享所有的网络带宽。但如果做出请求的应用程序没有发送数据,则这些"预定"的带宽仍可用于其它应用程序。 。。。默认情况下,对终端系统的每个接口上的基础链路而言,应用程序可以预定的合计带宽最多可为该基础链路速度的 20%。如果预定了带宽的应用程序没有发送足够的数据来充分利用带宽,则预定带宽中未被使用的部分将仍可用于同一主机上的其它数据流。
    可见,所谓20%的保留带宽纯属个别人断章取义,误导视听而已。


四、控制面板中的项目∶
  1. 调用系统声音方案
与以往的Windows操作系统相比,Windows XP提供了更加优秀的声音方案,但系统默认却没有调用该方案。为了激活该方案,我们需要执行下列操作:打开"控制面板",选择"声音、语音、音频设备"项,从中找到"修改声音方案"的任务栏,在打开的对话框中选择"Windows默认",此时系统会提示用户是否保存以前的声音方案设置,用户可以选择"否"并点击"确认",完成修改。
  2.在关机时清理页面文件
打开"控制面板",点击"管理工具"→"本地安全策略"→"本地策略"→"安全选项",双击其中"关机:清理虚拟内存页面文件"一项,点击弹出选单中的"已启用"选项,单击"确定"即可。


五、注册表中的项目∶
点击开始菜单,选择"运行",然后输入"regedit"回车。即可打开注册表编辑器
  1.加速XP的开关机缩短等待时间
找到HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control, 将 WaitToKillServiceTimeout 的佰设为:1000或更小 ( 原设定值:20000 )。找到 HKEY_CURRENT_USER/Control Panel/Desktop 键,将右边视窗的WaitToKillAppTimeout 改为 1000, ( 原设定值:20000 )即关闭程序时仅等待1秒。将 HungAppTimeout 值改为:500( 原设定值:5000 ), 表示程序出错时等待0.5秒。
  2.让系统自动关闭停止响应的程序
打开注册表 HKEY_CURRENT_USER/Control Panel/Desktop 键, 将 AutoEndTasks 值设为 1 ( 原设定值:0 )
  3.提升Prefetcher服务性能
Windows XP自带了一个名为Prefetcher的服务,这个服务管理着Windows启动时的程序初始,其中指定的程序可以在以后使用中快速载入。Prefetcher在默认情况下就是打开的,不过它的性能还可以进一步提升。打开注册表编辑器,在注册表中找到 HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/MemoryManagement/PrefetchParameters,其中有一个键值名为EnablePrefetcher,多数情况下它的值是3。推荐设置值是5,在我的机子上,设为5的时候工作状态最佳。可以随便试试不同的数值,直到找到最适合自己机子的值为止。也可以把Prefetcher禁用掉,只需把值设为0就可以了。不过,除非是为了测试用途,一般人都不会傻到把它设为0.
  4. 不加载DLL文件
浏览器在使用之后往往会有部分DLL文件在内存中缓存好长一段时间,相当大一部分内存会被不用的DLL文件点用。为了防止这种事情发生,找到注册表如下位置HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer接下来建立一个名为AlwaysUnloadDLL,值为1的双字节值。如果想要去除这项优化,只需把该键值设为0(也可以干脆把键删掉)。注意:该项优化要在Windows重新启动后才生效。
  5. 完全关闭Windows XP文件保护功能
此招慎用,从注册表中找到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon,修改"SFCDisable"键值"FFFFFF9D",如果需要重新启用该功能,重新设置为"0"就可以了。
  6. 加快窗口显示速度
加快窗口显示速度:我们可以通过修改注册表来改变窗口从任务栏弹出,以及最小化回归任务栏的动作,步骤如下:打开注册表编辑器,找到HKEY_CURRENT_USER/Control Panel/Desktop/WindowMetrics子键分支,在右边的窗口中找到MinAniMate键值,其类型为REG_SZ,默认情况下此健值的值为1,表示打开窗口显示的动画,把它改为0,则禁止动画的显示,接下来从开始菜单中选择"注销"命令,激活刚才所作的修改即可。
  7.设置启动信息或增加警告信息
如果在启动Windows XP时,希望显示一些自己定义的个性化信息,可以按以下步骤来操作:找到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon子键分支,双击在它下面的LegalNoticeCaption健值名称,打开"编辑字符串"窗口,在"数值数据"文本框中输入信息对话框的标题,比如"你好,欢迎使用本机器",然后双击LegalNoticeText,在随后出现的"编辑字符串"窗口中输入想要显示的警告信息,比如"请不要随意修改本机的设置,谢谢!",单击"确定"按钮,重新启动即可看到修改后的效果了。
  8.每次启动时保持桌面设置不变
我们可以通过修改注册表来保护我们的桌面设置,无论做了什么样的修改,只要重新启动之后桌面就会恢复原样。步骤如下:找到HKEY_CURRENT_USERS/Software/Microsoft/Windows/CurrentVersion/Polices/Explorer子键分支,在它的下面找到NoSaveSettings,其类型为REG_SZ,将其键值改为"0",或者直接删除该键值项,重新启动系统使设置生效。
  9.修改鼠标右键菜单
修改鼠标右键菜单我们知道在98下可以通过注册表来修改鼠标右键菜单,其实在WinXP中也可以。方法如下:这里以在鼠标右键菜单上添加"用DOS窗口在这里浏览"为例。打开注册表编辑器,找到HKEY_CLASSES_ROOT/Directory/shell,然后选中它,点击鼠标右键,新建一个主键,取名为"DOS",然后选中新建的主键,在右边双击默认字符串值,在弹出的对话框中输入"用DOS窗口在这里浏览",然后选中新建的主键,再建立一个主键,取名为"command",选中"command"主键,修改默认值为"cmd.exe /k /"cd %/""即可。检查:在任意一个文件夹上按下鼠标右键,可以在弹出的菜单里面看到"用DOS窗口在这里浏览",选择用DOS窗口在这里浏览,按下鼠标左键,看到没有,DOS窗口弹了出来!
  10.修改系统ID号
修改系统ID号(ID号在WinXP里面很重要)在系统属性里面的常规标签下我们可以看到一串数字,如:55661-005-0809362-22169等等。这就是ID号。正版的WinXP每一套的ID号是不相同的(应该可以猜到我的目的了吧?),那么我们可不可以修改呢?当然可以(废话!如果不可以就没有必要写这篇文章了)。跟我来,看看我的本领!1)ID号是存放在注册表里面的。主要放在这几个键值下:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Registration的字符串ProductIdHKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/User inFORMation的字符串产品标识 /*如果没有使用向微软注册的话,这里不会出现*/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion的字符串ProductIdHKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion的字符串ProductId以上4个地方就是在注册表中存放ID的键值,修改的时候要同时修改,修改完以后再看系统属性里面的常规标签,以免修改失败,导致ID还原。
  11.修改版本号
Windows里面有一个内部版本号(正式版的是:2600.xpclient.010817-1148),这个版本号也是存放在注册表中的,具体位置是HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion,它用一个字符串来记录,修改这个名字叫做BUILDLAB的字符串就可以修改你的XP的版本号。
  12.清除共享文件夹
WINDOWS XP操作系统一个比较不友好的用户界面是在"我的电脑"窗口上半部分显示所有共享的文件夹,如果用户设置的共享文件夹较多,每当打开"我的电脑"窗口时,就会列有很多共享文件夹信息。如何删除这些信息显示呢?使用注册表编辑器,并寻找这个主键/"HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/CURRENTVERSION/EXPLORER/MyComputer/NameSpace/DelegateFolders/",在该主键下有一个名为{59031A47-3F72-44A7-89C5-5595FE6B30EE}的副键,删除该副键便可清除那些共享文件夹信息。上述修改无需重新启动便可生效。
  13. 加快开始菜单的显示速度
WINDOWS XP系统默认的开始菜单显示较慢,但用户可以通过编辑注册键值来加快显示,具体方法是:打开注册表编辑器,寻找/"HKEY_CURRENT_USER/CONTROL PANEL/DESKTOP/MENUSHOWDELAY/"主键,系统默认值为400,用户可以根据自己的喜好适当调小该键值,如200,最低可设为"0"。
  14.启动时禁止自动调用"WINDOWS MESSENGER"
为了推广微软公司推出的即时聊天程序/"WINDOWS MESSENGER/",WINDOWS XP操作系统的默认设置是在系统启动时便调用该程序。但如果你并不习惯使用该程序,可以通过删除/"HKEY_CURRENT_USER/SOFTWARE/MICROSOFT/WINDOWS/CURRENTVERSION/RUN/MSMSGS/"此键来实现。
  也可在MESSENGER里设置,打开MESSENGER,工具--选项--首选项--把"在windows启动时运行windows messenger"前的钩去掉就OK了.
  15.禁用页面文件
HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/SESSION MANAGER/MEMORY MANAGEMENT禁用内存页面文件"PAGING EXECUTIVE",在正常情况下,XP会把内存中的片断写入硬盘,我们可以阻止它这样做,让数据保留在内存中,从而提升系统性能。要注意的是,拥有很多内存的用户(256M以上)才好使用这个设置。这个设置的名字正如它的功能一样,叫"DISABLEPAGINGEXECUTIVE"。把它的值从0改为1就可以禁止内存页面文件调度了。
  也可在性能选项--高级--虚拟内存那里点更改--无分页文件
  16.提升系统缓存
HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/SESSION MANAGER/MEMORY MANAGEMENT把LARGESYSTEMCACHE键值从0改为1,WINDOWS XP就会把除了4M之外的系统内存全部分配到文件系统缓存中,这意味着XP的内核能够在内存中运行,大大提高系统速度。剩下的4M内存是用来做磁盘缓存的,在一定条件下需要的时候,XP还会分配更多一些。一般来说,这项优化会使系统性能得到相当的提升,但也有可能会使某些应用程序性能降低。正如前面所说的,必须有256M以上的内存,才好激活LARGESYSTEMCACHE,否则不要动它。
  17.输入/输出性能
这个优化只对SERVER用户才有实在意义--它能够提升系统进行大容量文件传输时的性能。在默认情况下,这个键值在注册表中是不存在的,必须自己建一个,在HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/SESSION MANAGER/MEMORY MANAGEMENT下建一个DWORD(双字节值)键值,命名为IOPAGELOCKLIMIT。多数人在使用这项优化时都发现8到16M字节之间性能最好,具体设什么值,可以设进去试试看哪个值可以获得最佳性能。记住这个值是用字节来计算的,因此,譬如你要分配12M的话,就是12 * 1024 * 1024,也就是12582912。跟前面的内存优化一样,只有当你的内存大于256M的时候才好更改这里的值。
  18.设置CPU二级缓存容量
WINDOWS XP无法自动检测处理器的二级缓存容量,需要我们自己在注册表中手动设置,首先打开:HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/SESSION MANAGER/MEMORY MANAGEMENT/,选择"SECONDLEVELDATACACHE",根据自己所用的处理器设置即可,例如PIII COPPERMINE/P4 WILLAMETTE是"256",ATHLON XP是"384",P4 NORTHWOOD是"512"
    说明一下,但是该项还是保留给大家参考.
    在众多的XP优化技巧中,较为流行的一种说法是Windows XP系统需要用户手工打开CPU的二级缓存,这样才能使CPU发挥出最大效率。这种说法流传相当广泛,现在使用率最高的Windows系统优化软件之一的"Windows 优化大师"也是持这种观点,在它的优化设置栏中就有优化CPU二级缓存的选项。
  我们先看看这个所谓的优化技巧是怎样告诉我们的。
  【Windows XP系统中,默认状态下CPU二级缓存并未打开。为了提高系统性能,我们可以通过修改注册表,或使用"Windows优化大师"等软件来开启它。
  运行注册表编辑器,展开HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/Session Manager/Memory Management分支,双击右侧窗口中的"SecondLevelDataCace",然后在弹出的窗口中直接填入当前计算机所使用的CPU的二级缓存容量即可。
  赛扬处理器的二级缓存为128KB,应将其值设置为80(16进制,下同)。PⅡ、PⅢ、P4均为512KB二级缓存,应设置为200;PⅢE(EB)、P4 Willamette只有256KB二级缓存,应设置为100;AMD Duron只有64KB二级缓存,应设置为40;K6-3拥有256KB二级缓存;Athlon拥有512KB二级缓存;Athlon XP拥有256KB二级缓存;Athlon XP(Barton核心)拥有512KB二级缓存。
  使用Windows优化大师也可以正确设置CPU的二级缓存:启动Windows优化大师,选择"系统性能优化",在"文件系统优化"中,最上面就是关于CPU二级缓存的设置项。拖动滑块到相应的位置后,保存设置并重新启动计算机即可。】
  事实真的是这样吗?
  我们在微软的知识库中找到了如下的内容:"HKLM/SYSTEM/CurrentControlSet/Control/Session Manager/Memory Management"中的SecondLevelDataCache键的值只有在Windows XP系统从硬件抽象层(Hardware Abstraction Layer )读取CPU二级缓存(L2)失败时才会读取SecondLevelDataCache键的数据。而且SecondLevelDataCache键值=0的意义是二级缓存为256KB。
  在一篇知识库文章中我们还找到了"Do not change the SecondLevelDataCache entry "这样的话,在文章中指出一些第三方资料宣称修改SecondLevelDataCache键的值可以提高系统性能是不正确的。二级缓存的数值是由操作系统检测并且完全不受SecondLevelDataCache值的影响。
  从微软知识库的文章中我们可以看到,所谓的Windows XP系统需要用户手动打开二级缓存这种说法是错误的。Windows XP系统是根据硬件抽象层读取CPU的二级缓存数值。只有在读取失败时才会读取SecondLevelDataCache的值,而且SecondLevelDataCache的默认数值0所代表的意义就是二级缓存为256KB,而不是表示关闭。所以CPU的二级缓存在任何时候都是开启的,用户没有必要再自行修改。
  『转自PCONLINE』

  19.加速共享文件夹查看速度
这是一项很棒的优化,在找到这项优化之前,我经常在漫长地等待窗口显示其它机子上的共享目录中敲破头皮。通常情况下,当WINDOWS XP连接到其它计算机时,会检查对方机子上所有预定的任务--这真是多余,而且还会让你等上30秒钟,实在太糟糕了。所幸的是,很容易就可以把这个过程给禁掉。首先,在注册表中找到HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/CURRENT VERSION/EXPLORER/REMOTECOMPUTER/NAMESPACE。在这里面,应该有个{D6277990-4C6A-11CF-8D87-00AA0060F5BF键。只需把它删掉,重新启动计算机后,WINDOWS就不再检查预定任务了,速度明显提高!
  20.优化NTFS文件系统
NTFS的好处不用说了吧,但也有不足。取消更新最后一次磁盘访问,这样对于容量大的分区,会减慢速度。运行"REGEDIT",在HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTOLSET/CONTROL/FILESYSTEM)中,加DWORD,数值为1。
  21.卸载无用的动态链接
资源管理器经常在内存中留下无用的动态链接,为了消除这种现象,你可以打开注册表编辑器,设置键值:HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/CURRENTVERSION/EXPLORER
ALWAYSUNLOADDLL=DWORD: 1将其设为0,这一功能就会被关闭。注意:为了让设置生效,需要重新启动计算机。六、系统启动设置中的项目∶
点击开始菜单,选择"运行",然后输入"MSCONFIG"回车。
  这是一个系统内置的WINDOWS设置工具。我们要动手脚的是(启动)选项卡,点击"启动"选项卡,这个选项卡中显示了WINDOWS启动时运行的所有程序。这里没有一个程序对WINDOWS来说是生死悠关的,所以放心大胆地把不要的去掉。把你不想要随系统启动而启动的程序前的勾勾去掉之后,WINDOWS启动会快些,同时空闲的系统资源也会多出一些。

七、系统清理∶
  1. 删除WINDOWS强加的附件∶
用记事本打开/WINDOWS/INF/SYSOC.INF(先将文件复制一个作为备用),用查找/替换功能,在查找框中输入",HIDE"(一个英文逗号紧跟HIDE),将"替换为"框设为空。并选全部替换,这样,就把所有的,HIDE都去掉了,保存并退出,再运行"添加-删除程序",就会看见"添加/删除 WINDOWS 组件"中多出了好几个选项;这样你可以删除那些对于你来说,没有用的附件。
  2. 删除系统文件备份
开始--运行SFC.EXE /PURGECACHE (一般用户是不怎么用的)
  3. 删除WINDOWS驱动备份文件
WINDOWS/DRIVER CACHE/I386目录下的DRIVER.CAB文件 (73M)
  4.删除帮助文件
删除WINDOWS/下的HELP文件夹帮助文件(减掉40多M) (使用中文汉化包的文件大小为92兆,刚开始使用XP的最好别删)
  5.删除备用的DLL文件
删掉/WINDOWS/SYSTEM32/DLLCACHE下文件(减去200--300MB)。(这是备用的DLL文件,只要你拷贝了安装文件,完全可以这样做。) 
  6.把我的文档、IE的临时文件夹、用户变量临时文件和系统临时文件夹都转到其他分区,如D:/TEMP。
(同时对系统的速度,和硬盘都有好处,如果使用的是双系统,最好把两个系统的IE临时文件都放在同一个文件夹,这样既加快速度有节省空间)。1)右键点击"我的文档"--属性--移动--移动到∶D:/TEMP。 2)右键点击桌面上的"INTERNET EXPLORER"--"属性"--在"常规"选项卡中的"INTERNET临时文件"栏目中点击"设置"按钮,在弹出的"设置对话框"中,点击"移动文件夹",选择路径为E:/TEMP,然后点"确定"再"确定"。 3)在系统属性中点"高级"选项卡,点"环境变量"接钮,分别选择用户变量下的TEMP、TEM和系统变量下的TEMP、TEM,点编辑,然后将变量值改为E:/TEMP,点击确定。
  7. 删除/WINDOWS/IME下不用的输入法
删除/WINDOWS/IME下不用的输入法! (日文,韩文,繁体中文输入法,84.5MB) (到底哪个是哪个自己研究一下吧!有时候也要自己动动脑子的,锻炼一下吧!)
  8.清除预读文件
当XP使用一段时间后,预读文件夹里的文件会变的很大,里面会有死链文件,这会减慢系统时间。建议,定期删除这些文件。(C:/WINDOWS/PREFETCH)
  9.请查找USER.DMP文件并删掉
有程序出错,硬盘会响很久,而且会占用很多空间。如果你以前遇到过这种情况,请查找USER.DMP文件并删掉,可能会省掉几十M的空间。这是出错程序的现场,对我们没用。

 

posted @ 2006-04-21 15:39 Q系列类、方法、变量…… 阅读(856) | 评论 (0)编辑 收藏

格式为:

gcc -fPIC -W -Wformat -Wimplicit -Wmissing-prototypes -Wparentheses -Wstrict-prototypes -Wswitch -Wunused -c qcdefine.cpp qcobject.cpp qcwindow.cpp

gcc -G -o libqcurses.so qcdefine.o qcobject.o qcwindow.o

以前在第二步的时候,一直用 -shared 进行动态链接库的编译,但是编译器一直报错,今天在网络上终于找到了解决办法!原来sco unix下面编译共享库居然是使用 -G 而不是 -shared,这个-shared选项在Linux下面我一直用着很不错,但是在sco unix下面就从来没有成功过,终于在网上找到了一个强人的答题:

http://lists.trolltech.com/qt-interest/2000-09/thread00470-0.html

里面的强人说:On SCO you need -G not -shared.

真是厉害!!!

posted @ 2006-04-21 15:38 Q系列类、方法、变量…… 阅读(308) | 评论 (0)编辑 收藏
今天无聊闲逛EZ的时候,发现有一个人发表了“寂静岭”的FLASH版本,抱着新奇的想法去看了一下,是用flash做的,还不错,但是无聊之际用右键点击了这个flash动画,选中了里面的“高级”按钮,自然的就在新窗口中打开了FLASH的老家主页http://www.macromedia.com/cn/,但是随之而来的是莫名的疑问,怎么在FLASH主页中的LOGO位置出现来ADOBE???第一个反应是被黑了,但是后来一看,几乎每一页都是这样,“难道曾经的网页三剑客,曾经与photoshop对着干的firework轰然倒塌了?以前那些网上人们做的评论还历历在目,所为:‘firework比photoshop更加适合网站图片的处理等等’,而现在唯一能在网页图像处理方面能够与photoshop抗衡的软件的所属公司竟然被photoshop的所属公司收购,那么就意味着以后adobe将一支毒大?下一个版本的photoshop将命名为什么?HomePageImageWorkstation吗?”,再去网上GOOGLE查询一下才发现,原来真的证实了我的想法是正确的。

相关新闻概述:

Adobe系统公司今日正式宣布收购Macromedia[2006年4月18日],收购方式是通过股票来进行置换,价值为34亿美元。

posted @ 2006-04-18 00:57 Q系列类、方法、变量…… 阅读(983) | 评论 (3)编辑 收藏

 1. 你们的项目组使用源代码管理工具了么?
    应该用。VSS、CVS、PVCS、ClearCase、CCC/Harvest、FireFly都可以。我的选择是VSS。

 2. 你们的项目组使用缺陷管理系统了么?
    应该用。ClearQuest太复杂,我的推荐是BugZilla。

 3. 你们的测试组还在用Word写测试用例么?
   不要用Word写测试用例(Test Case)。应该用一个专门的系统,可以是Test Manager,也可以是自己开发一个ASP.NET的小网站。主要目的是Track和Browse。

 4. 你们的项目组有没有建立一个门户网站?
  要有一个门户网站,用来放Contact Info、Baselined Schedule、News等等。推荐Sharepoint Portal Server 2003来实现,15分钟就搞定。买不起SPS 2003可以用WSS (Windows Sharepoint Service)。

 5. 你们的项目组用了你能买到最好的工具么?
  应该用尽量好的工具来工作。比如,应该用VS.NET而不是Notepad来写C#。用Notepad写程序多半只是一种炫耀。但也要考虑到经费,所以说是"你能买到最好的"。
 
 6. 你们的程序员工作在安静的环境里么?
  需要安静环境。这点极端重要,而且要保证每个人的空间大于一定面积。

 7. 你们的员工每个人都有一部电话么?需要每人一部电话。而且电话最好是带留言功能的。当然,上这么一套带留言电话系统开销不小。不过至少每人一部电话要有,千万别搞得经常有人站起来喊:"某某某电话"。《人件》里面就强烈谴责这种做法。

 8. 你们每个人都知道出了问题应该找谁么?
  应该知道。任何一个Feature至少都应该有一个Owner,当然,Owner可以继续Dispatch给其他人。

 9. 你遇到过有人说"我以为…"么?
  要消灭"我以为"。Never assume anything。

10. 你们的项目组中所有的人都坐在一起么?
  需要。我反对Virtual Team,也反对Dev在美国、Test在中国这种开发方式。能坐在一起就最好坐在一起,好处多得不得了。

11. 你们的进度表是否反映最新开发进展情况?
  应该反映。但是,应该用Baseline的方法来管理进度表:维护一份稳定的Schedule,再维护一份最新更改。Baseline的方法也应该用于其它的Spec。Baseline是变更管理里面的一个重要手段。

12. 你们的工作量是先由每个人自己估算的么?
  应该让每个人自己估算。要从下而上估算工作量,而不是从上往下分派。除非有其他原因,比如政治任务工期固定等。

13. 你们的开发人员从项目一开始就加班么?
  不要这样。不要一开始就搞疲劳战。从项目一开始就加班,只能说明项目进度不合理。当然,一些对日软件外包必须天天加班,那属于剥削的范畴。

14. 你们的项目计划中Buffer Time是加在每个小任务后面的么?
  不要。Buffer Time加在每个小任务后面,很容易轻易的就被消耗掉。Buffer Time要整段的加在一个Milestone或者checkpoint前面。

15. 值得再多花一些时间,从95%做到100%好值得,非常值得。
  尤其当项目后期人困马乏的时候,要坚持。这会给产品带来质的区别。

16. 登记新缺陷时,是否写清了重现步骤?
  要。这属于Dev和Test之间的沟通手段。面对面沟通需要,详细填写Repro Steps也需要。

17. 写新代码前会把已知缺陷解决么?
    要。每个人的缺陷不能超过10个或15个,否则必须先解决老的bug才能继续写新代码。

18. 你们对缺陷的轻重缓急有事先的约定么?
  必须有定义。Severity要分1、2、3,约定好:蓝屏和Data Lost算Sev 1,Function Error算Sev 2,界面上的算Sev 3。但这种约定可以根据产品质量现状适当进行调整。

19. 你们对意见不一的缺陷有三国会议么?
    必须要有。要有一个明确的决策过程。这类似于CCB (Change Control Board)的概念。

20. 所有的缺陷都是由登记的人最后关闭的么?
  Bug应该由Opener关闭。Dev不能私自关闭Bug。

21. 你们的程序员厌恶修改老的代码么?
  厌恶是正常的。解决方法是组织Code Review,单独留出时间来。XP也是一个方法。

22. 你们项目组有Team Morale Activity么?
  每个月都要搞一次,吃饭、唱歌、Outing、打球、开卡丁车等等,一定要有。不要剩这些钱。

23. 你们项目组有自己的Logo么?
  要有自己的Logo。至少应该有自己的Codename。

24. 你们的员工有印有公司Logo的T-Shirt么?
  要有。能增强归属感。当然,T-Shirt要做的好看一些,最好用80支的棉来做。别没穿几次就破破烂烂的。

25. 总经理至少每月参加次项目组会议要的。
  要让team member觉得高层关注这个项目。

26. 你们是给每个Dev开一个分支么?
  反对。Branch的管理以及Merge的工作量太大,而且容易出错。

27. 有人长期不Check-In代码么?
  不可以。对大部分项目来说,最多两三天就应该Check-In。

28. 在Check-In代码时都填写注释了么?
  要写的,至少一两句话,比如"解决了Bug No.225(给bug编号)"。如果往高处拔,这也算做"配置审计"的一部分。

29. 有没有设定每天Check-In的最后期限?
  要的,要明确Check-In Deadline。否则会Build Break。

30. 你们能把所有源码一下子编译成安装文件吗?
  要的。这是每日编译(Daily Build)的基础。而且必须要能够做成自动的。

31. 你们的项目组做每日编译么?
  当然要做。有三样东西是软件项目/产品开发必备的:1. bug management; 2. source control; 3. daily build。

32. 你们公司有没有积累一个项目风险列表?
  要。Risk Inventory。否则,下个项目开始的时候,又只能拍脑袋分析Risk了。

33. 设计越简单越好越简单越好。
  设计时候多一句话,将来可能就带来无穷无尽的烦恼。应该从一开始就勇敢的砍。这叫scope management。

34. 尽量利用现有的产品、技术、代码千万别什么东西都自己Coding。BizTalk和Sharepoint就是最好的例子,有这两个作为基础,可以把起点提高很多。或者可以尽量多用现成的Control之类的。或者尽量用XML,而不是自己去Parse一个文本文件;尽量用RegExp,而不是自己从头操作字符串,等等等等。这就是"软件复用"的体现。

35. 你们会隔一段时间就停下来夯实代码么?
  要。最好一个月左右一次。传言去年年初Windows组在Stevb的命令下停过一个月增强安全。Btw,"夯"这个字念"hang",第一声。

36. 你们的项目组每个人都写Daily Report么?
  要写。五分钟就够了,写10句话左右,告诉自己小组的人今天我干了什么。一则为了沟通,二则鞭策自己(要是游手好闲一天,自己都会不好意思写的)。

37. 你们的项目经理会发出Weekly Report么?
  要。也是为了沟通。内容包括目前进度,可能的风险,质量状况,各种工作的进展等。

38. 你们项目组是否至少每周全体开会一次?
  要。一定要开会。程序员讨厌开会,但每个礼拜开会时间加起来至少应该有4小时。包括team meeting, spec review meeting, bug triage meeting。千万别大家闷头写code。

39. 你们项目组的会议、讨论都有记录么?
  会前发meeting request和agenda,会中有人负责主持和记录,会后有人负责发meeting minutes,这都是effective meeting的要点。而且,每个会议都要形成agreements和action items。

40. 其他部门知道你们项目组在干什么么?
  要发一些Newsflash给整个大组织。Show your team's value。否则,当你坐在电梯里面,其他部门的人问:"你们在干嘛",你回答"ABC项目"的时候,别人全然不知,那种感觉不太好。

41. 通过Email进行所有正式沟通
  Email的好处是免得抵赖。但也要避免矫枉过正,最好的方法是先用电话和当面说,然后Email来确认。

42. 为项目组建立多个Mailing Group
  如果在AD+Exchange里面,就建Distribution List。比如,我会建ABC Project Core Team,ABC Project Dev Team,ABC Project All Testers,ABC Project Extended Team等等。这样发起Email来方便,而且能让该收到email的人都收到、不该收到不被骚扰。

43. 每个人都知道哪里可以找到全部的文档么?
  应该每个人都知道。这叫做知识管理(Knowledge Management)。最方便的就是把文档放在一个集中的File Share,更好的方法是用Sharepoint。

44. 你做决定、做变化时,告诉大家原因了么?
  要告诉大家原因。Empower team member的手段之一是提供足够的information,这是MSF一开篇的几个原则之一。的确如此,tell me why是人之常情,tell me why了才能有understanding。中国人做事喜欢搞限制,限制信息,似乎能够看到某一份文件的人就是有身份的人。大错特错。权威、权力,不在于是不是能access information/data,而在于是不是掌握资源。

45. Stay agile and expect change 要这样。
  需求一定会变的,已经写好的代码一定会被要求修改的。做好心理准备,对change不要抗拒,而是expect change。

46. 你们有没有专职的软件测试人员?
  要有专职测试。如果人手不够,可以peer test,交换了测试。千万别自己测试自己的。

47. 你们的测试有一份总的计划来规定做什么和怎么做么?
    这就是Test Plan。要不要做性能测试?要不要做Usability测试?什么时候开始测试性能?测试通过的标准是什么?用什么手段,自动的还是手动的?这些问题需要用Test Plan来回答。

48. 你是先写Test Case然后再测试的么?
  应该如此。应该先设计再编程、先test case再测试。当然,事情是灵活的。我有时候在做第一遍测试的同时补上test case。至于先test case再开发,我不喜欢,因为不习惯,太麻烦,至于别人推荐,那试试看也无妨。

49. 你是否会为各种输入组合创建测试用例?
  不要,不要搞边界条件组合。当心组合爆炸。有很多test case工具能够自动生成各种边界条件的组合--但要想清楚,你是否有时间去运行那么多test case。

50. 你们的程序员能看到测试用例么?
  要。让Dev看到Test Case吧。我们都是为了同一个目的走到一起来的:提高质量。

51. 你们是否随便抓一些人来做易用性测试?
  要这么做。自己看自己写的程序界面,怎么看都是顺眼的。这叫做审美疲劳--臭的看久了也就不臭了,不方便的永久了也就习惯了。

52. 你对自动测试的期望正确么?
  别期望太高。依我看,除了性能测试以外,还是暂时先忘掉"自动测试"吧,忘掉WinRunner和LoadRunner吧。对于国内的软件测试的现状来说,只能"矫枉必须过正"了。

53. 你们的性能测试是等所有功能都开发完才做的么?
  不能这样。性能测试不能被归到所谓的"系统测试"阶段。早测早改正,早死早升天。

54. 你注意到测试中的杀虫剂效应了么?
  虫子有抗药性,Bug也有。发现的新Bug越来越少是正常的。这时候,最好大家交换一下测试的area,或者用用看其他工具和手法,就又会发现一些新bug了。

55. 你们项目组中有人能说出产品的当前整体质量情况么?
  要有。当老板问起这个产品目前质量如何,Test Lead/Manager应该负责回答。

56. 你们有单元测试么?
  单元测试要有的。不过没有单元测试也不是不可以,我做过没有单元测试的项目,也做成功了--可能是侥幸,可能是大家都是熟手的关系。还是那句话,软件工程是非常实践、非常工程、非常灵活的一套方法,某些方法在某些情况下会比另一些方法好,反之亦然。

57. 你们的程序员是写完代码就扔过墙的么?
  大忌。写好一块程序以后,即便不做单元测试,也应该自己先跑一跑。虽然有了专门的测试人员,做开发的人也不可以一点测试都不做。微软还有Test Release Document的说法,程序太烂的话,测试有权踢回去。

58. 你们的程序中所有的函数都有输入检查么?
  不要。虽然说做输入检查是write secure code的要点,但不要做太多的输入检查,有些内部函数之间的参数传递就不必检查输入了,省点功夫。同样的道理,未必要给所有的函数都写注释。写一部分主要的就够了。

59. 产品有统一的错误处理机制和报错界面么?
  要有。最好能有统一的error message,然后每个error message都带一个error number。这样,用户可以自己根据error number到user manual里面去看看错误的具体描述和可能原因,就像SQL Server的错误那样。同样,ASP.NET也要有统一的Exception处理。可以参考有关的Application Block。

60. 你们有统一的代码书写规范么?
  要有。Code Convention很多,搞一份来发给大家就可以了。当然,要是有FxCop这种工具来检查代码就更好了。

61. 你们的每个人都了解项目的商业意义么?
  要。这是Vision的意思。别把项目只当成工作。有时候要想着自己是在为中国某某行业的信息化作先驱者,或者时不时的告诉team member,这个项目能够为某某某国家部门每年节省多少多少百万的纳税人的钱,这样就有动力了。平凡的事情也是可以有个崇高的目标的。

62. 产品各部分的界面和操作习惯一致么?
  要这样。要让用户觉得整个程序好像是一个人写出来的那样。

63. 有可以作为宣传亮点的Cool Feature么?
  要。这是增强团队凝聚力、信心的。而且,"一俊遮百丑",有亮点就可以掩盖一些问题。这样,对于客户来说,会感觉产品从质量角度来说还是acceptable的。或者说,cool feature或者说亮点可以作为质量问题的一个事后弥补措施。

64. 尽可能缩短产品的启动时间要这样。
  软件启动时间(Start-Up time)是客户对性能好坏的第一印象。

65. 不要过于注重内在品质而忽视了第一眼的外在印象程序员容易犯这个错误:太看重性能、稳定性、存储效率,但忽视了外在感受。而高层经理、客户正相反。这两方面要兼顾,协调这些是PM的工作。

66. 你们根据详细产品功能说明书做开发么?
  要这样。要有设计才能开发,这是必须的。设计文档,应该说清楚这个产品会怎么运行,应该采取一些讲故事的方法。设计的时候千万别钻细节,别钻到数据库、代码等具体实现里面去,那些是后面的事情,一步步来不能着急。

67. 开始开发和测试之前每个人都仔细审阅功能设计么?
  要做。Function Spec review是用来统一思想的。而且,review过以后形成了一致意见,将来再也没有人可以说"你看,当初我就是反对这么设计的,现在吃苦头了吧"

68. 所有人都始终想着The Whole Image么?要这样。项目里面每个人虽然都只是在制造一片叶子,但每个人都应该知道自己在制造的那片叶子所在的树是怎么样子的。我反对软件蓝领,反对过分的把软件制造看成流水线、车间。参见第61条。

69. Dev工作的划分是单纯纵向或横向的么?
  不能单纯的根据功能模块分,或者单纯根据表现层、中间层、数据库层分。我推荐这么做:首先根据功能模块分,然后每个"层"都有一个Owner来Review所有人的设计和代码,保证consistency。

70. 你们的程序员写程序设计说明文档么?
  要。不过我听说微软的程序员1999年以前也不写。所以说,写不写也不是绝对的,偷懒有时候也是可以的。参见第56条。

71. 你在招人面试时让他写一段程序么?
  要的。我最喜欢让人做字符串和链表一类的题目。这种题目有很多循环、判断、指针、递归等,既不偏向过于考算法,也不偏向过于考特定的API。

72. 你们有没有技术交流讲座?
  要的。每一两个礼拜搞一次内部的Tech Talk或者Chalk Talk吧。让组员之间分享技术心得,这笔花钱送到外面去培训划算。

73. 你们的程序员都能专注于一件事情么?
  要让程序员专注一件事。例如说,一个部门有两个项目和10个人,一种方法是让10个人同时参加两个项目,每个项目上每个人都花50%时间;另一种方法是5个人去项目A,5个人去项目B,每个人都100%在某一个项目上。我一定选后面一种。这个道理很多人都懂,但很多领导实践起来就把属下当成可以任意拆分的资源了。

74. 你们的程序员会夸大完成某项工作所需要的时间么?
  会的,这是常见的,尤其会在项目后期夸大做某个change所需要的时间,以次来抵制change。解决的方法是坐下来慢慢磨,磨掉程序员的逆反心理,一起分析,并把估算时间的颗粒度变小。

75. 尽量不要用Virtual Heads 最好不要用Virtual Heads。
  Virtual heads意味着resource is not secure,shared resource会降低resource的工作效率,容易增加出错的机会,会让一心二用的人没有太多时间去review spec、review design。一个dedicated的人,要强过两个只能投入50%时间和精力的人。我是吃过亏的:7个part time的tester,发现的Bug和干的活,加起来还不如两个full-time的。参见第73条。73条是针对程序员的,75条是针对Resource Manager的。

 

posted @ 2006-04-15 12:57 Q系列类、方法、变量…… 阅读(1852) | 评论 (3)编辑 收藏
完全开源,里面有完整的.cpp文件,同时免费提供咨询,这个是for sco unix5.x的,如果有需要可以来下载

地址:
http://www.blogjava.net/Files/qclass/qcurses-scounix.zip
posted @ 2006-04-04 16:58 Q系列类、方法、变量…… 阅读(689) | 评论 (0)编辑 收藏

---- 建立消息驱动Bean ----
* 菜单→File→New→Project,从树形菜单中选择EJB→EJB Project点击[Next]按钮
* Project Name填入"MsgTest",点击[Next]→按钮后勾选所有选项,点击[Next]→将Create an EJB Client ...前面的√去掉,点击[Finish]按钮。
* 右键点击工程名→New→Other,从树形菜单中选择EJB→XDoclet Enterprise JavaBean,点击[Next]按钮
* 选择MessageDrivenBean,点击[Next]按钮
* ClassName填入"TestMsgBean",Java package填入"com.msgtest.ejb",点击[Next]按钮
* Destination JNDI Name填入"TestMessage",其余不修改,点击[Finish]按钮

---- 建立测试 -----
* 菜单→File→New→Other,从树形菜单中选择Java→JUtil Test Case→点击[Next]按钮,如果出现对话框选择"YES"
* Package 填入"com.msgtest.test",Name填入"Msgtest",点击[Finish]按钮
* 将%JBOSS_HOME%/client下面的所有jar文件都加入到工程路径中来,因为要连接JBOSS需要这些JAR,下面的加入的步骤
  1. 菜单→Project→Properties,从树形菜单中选择Java Build Path,点击Libraries选项卡,选择Add Library
  2. 选择User Library,点击[Next]
  3. 点击User Libraries按钮
  4. 点击New按钮,输入JBoss1.4RC1Client,点击[OK]按钮
  5. 点击Add Jars按钮,选择%JBOSS_HOME%/client目录下面的所有jar文件,除了jboss-j2ee.jar
  6. 点击[ok]按钮,点击[Finish]按钮,点击[ok]按钮

* 将 Msgtest.java 文件编辑成下列代码:
里面值得注意的是 Factory 对应的是 jms/QueueConnectionFactory,Queue对应的是 queue/TestMsg

如果以上两条忘记了,第一条可以参看http://localhost:8080/jmx-console/中关于jboss.jms的部分,里面应该有一行alias=QueueConnectionFactory,而这个"QueueConnectionFactory",就是我们需要的JNDI
至于第二条,可以参看在部署完毕工程的时候JBoss的操作屏幕会出现对应的queue/xxx就是对应的部分

package  com.msgtest.test;

import  java.util.Hashtable;

import  javax.jms.ConnectionFactory;
import  javax.jms.JMSException;
import  javax.jms.Queue;
import  javax.jms.QueueConnection;
import  javax.jms.QueueConnectionFactory;
import  javax.jms.QueueSender;
import  javax.jms.QueueSession;
import  javax.jms.Session;
import  javax.jms.TextMessage;
import  javax.naming.Context;
import  javax.naming.NamingException;

import  junit.framework.TestCase;

public   class  Msgtest  extends  TestCase  {
    
public   void  test()
    
{
        javax.naming.InitialContext initialContext
= null ;
        
try   {
            Hashtable props 
=   new  Hashtable();
            props.put(
                Context.INITIAL_CONTEXT_FACTORY,
                
" org.jnp.interfaces.NamingContextFactory " );
            props.put(
                Context.URL_PKG_PREFIXES,
                
" org.jboss.naming:org.jnp.interfaces " );
            props.put(Context.PROVIDER_URL, 
" jnp://localhost:1099 " );            
            initialContext 
=   new  javax.naming.InitialContext(props);
            QueueConnectionFactory queueConnectionFactory;
            queueConnectionFactory 
=  (QueueConnectionFactory)initialContext.lookup( " QueueConnectionFactory " );
            Queue queue 
=  (Queue)initialContext.lookup( " queue/TestMsg " );
            
            QueueConnection queueConnection 
=  queueConnectionFactory.createQueueConnection();
            QueueSession queueSession 
=  queueConnection.createQueueSession( false ,Session.AUTO_ACKNOWLEDGE);
            QueueSender queueSender 
=  queueSession.createSender(queue);    
            TextMessage message 
=  queueSession.createTextMessage();
            
for  ( int  i  =   0 ; i  <   5 ; i ++ {
                message.setText(
" This is message  "   +  (i  +   1 ));
                System.out.println(
" Sending message:  "   + message.getText());
                queueSender.send(message);
            }
            
        }
  catch  (NamingException e)  {
            
//  TODO Auto-generated catch block
            e.printStackTrace();
        }
  catch  (JMSException e)  {
            
//  TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}

* 将工程目录下面的 build/classes 目录下面的所有文件打包成一个 MsgTest.jar 文件
  jar cvf MsgTest.jar *
* 将生成的 MsgTest.jar 拷贝到 %JBOSS_HOME%/server/default/deploy/目录下,启动JBoss

运行这个例子
posted @ 2006-04-03 18:46 Q系列类、方法、变量…… 阅读(1584) | 评论 (1)编辑 收藏
     摘要: 完全调配Eclipse+JBOSS4.0进行J2EE开发 编写人:Q龙(邱洋)联系QQ:1964477电子邮件:qxk2005@gmail.com   一、安装所需软件   ● 下载并且安装eclipse3.1.2,推荐使用lomboz-wtp-emf-gef-je...  阅读全文
posted @ 2006-04-03 12:17 Q系列类、方法、变量…… 阅读(3603) | 评论 (6)编辑 收藏
充分利用最近充电的结果:
EJB:会话Bean、消息驱动Bean、定时器
感觉J2EE的这写元素和其使用的机制真的能很好的完成现有企业系统的快速开发,同时由于提供EJB的服务器,比如JBOSS自己都带有天然的集群功能,因此可以很好的满足那些可以通过跟客户解释说:“增加服务器”来增加系统性能的开发公司有很大的好处。

缺点吗?呵呵,我认为最大的缺点就是地层代码不是我们完全掌握,对于数据传输过程中遇到的比如黑客攻击等事情,无能为力(软件层)
posted @ 2006-04-03 12:12 Q系列类、方法、变量…… 阅读(432) | 评论 (2)编辑 收藏
唉,看来这年头还是多支持支持国货,看看blogger.com的速度再看看blogjava.net就知道什么是差距,以前认为google的就是好,现在才知道在某些方面原来国内的才是真正适合你的。
posted @ 2006-03-31 20:12 Q系列类、方法、变量…… 阅读(152) | 评论 (0)编辑 收藏
仅列出标题
共6页: 上一页 1 2 3 4 5 6