想问一个关于全屏幕动画效率的问题

现在还是人类 2013-05-23 09:18:05
这段时间我在写一个图形动画引擎,是基于GDI来写的,但是感觉效果不是很好。我的这个引擎实现的方式大致是这样的。我创建了一个GDI设备(包括位图、刷子、字体什么的都设置好了),然后自己加载了几个位图数据到内存(这里的内存是指一个结构体数组,结构体包含图形资源的宽度、高度、具体符合GDI数据规范的数据指针等)。然后再添加图层(也是一个结构体数组),结构体包含图层的坐标、宽度、资源指针等。因为想引擎支持透明和半透明的资源,所以位图资源都采用32位的位图作为基础,分别是R、G、B、透明度这样的结构。因为涉及到运算,所以我就创建了一块与GDI设备数据大小相符的内存区域来实现这种图形运算,然后再用 SetBitmapBits 把处理好的内存数据设置到位图,然后再用Bitblt刷到窗口中。
我用了一个线程来专门轮询内存像素的每一个点,合并识别底图、以及每一个图层的数据,然后还用了一个线程来刷图。虽然最终效果是可以实现了,但是感觉速度上不能满足我的需求。在800*600的分辨率下,效果勉强可以接受,但在1366*768的情况下,动画效果就会很差,会卡。后来我就改了一下,采用了30个线程分块区运算,6*5个块区,虽然速度有所提升,但动画效果会根据块区线程的速度而脱节。之后我又改成了隔行扫描的方式,用了两个线程,一个处理单行数据,一个处理双行数据,效果还可以,速度上来一点,不过当动起来的时候,会有一条一条的扫描线影子。还有,我的程序是用VC写的,理论上循环运算效率应该是很快了的呀。
我想问一下,在这种全屏图形,有多个支持透明度调整的图层环境,用GDI作为基础,怎样才能更好的处理效果和效率方面呢?
...全文
416 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2013-05-27
  • 打赏
  • 举报
回复
应该说GPU尚未在驱动级得到统一,只能在引擎级降低硬件差异性。 GPU高性能计算的前世今生
赵4老师 2013-05-27
  • 打赏
  • 举报
回复
提醒:动画效率再高,全屏白和全屏黑交替显示也会闪!
赵4老师 2013-05-27
  • 打赏
  • 举报
回复
处理图象有GPU不用非要用CPU?!
东方之珠 2013-05-27
  • 打赏
  • 举报
回复
VC++采用OpenGL编程比较合适。
PctGL 2013-05-26
  • 打赏
  • 举报
回复
多页缓存,画第一页的时候至少缓存2页以上 另加隔行贴图,只要帧速上来效果应该问题不大
嗷嗷叫的老马 2013-05-26
  • 打赏
  • 举报
回复
这个不知道了.....我猜测,DX的API应该也和GDI+一样吧,只不过最终一个是用GPU执行,一个是用CPU执行..... 这要问问对DX熟的哥们
现在还是人类 2013-05-25
  • 打赏
  • 举报
回复
引用 16 楼 myjian 的回复:
你看现在游行的DirectUI,本质上就是用显卡来处理图像,相当于实现了一个DirectX版本的GDI+. QQ那么多的图片量,在静态工作时CPU占用可以低到1%左右(我的CPU是N970/4核/2.2G) 而且QQ做了深度封装,可以直接利用XML来进行界面管理,使用与开发也方便了.
难道只有用现成的图形接口才能使用GPU运算?无法自己去用?那么那些图形接口又是如何做到的呢?
现在还是人类 2013-05-25
  • 打赏
  • 举报
回复
还有,运算部分是不是改为汇编会好一点?
现在还是人类 2013-05-25
  • 打赏
  • 举报
回复
那在Windows中如何自己调用GPU运算呢?
嗷嗷叫的老马 2013-05-25
  • 打赏
  • 举报
回复
我也觉得用DirectX吧. 毕竟GDI+多数是靠CPU,而DirectX却是由显卡来处理的,CPU与GPU在干图像处理方面硬件上就有天生的区别...
嗷嗷叫的老马 2013-05-25
  • 打赏
  • 举报
回复
你看现在游行的DirectUI,本质上就是用显卡来处理图像,相当于实现了一个DirectX版本的GDI+. QQ那么多的图片量,在静态工作时CPU占用可以低到1%左右(我的CPU是N970/4核/2.2G) 而且QQ做了深度封装,可以直接利用XML来进行界面管理,使用与开发也方便了.
Tiger_Zhao 2013-05-24
  • 打赏
  • 举报
回复
不是有 TransparentBlt 吗,为什么要自己处理图层合并? 你这哪里是写“基于GDI引擎”,而是写“GDI的替代品”了。
现在还是人类 2013-05-24
  • 打赏
  • 举报
回复
这是我简化过的线程合成数据的代码

void desktopui::Refresh(int ThreadIndex)
{
	int				x;
	int				y;
	long			gdiX,gdiY,gdiAddr;
	long			gdiXAddr,gdiYAddr;
	long			i,j;
	long			layerX,layerY;
	long			lbX,lbY,lbAddr;
	long			RYAddr,RXAddr;
	float			lwProportion,lhProportion;
	PALETTEENTRY	defColor,readColor,secondaryColor,colorA,colorB,colorC;
	int				zoomMode;
	int				nLOver;
	int				IsPix;
	int				InitRow;

	InitRow = ThreadIndex;

	for(y=InitRow;y<this->height;y=y+this->ThreadCount){
		gdiY = y;
		gdiYAddr = this->bytesWLength*gdiY;
		RYAddr = gdiYAddr;
		for(x=0;x<this->width;x++){
			gdiX = x;
			gdiXAddr = gdiX*4;
			RXAddr = gdiXAddr;
			gdiAddr = gdiXAddr+gdiYAddr;
			secondaryColor.peBlue	= this->Backs[gdiAddr];
			secondaryColor.peGreen	= this->Backs[gdiAddr+1];
			secondaryColor.peRed	= this->Backs[gdiAddr+2];

			for(i=0;i<this->LayerLength;i++){
				IsPix = 0;
				if(gdiX>=this->Layers[i].left)
				if(gdiX<(this->Layers[i].left+this->Layers[i].width))
				if(gdiY>=this->Layers[i].top)
				if(gdiY<(this->Layers[i].top+this->Layers[i].height)){
					IsPix = 1;
				}
				if(IsPix==1){
					lbX = gdiX-(this->Layers[i].left);
					lbY = gdiY-(this->Layers[i].top);
					lbAddr = (lbY*(this->Layers[i].img->wsize))+(lbX*4);

					readColor.peBlue	= this->Layers[i].img->bytes[lbAddr];
					readColor.peGreen	= this->Layers[i].img->bytes[lbAddr+1];
					readColor.peRed		= this->Layers[i].img->bytes[lbAddr+2];
					readColor.peFlags	= this->Layers[i].img->bytes[lbAddr+3];

					if(i==0||readColor.peFlags==255){
						secondaryColor.peBlue	= readColor.peBlue;
						secondaryColor.peGreen	= readColor.peGreen;
						secondaryColor.peRed	= readColor.peRed;
					}else{
						secondaryColor.peBlue	= secondaryColor.peBlue + Round(((float)(readColor.peBlue - secondaryColor.peBlue) / (float)255) * (float)readColor.peFlags);
						secondaryColor.peGreen	= secondaryColor.peGreen + Round(((float)(readColor.peGreen - secondaryColor.peGreen) / (float)255) * (float)readColor.peFlags);
						secondaryColor.peRed	= secondaryColor.peRed + Round(((float)(readColor.peRed - secondaryColor.peRed) / (float)255) * (float)readColor.peFlags);
					}

				}
			}

			this->bytes[RXAddr+RYAddr]		= secondaryColor.peBlue;
			this->bytes[RXAddr+RYAddr+1]	= secondaryColor.peGreen;
			this->bytes[RXAddr+RYAddr+2]	= secondaryColor.peRed;
			this->bytes[RXAddr+RYAddr+3]	= 0x00;
		}
	}
	SetBitmapBits(this->memBitmap,this->bytesLength,this->bytes);
}
现在还是人类 2013-05-24
  • 打赏
  • 举报
回复
引用 7 楼 Tiger_Zhao 的回复:
不知道你用什么方法实现缩放的?变换其实有现成函数可用的。 World space 到 Page space 的转换简介
缩放我是直接在数据里运算的,不过为了测试效率,我就把缩放部分屏蔽掉了,测试时也没有做缩放处理,但效率不高。
Tiger_Zhao 2013-05-24
  • 打赏
  • 举报
回复
不知道你用什么方法实现缩放的?变换其实有现成函数可用的。
World space 到 Page space 的转换简介
Tiger_Zhao 2013-05-24
  • 打赏
  • 举报
回复
那样性能就不能要求太高,毕竟 GDI+ 可以调用硬件实现的。
Round(((float)(readColor.peBlue - secondaryColor.peBlue) / (float)255) * (float)readColor.peFlags);
避免浮点运算,这个可以改成先乘再整除的运算。
现在还是人类 2013-05-24
  • 打赏
  • 举报
回复
引用 10 楼 Tiger_Zhao 的回复:
不是有 TransparentBlt 吗,为什么要自己处理图层合并? 你这哪里是写“基于GDI引擎”,而是写“GDI的替代品”了。
我这么做只是纯粹搞这种技术的研究而已,并不是不了解或不知道有什么现成的东西可用,只是想更深入更测底的去了解这种技术而已,当然,我更希望自己在这方面可以做到改良或创新,不过前提是更为深入的了解和运用。
worldy 2013-05-23
  • 打赏
  • 举报
回复
引用 2 楼 Tiger_Zhao 的回复:
动画分辨率≠屏幕分辨率 比如普通的网络电视,“片源”可能就是VCD的分辨率(352x288 或 352x240),全屏也只不过将该解码后的内容放大后进行显示,并不是屏幕有多大就需要片源分辨率有多大。 你也可以做成“小动画”,最后一步才放大到屏幕显示。
使用gdi,小动画放大后,速度肯定明细下降
Tiger_Zhao 2013-05-23
  • 打赏
  • 举报
回复
动画分辨率≠屏幕分辨率
比如普通的网络电视,“片源”可能就是VCD的分辨率(352x288 或 352x240),全屏也只不过将该解码后的内容放大后进行显示,并不是屏幕有多大就需要片源分辨率有多大。
你也可以做成“小动画”,最后一步才放大到屏幕显示。
worldy 2013-05-23
  • 打赏
  • 举报
回复
gdi需要经历复杂的转换和内存拷贝才能最终显示,作为动画,要得到满意的结果,估计很难,正如很好的车走在坑坑洼洼的路上,速度也上不来,动画还是是用directx,或者opengl比较合适
加载更多回复(3)
什么是实用技巧,就是那种能经常用得着的值得收藏起来的应用方法。本文 中笔者就将向大家介绍35种Windows操作系统技巧,招招实用,招招值得你把 他保存到你的电脑中或者把这篇文章的地址收藏到收藏夹里。   1、如何实现关机时清空页面文件   打开“控制面板”,单击“管理工具→本地安全策略→本地策略→安全 选项”,双击其中“关机:清理虚拟内存页面文件”一项,单击弹出菜单中 的“已启用”选项,单击“确定”即可。   2、如何自行配置Windows XP的服务   如果你是在单机使用Windows XP,那么很多服务组件是根本不需要的, 额外的服务程序影响了系统的速度,完全可将这些多余的服务组件禁用。单 击“开始→控制面板→管理工具→服务”,弹出服务列表窗口,有些服务已 经启动,有些则没有。我们可查看相应的服务项目描述,对不需要的服务予 以关闭。如“Alerter”,如果你未连上局域网且不需要管理警报,则可将其 关闭。   3、Smartdrv程序有什么作用   现象:在许多有关Windows XP安装的介绍文章中都提到:“如果在DOS下 安装Windows XP非常慢,肯定是安装前未运行Smartdrv.exe。我这个 Smartdrv.exe文件有什么饔?具体如何使用?   Smartdrv.exe这个文件对于熟悉DOS的朋友肯定很清楚,主要作用是为磁 盘文件读写增加高速缓存。大家知道内存的读写速度比磁盘高得多,如果将 内存作为磁盘读写的高速缓存可以有效提高系统运行效率。Smartdrv.exe这 个文件在Windows各个版本的安装光盘中或是硬盘上的Windows/command/里都 有,只有几十KB,把这个文件复制到软盘下,启动系统后直接运行这个程序( 可以不加参数,该程序会自动根据内存大小分配适当的内存空间作为高速缓 存),再安装Windows XP即可。另外提醒大家,这个程序在安装完Windows后 ,不要运行,否则Windows可用内存将减少。   4、Win32k.sys是什么文件   现象:我刚装了Windows XP,可是接下去再装毒霸就发现病毒,位于 F:WINNT SYSTEM32里的Win32k.sys文件,删又不可删,隔离又不行,在 Windows 98下或DOS下删就会导致Windows XP不可启?,请该文件是干什么 用的,有什么方法解决?   这个文件是Windows XP多用户管理的驱动文件。在 X:WindowsSystem32Dllcache目录下有此文件的备份。只要将此备份拷到 X:WindowsSystem32下替代带病毒的文件即可。做一张Windows 98启动盘,并 将Attrib.exe文件拷入软盘,此文件在装有Windows 98的机器上的 X:WindowsCommand目录下。在BIOS的Advanced BIOS Features 中将启动顺序 调整为从A盘启动,进入DOS后,进入X:WindowsSystem32目录,输入Attrib -s -h -r win32k.sys,再进入X:WindowsSystem32dllcache目录下输入同样 命令,再用copy win32k.sys X:windowsSystem32覆盖原文件,再重新启动即 可。   5、Windows XP的开机菜单有什么含义   现象:最近我安装了Windows XP操作系统,我知道在启动时按F8键或当 计算机不能正常启动时,就会进入Windows XP启动的高级选项菜单,在这里 可以选择除正常启动外的8种不同的模式启动Windows XP。请这些模式分别 代表什么意思?   (1)安全模式:选用安全模式启动Windows XP时,系统只使用一些最基本 的文件和驱动程序启动。进入安全模式是诊断故障的一个重要步骤。如果安 全模式启动后无法确定,或者根本无法启动安全模式,那你就可能需要 使用紧急修复磁盘ERD的功能修复系统了。   (2)网络安全模式:和安全模式类似,但是增加了对网络连接的支持。在 局域网环境中解决Windows XP的启动故障,此选项很有用。   (3)命令提示符的安全模式:也和安全模式类似,只使用基本的文件和驱 动程序启动Windows XP。但登录后屏幕出现命令提示符,而不是Windows桌面 。   (4)启用启动日志:启动Windows XP,同时将由系统加载的所有驱动程序 和服务记录到文件中。文件名为ntbtlog.txt,位于Windir目录中。该日志对 确定系统启动的准确原因很有用。   (5)启用VGA模式:使用基本VGA驱动程序启动Windows XP。当安装了使 Windows XP不能正常启动的新显卡驱动程序,或由于刷新频率设置不当造成 故障时,这种模式十分有用。当在安全模式下启动Windows XP时,只使用最 基本的显卡驱动程序。   (6)最近一次的正确配置:选择“使用‘最后一次正确的配置’启动 Windows XP”是解决诸如新添加的驱动程序与硬件不相符之类的一种方 法。用这种方式启动,Windows XP只恢复注册表项 HklmSystemCurrentControlSet下的信息。任何在其他注册表项中所做的更改 均保持不变。   (7)目录服务恢复模式:不适用于Windows XP Professional。这是针对 Windows XP Server操作系统的,并只用于还原域控制器上的Sysvol目录和 Active Directory目录服务。   (8)调试模式:启动Windows XP,同时将调试信息通过串行电缆发送到其 他计算机。如果正在或已经使用远程安装服务在你的计算机上安装Windows XP,可以看到与使用远程安装服务恢复系统相关的附加选项。 6、如何彻底删除XP   现象:我装了Windows Me和Windows XP双系统,都是FAT32格式。C盘装 Windows Me,E盘装Windows XP。昨天,Windows XP系统丢失了SYSTEM32.DLL ,启动不了。于是我在进入Windows Me系统内,在E盘直接删除Windows XP。 但是,每次开机都出现多系统启动菜单,供选择。我该怎样才可以彻底删除 XP?   用一张Windows 9x/Me的启动盘启动,在“A:”下输入“SYS C:”,给C 盘重新传系统即可。   7、如何处理Windows XP不能自动关机现象   现象:我的Windows XP有时候不能自动关闭电脑,请应该怎么办?   安装完Windows XP之后,有些计算机在单击关闭电脑之后并不能自动关 闭,而需像以前的AT电源一样手动关闭。这主要是Windows XP未启用高级电 源管理。修正方法:单击“开始→控制面板→性能和维护→电源选项”,在弹 出的电源选项属性设置窗口中,单击“高级电源管理”并勾选“启用高级电 源管理支持”。   8、如何创建“锁定计算机”的快捷方式   因有急事而需要离开,但又不希望电脑进行系统注销,该怎么办?你完 全可以通过双击桌面快捷方式来迅速锁定键盘和显示器,且无需使用 “Ctrl+Alt+Del”组合键或屏幕保护程序。操作方法:在桌面上单击鼠标右 键,在随后出现的快捷菜单上指向“新建”,并选择“快捷方式”。接着, 系统便会启动创建快捷方式向导。请在文本框中输入下列信息: rundll32.exe user32.dll, LockWorkStation,单击“下一步”。输入快捷 方式名称。你可将其命名为“锁定工作站”或选用你所喜欢的任何名称,单 击“完成”。你还可对快捷方式图标进行修改(我最喜欢的一个是由 Shell32.dll所提供的挂锁图标)。如需修改快捷方式图标,请执行下列操作 步骤:右键单击“快捷方式”,并在随后出现的快捷菜单上选择“属性”。 选择“快捷方式”选项卡,接着,单击“更改图标”按钮。在以下文件中查 找图标文本框中,输入Shell32.dll,单击“确定”。从列表中选择所需图标 ,并单击“确定”。你还可为快捷方式指定一组快捷键,比如“Ctrl+Alt+L ”。这种做法虽然只能帮助你节省一次击键,但却可使操作变得更加灵便。 如需添加快捷键组合,请执行下列操作步骤:右键单击“快捷方式”,并在 随后出现的快捷菜单上选择“属性”。选择“快捷方式”选项卡,在快捷键文 本框中,输入任何键值,而Windows XP则会将其转换成快捷键组合(一般应采 取Ctrl+Alt+任意键的形式)。如欲锁定键盘和显示器,只需双击相关快捷方 式或使用所定义的快捷键即可。   9、如何调整桌面图标颜色质量   在桌面空白处单击鼠标右键,在打开的“显示 属性”对话框中选择“ 设置”选项卡,通过“颜色质量”下拉列表你可以调整计算机的颜色质量。 你也可以通过编辑注册表来调整桌面图标的颜色质量,具体操作步骤:   打开注册表编辑器,进入HKEY_CURRENT_ USERControl PanelDesktopWindowMetrics子键分支,双击Shell Icon BPP键值项,在打开 的“编辑字符串”对话框中,“数值数据”文本框内显示了桌面图标的颜色 参数,系统默认的图标颜色参数为16。这里提供的可用颜色参数包括 :4表 示16种颜色,8表示256种颜色,16表示65536种颜色,24表示1600万种颜色, 32表示True Color(真彩色)。你可以根据自己的不需要选择和设置你的桌面 图标颜色参数。单击“确定”关闭“编辑字符串”对话框。注销当前用户并 重新启动计算机后设置就生效。   在桌面空白处单击鼠标右键,在打开的“显示属性”对话框中选择“外 观”选项卡,在这里你可以方便地对整个桌面、窗口或者其他项目的字体和 图标大小进行调整。   不过,用这种方式设置图标大小有一定局限性,比如,用户只能选择系 统已经提供的桌面大小方案,不能自己任意设置桌面图标的大小。如果你 随心所欲地对桌面图标大小进行调整,可以通过编辑注册表来达到目的。具 体操作步骤是: 打开注册表编辑器,进入HKEY_CURRENT_ USERControl PanelDesktopWindowMetrics子键分支,双击Shell Icon Size键值项,在打 开的“编辑字符串”对话框中,“数值数据”文本框内显示了桌面图标的大 小参数,系统默认29,用户可以根据自己的需要设置参数大小(参数越大,桌 面图标也越大),然后单击“确定”关闭“编辑字符串”对话框。当你注销当 前用户并重新启动计算机后设置就生效。   10、如何对系统声音进行选择与设置   系统声音的选择与设置就是为系统中的事件设置声音,当事件被激活时 系统会根据用户的设置自动发出声音提示用户。 选择系统声音的操作步骤如 下:   (1)在“控制面板”窗口中双击“声音及音频设备”图标,打开“声音及 音频设备”属性对话框,它提供了检查配置系统声音环境的手段。这个对话 框包含了音量、声音、音频、语声和硬件共5个选项卡。   (2)在“声音”选项卡中,“程序事件”列表框中显示了当前Windows XP 中的所有声音事件。如果在声音事件的前面有一个“小喇叭”的标志,表示 该声音事件有一个声音提示。要设置声音事件的声音提示,则在“程序事件 ”列表框中选择声音事件,然后从“声音”下拉列表中选择需要的声音文件 作为声音提示。   (3)用户如果对系统提供的声音文件不满意,可以单击“浏览”按钮,弹 出浏览声音对话框。在该对话框中选定声音文件,并单击“确定”按钮,回 到“声音”选项卡。   (4)在Windows XP中,系统预置了多种声音方案供用户选择。用户可以从 “声音方案”下拉表中选择一个方案,以便给声音事件选择声音。   (5)如果用户要自己设置配音方案,可以在“程序事件”列表框中选择需 要的声音文件并配置声音,单击“声音方案”选项组中的“另存为”按钮, 打开“将方案存为”对话框。在“将此配音方案存为”文本框中输入声音文 件的名称后,单击“确定”按钮即可。如果用户对自己设置的配音方案不满 意,可以在“声音方案”选项组中,选定该方案,然后单击“删除”按钮, 删除该方案。   (6)选择“音量”选项卡,打开“音量”选项卡。你可以在“设备音量” 选项组中,通过左右调整滑块改变系统输出的音量大小。如果希望在任务栏 中显示音量控制图标,可以启用“将音量图标放入任务栏”复选框。   (7)你调节各项音频输入输出的音量,单击“设备音量”区域中的“高 级”按钮,在弹出的“音量控制”对话框里调节即可。这里列出了从总体音 量到CD唱机、PC扬声器等单项输入输出的音量控制功能。你也可以通过选择 “静音”来关闭相应的单项音量。   (8)单击“音量”选项卡中的“扬声器设置”区域中的“高级”按钮后, 在弹出的“高级音频属性”对话框你可以为自己的多媒体系统设定最接近你 的硬件配置的扬声器模式。   (9)在“高级音频属性”对话框中选择“性能”选项卡,这里提供了对音 频播放及其硬件加速和采样率转换质量的调节功能。要说明的是,并不是所 有的选项都是越高越好,你需要根据自己的硬件情况进行设定,较好的质量 通常意味着较高的资源占有率。   设置完毕后,单击“确定”按钮保存设置。 11、如何分配临时管理权限   许多程序在安装过程中都要求你具备管理权限。这里介绍了一种以普通 用户身份登录的情况下,临时为自己分配管理权限的简单方法。在右键单击 程序安装文件的同时按住“Shift”键。在随后出现的快捷菜单中单击“运行 方式”,输入具有相应管理权限的用户名和密码。这种方式对于开始菜单上 的应用程序同样适用。   12、如何关闭Windows XP的自动播放功能   一旦你将多媒体光盘插入驱动器,自动运行就会从驱动器中读取数据, 这会造成程序的设置文件和在音频媒体上的音乐立即开始。你可以用下面这 个办法关闭这个功能:打开“开始→运行”,在对话框中输入“gpedit.msc ”命令,在出现“组策略”窗口中依次选择“在计算机配置→管理模板→系 统”,双击“关闭自动播放”,在“设置”选项卡中选“已启用”选项,最 后单击“确定”按钮即可。   13、如何恢复被破坏的系统引导文件   现象:我只安装了Windows XP系统,但在开机时显示“BOOT.INI非法, 正从C:WINDOWS启动”,然后就进入了启动状态,并且也能照样工作,请 这是怎么一回事,能否在不重装系统的情况下使系统恢复到正常启动状态?   出现这种情况是因为C盘下面的“Boot.ini”文件被破坏了。但是由于你 的机器中只有一个操作系统,当然它就是默认的操作系统,即使“Boot.ini ”文件被破坏了,也将自动地引导该系统进行装载。   解决的办法是建立一个“Boot.ini”文件即可。其内容为:   [Boot Loader]   Default=C:   [Operating Systems]   C:=“Microsoft Windows xp”   14、如何恢复输入法图标   现象:本人使用Windows XP中文版,不慎使任务栏隐藏了输入法图标, 请该如何恢复输入法图标。   打开“控制面板”,双击“区域和语言选项”图标,进入“区域和语言 选项”对话框,选择“语言”选项卡,单击“详细信息”按钮,在弹出的对 话框中单击“语言栏”按钮,在接着出现的“语言栏设置”对话框中勾选“ 在桌面上显示语言栏”选项。这时候桌面会出现语言栏,单击右上角的最小 化按钮,输入法图标就回到任务栏中去了。   15、如何恢复误删除的boot.ini文件   现象:我第一次装Windows XP时,重启后没有任何。但是由于误操 作,删掉了C盘目录下的一个文件(文件名是:boot.ini),然后再重启时每次 都显示两行字:“boot.ini是非法的。现在正从C:/Windows/下启动”。然后 可以顺利进入Windows XP。但是速度明显慢了,比没删这个文件时慢了很多 ,而且,每次都要看见那两行字。请如何修复?   boot.ini是系统启动时,需要查询的一个系统文件,它告诉启动程序本 计算机有几个操作系统、各系统的位置在哪里等信息。重新恢复的方法如下 :单击“开始”菜单,依次指向“程序→附件→记事本”,打开“记事本” ,在记事本里输入:   [boot loader]   timeout=30   default=multi(0)disk(0)rdisk(0)partition(1) Windows   [operating systems]   multi(0)disk(0)rdisk(0)partition(1)Windows=“Microsoft Windows XP Professional” /fastdetect   然后将它保存为名字是boot.ini的文件,并将此文件保存到C盘的根目录 下即可。   16、如何加快Windows XP窗口显示速度   我们可以通过修改注册表来改变窗口从任务栏弹出,以及最小化回归任 务栏的动作,步骤如下:打开注册表编辑器,找到HKEY_ CURRENT_USERControl PanelDesktop WindowMetrics子键分支,在右边的窗 口中找到MinAnimate键值,其类型为REG_SZ,默认情况下此健值的值为1,表 示打开窗口显示的动画,把它改为0,则禁止动画的显示,接下来从开始菜单 中选择“注销”命令,激活刚才所作的修改即可。   17、如何解决Windows XP关机出现英文提示   现象:我的Windows XP关机时会出现一个进度条,并提示“To return to windows and check the status of the program click cancel if you choose to end the program immediately you will lose any unsaved data. To end the program now click end.”然后就正常关机,但有时却不 出现,我会不会与我的东方影都3的记忆播放有关,但关闭记忆播放功能也 无效,请如何办?   这是因为你关闭Windows XP时还有程序在运行,请在关机之前保存并关 闭一切应用程序。如果直接单击“End”按钮,那么未保存的任务会丢失,这 时可以按“Ctrl+Alt+Del”打开任务管理器,然后关闭应用程序。如果在任 务管理器列表中为空,那么就在“系统进程”中将它关闭。如果不进行任何 操作,那么系统将在进度条到头时自动关闭未关闭的程序并关闭系统。请你 在关机之前关闭一切应用程序、系统驻留程序就不会出现这个提示了。当你 确定没有任何需要保存的任务时,可以不必理会此对话框。 18、如何控制桌面的图标显示   通常很多用户还是习惯于在桌面上保留“我的文档”及其他经常访文 件夹快捷方式以及经常使用的程序快捷方式。如果你在桌面上显示“我的 电脑”、“我的文档”、“网上邻居”、IE浏览器的快捷方式图标,只需进 行如下操作 :在桌面单击鼠标右键,在右键菜单中选择“属性”命令,在打 开的“显示 属性”对话框中选择“桌面”选项卡,单击“自定义桌面”按钮 ,打开“桌面”项目对话框。在“常规”选项卡的“桌面图标”栏中选择所 需项目的复选框,然后单击“确定”返回上一级对话框,再单击“应用”按 钮即可。   19、如何删除Windows XP的“更新”选项   对于大多数的用户来说,Windows XP的Windows Update功能似乎作用不 大,我们可以去掉它,操作步骤如下:打开注册表编辑器,找到 HKEY_CURRENT_USERSoftware MicrosoftWindowsCurrentVersionPoliciesExplorer子键分支,选择“编辑 ”菜单下的“新建”命令,新建一个类型为REG_DWord的值,名称为 NoCommonGroups,双击新建的NoCommon Groups子键,在“编辑字符串”文本 框中输入键值“1”,然后单击“确定”按钮并重新启动系统即可。   20、如何设置音频属性   打开“控制面板”,双击“声音及音频设备”图标,在“声音及音频设 备 属性”对话框中,选择“音频”选项卡,在该选项卡中,你可以看到与“ 声音播放”、“录音”和“MIDI音乐播放”有关的默认设备。当你的计算机 上安装有多个音频设备时,就可以在这里选择应用的默认设备,并且还可以 调节其音量及进行高级设置。   进行音频设置的操作步骤如下:   (1)在“声音播放”选项组中,从“默认设备”下拉列表中选择声音播放 的首选设备,一般使用系统默认设备。   (2)用户如果希望调整声音播放的音量,可以单击“音量控制”窗口,在 该窗口中,将音量控制滑块上下拖动即可调整音量大小。   (3)在该窗口中,用户可以为不同的设备设置音量。例如,当用户在播放 CD时,调节“CD音频”选项组中的音量控制滑块,可以改变播放CD的音量; 当用户播放MP3和WAV等文件时,用户还可以在“音量控制”窗口进行左右声 道的平衡、静音等设置。   (4)用户如果选择扬声器或设置系统的播放性能,可以单击“声音播放 ”选项组中的“高级”按钮,打开 “高级音频属性”对话框,在“扬声器” 和“性能”选项卡可以分别为自己的多媒体系统设定最接近你的硬件配置的 扬声器模式及调节音频播放的硬件加速功能和采样率转换质量。   (5)在“录音”选项组中,可以从“默认设备”下拉列表中选择录音默认 设备。单击“音量”按钮,打开 “录音控制”对话窗口。用户可以在该窗口 中改变录音左右声道的平衡状态以及录音的音量大小。   (6)在“MIDI音乐播放”选项组中,从“默认设备”下拉列表中选择 MIDI音乐播放默认设备。单击“音量”按钮,打开“音量控制”窗口调整音 量大小。   (7)如果用户使用默认设备工作,可启用“仅使用默认设备”复选框。设 置完毕后,单击“应用”按钮保存设置。   21、如何设置语声效果   用户在进行语声的输入和输出之前,应对语声属性进行设置。在“声音 和音频设备 属性”对话框中,选择“语声”选项卡,在该选项卡中,用户不 但可以为“声音播放”和“录音”选择默认设备,而且还可调节音量大小及 进行语声测试。   (1)在“声音播放”选项组中,从“默认设备”下拉列表中选择声音播放 的设备,单击“音量”按钮,打开“音量控制”窗口调整声音播放的音量。 要设置声音播放的高级音频属性,单击“高级”按钮完成设置。   (2)在“录音”选项组中,从“默认设备”下拉列表中选择语声捕获的默 认设备,单击“音量”按钮,打开“录音控制”窗口调整语声捕获的音量。 要设置语声捕获的高级属性,单击“高级”按钮完成设置。   (3)单击“测试硬件”按钮,打开 “声音硬件测试向导”对话框,该向 导测试选定的声音硬件是否可以同时播放声音和注册语声。注释:要确保测 试的准确性,在测试之前必须关闭使用麦克风的所有程序,如语声听写或语 声通信程序。   (4)单击“下一步”按钮,向导开始测试声音硬件,并通过对话框显示检 测进度。   (5)检测完毕后,打开“正在完成声音硬件测试向导”对话框,通告用户 检测结果,单击“完成”按钮关闭对话框。   (6)设置完毕后,单击“确定”按钮保存设置。   22、如何手动使计算机进入休眠状态   现象:请如何用手动方式使Windows XP的计算机进入休眠状态?   休眠功能是Windows XP提供的一项非常酷的特性,它“隐藏”在Shut Down(关机)对话框中。如果你的计算机支持休眠功能,那么借助以下技巧, 可通过手动方式使其进入休眠状态。 如需以手动方式使你的计算机进入休眠 状态,请执行以下操作步骤: 选择“开始→关闭计算机”,在关闭Windows 对话框中,选择“休眠”。当你的计算机进入休眠状态后,内存中的内容将 保存到硬盘上。当你将计算机唤醒时,进入休眠状态前打开的所有程序与文 档都将恢复到桌面上。如需在你的计算机上激活休眠支持特性,请执行以下 操作步骤:你必须以管理员、Administrators或Power Users组成员的身份登 录。如果你的计算机与某个网络建立了连接,那么网络策略设置可能会导致 这一操作过程无法实现。单击“开始→控制面板→性能和维护→电源选项” ,选择“休眠”选项卡,选中“启用休眠”,单击“确定”关闭电源选项对 话框。如果休眠选项卡不可用,则说明你的硬件设备无法支持该特性。   23、如何提高Windows XP的启动速度   使用微软提供的“Bootvis”软件可以有效地提高Windows XP的启动速度 。这个工具是微软内部提供的,专门用于提升Windows XP启动速度。下载解 压缩到一个文件夹下,并在“Options”选项中设置使用当前路径。之后从“ Trace”选项下拉菜单中选择跟踪方式。该程序会引导Windows XP重新启动, 并记录启动进程,生成相关的BIN文件。之后从Bootvis中调用这个文件,从 Trace项下拉菜单中选择“Op-timizesystem”命令即可。   Windows XP虽然提供了一个非常好的界面外观,但这样的设置也在极大 程度上影响了系统的运行速度。如果你的电脑运行起来速度不是很快,建议 将所有的附加桌面设置取消,也就是将Windows XP的桌面恢复到Windows 2000样式。   设置的方法非常简单:在“我的电脑”上单击鼠标右键,选择“属性” ,在“高级”选项卡中单击“性能”项中的“设置”按钮,在关联界面中选 择“调整为最佳性能”复选框即可。   此外,一个对Windows XP影响重大的硬件就是内存。使用256MB内存运行 Windows XP会比较流畅,512MB的内存可以让系统运行得很好。如果条件允许 ,最好增大内存。   24、如何为Windows XP减肥   Windows XP比以往的任何Windows系统都要庞大,其硬盘空间需求1.5GB 。虽然相对于能跑Windows XP的主流电脑来说,一般都拥有10GB以上的硬盘 ,但一些电脑发烧友有时还是乐于减少Windows XP的体积。   (1)删除驱动备份 :WindowsDriver cachei386目录下的Driver.cab文件 (73MB) 。   (2)删除Help文档(减掉40多MB) 。   (3)删除WindowsIme下不用的输入法(日文、韩文、约80MB) 。   (4)把我的文件、IE的临时文件夹转到其他硬盘(分区) 。   (5)把虚拟内存转到其他硬盘(分区)。   25、如何卸载Windows XP   现象:我原来使用的操作系统是Windows 98,最近听说Windows XP非常 好,就安装了该系统。第一次安装是从Windows 98中安装,装完后觉得不太 好,就格式化Windows XP的分区后重新从DOS安装到D盘,安装完后发现多重 启动菜单有三项(第一次装的Windows XP那一项还在),请如何删除多余的 一项?另外,如果我要删除Windows XP,除了格式化D盘外,怎样才能将它彻 底删除?   Windows 98和Windows XP双系统的启动菜单是由C盘根目录下的一个文件 来控制的,通过修改该文件可以更改启动菜单。要删除多余的Windows XP 项目,你可以打开C盘根目录下的boot.ini文件,其中有两行重复的“multi (0)…”,删除其中一行即可。要彻底删除Windows XP,除了格式化它所在 分区之外,你还必须按下面的方法删除多重启动菜单和多余的系统文件:   (1)制作一张Windows 98启动盘,并将Windows 98下的sys.com文件拷入 该系统盘。   (2)用该启动盘启动,在A:>下执行sys C:命令。   (3)删除C盘根目录下多余的文件,这些文件包括:boot.ini、 bootfont.bin、bootsect.dos、ntdetect.com、pagefile.sys等。

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧