windows 7下图标不能正常显示但可以打开程序的解决办法

windows 7下图标不能正常显示但可以打开程序的解决办法
windows 7下图标不能正常显示但可以打开程序的解决办法

windows 7下经常有出现图标不能正常显示的情况,但可以打开程序,

那么如何解决呢

1. 首先

启动任务管理器,可以按键盘Ctrl+Alt+Delete、或者是在最下方工具条右键单击弹出菜单选择启动任务管理器

选择进程选项

在进程中勾选显示所有用户进程选项

查找explorer.exe

选中点击右下角结束进程

点击-结束进程

此时桌面会显示空白,如果有几个explorer.exe的话都要结束

2.然后选择任务管理器文件-新建任务菜单

在弹出的创建新任务窗口中输入 cmd

弹出CMD窗口输入

cd /d %userprofile%\AppData\Local

delIconCache.db /a

exit

可以直接复制粘贴进去-回车

3. 然后再在任务管理器选择文件创建新任务-选择浏览

选中C:\Windows文件夹下explorer.exe文件点击打开

或者直接输入explorer.exe

点击确定一切就OK了

4.图标正常

Windows程序设计题(含简答题答案)

Windows 程序设计》模拟题 单项选择题 1. 在 VC++ 中,项目文件的扩展名是( B )。 A ) exe B)dsp C ) dsw D ) cpp 2. 在 MFC 中,利用 ClassWizard 不能( D )。 A )建立新类 B )进行消息映射 C )增加类的成员变量 D )插入资源 当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送( 3. C )消 息。 4. 5. A ) WM_CHAR B ) WM_HSCROLL C ) W M_VSC ROLL 更新菜单状态的消息是( C A ) WM_COMMAND )。 C ) UPDATE_COMMAND_UI 对于消息队列描述正确的是( A )在Windows 中只有一个消息系统, 据结构,用于临时存储消息。 D ) WM_CHANG E B ) UPDATE D) INVALIDATE 即系统消息队列。 消息队列是一个系统定义的数 B )系统可从消息队列将信息直接发给窗口。 另外,每个正在 Windows 下运行的应用程 序都有自己的消息队列。 C )系统消息队列中的每个消息最终都要被 USER 模块传送到应用程序的消息队列中去。 应用程序的消息对列中存储了程序的所有窗口的全部消息。 D )以上都正确 6. 在 MFC 中,所有的控件都是( B )类的派生类,都可以作为一个特殊的窗口来处理。 CView B ) CWnd C) 7. 使用 CWindow C) D ) CDialog GetDC () 获取的设备上下文在退出时,必须调用( A )释放设备上下文。 ReleaseDC() B ) delete() DeleteDC () D ) Detach () 8. 希望菜单无效,应该用 CCmdUI 类的( A )成员函数。 A ) Enable B ) SetRadio C ) SetCheck D ) SetText 9.希望菜单前出现一个“V”,应该用 CCmdUI 类的(C )成员函数。 A ) Enable B ) SetRadio C ) SetCheck D ) SetText 10.下面(A )不是MFC 设备环境类CDC 类的派生类。 A ) GDI B ) CPaintDC C) CClientDC D) CWindowDC 11.在MFC 中,所有的文档类都派生于( C ),所有的视图类都派生于( A )。 A) CView B) CWindow C) CDocument D) CFormView

windows程序设计之扫雷游戏经典之作

WIN32模拟WINDOWS XP扫雷 程序 课程设计目的与要求: 本课程设计是计算机科学与技术专业重要的实践性环节之一,是对本程学习后进行的一次全面而综合的练习。本次课程设计的目的与任务主要有: 1.巩固和加深学生对C和C++语言的基本知识的理解与掌握。 2.掌握C和C++语言编程和调试的基本技能 3.运用C和C++语言对程序的简单设计 4.掌握程序设计说明文档的能力与技巧 5.提高与运用C和C++语言解决能实际问题的能力 一、题目描述: 自行分析Windows XP系统自带扫雷游戏,查找规则并对主要功能进行模仿程序实现,对于实现过程中出现的bug进 行调试解决。 二、使用语言: C和C++ 语言 选用C++语言的原因,简而言之主要是因为C++的设计目标,就是要让C++既具有适合于系统程序设计的C语言所具 有的可适应性和高效性,又能在其程序组织结构方面具有像其 他的语言所支持的程序优势。这即是说,C++所提供的抽象机 制能够被应用于那些对效率和可适应性具有极高要求的程序设 计任务之中。

三、编译以及运行环境: 编译环境:Microsoft Visual C++ 6.0 运行环境:Windows XP或其他兼容兼容系统 四、题目分析: 经过对游戏的初步分析,扫雷游戏含有如下规则: 根据输入的信息,执行相应的挖雷,插旗,疑问标记,自动蔓延开挖等。挖雷过程由计时器计时,由一个计数器统计插旗后雷的剩余个数。如果选择了标记功能,那么单机右键会依次对未知点进行插旗,标记,取消插旗与标记。如果点滴到插旗的如果点击到了未插旗子的雷区,如果是雷,则判定游戏失败,之后对雷区的点击进行屏蔽,不予响应。如果是疑问标记则像正常区域对待。如何判断胜利,如果所有的雷都被插旗或者点击后剩余的雷区, 五、程序运行流程简介以及流程图: 点击程序按默认参数进行初始化,输入,表情对鼠标左右键点击进行变化响应,对于雷区内点击进行规律响应,对雷区点击后果进行统计,判断失败与成功,失败或者成功之后,对于雷区内的输入也就是点击进行屏蔽,对菜单游戏级别、重新开始游戏按钮响应。级别选择,重新游戏时时间归零、雷数显示刷新。如此重复规则,直到点击退出。 程序简要流程图:

Windows程序设计题(含简答题答案)

《Windows程序设计》模拟题 一.单项选择题 1、在VC++中,项目文件得扩展名就是(B)。 A)exe????B)dsp C)dsw???D)cpp 2、在MFC中,利用ClassWizard不能(D)。 A)建立新类??B)进行消息映射 C)增加类得成员变量?D)插入资源 3、当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送(C)消息。 A)WM_CHAR??B)WM_HSCROLL C)W M_VSCROLL???D)WM_CHANGE 4、更新菜单状态得消息就是(C )。 A)WM_MANDB)UPDATE C)UPDATE_MAND_UI D)INVALIDATE 5、对于消息队列描述正确得就是(D) A)在Windows中只有一个消息系统,即系统消息队列。消息队列就是一个系统定义得 数据结构,用于临时存储消息。 B)系统可从消息队列将信息直接发给窗口。另外,每个正在Windows下运行得应用程序都有自己得消息队列。 C)系统消息队列中得每个消息最终都要被USER模块传送到应用程序得消息队列中去。 应用程序得消息对列中存储了程序得所有窗口得全部消息. D)以上都正确 6、在MFC中,所有得控件都就是(B)类得派生类,都可以作为一个特殊得窗口来处理。 A)CView??B)CWnd C)C Window???D)CDialog 7、使用GetDC()获取得设备上下文在退出时,必须调用(A)释放设备上下文. A)ReleaseDC()???B)delete() C)D eleteDC()???D)Detach() 8、希望菜单无效,应该用CCmdUI类得(A )成员函数。 ???B)SetRadio A)Enable?? ? C)SetCheck???D)SetText 9、希望菜单前出现一个“√",应该用CCmdUI类得(C)成员函数. A)Enable ???B)SetRadio C)SetCheck??D)SetText 10、下面(A)不就是MFC设备环境类CDC类得派生类. A)GDI ????B)CPaintDC C)CClientDC ??D)CWindowDC 11、在MFC中,所有得文档类都派生于(C),所有得视图类都派生于(A )。 A)CView B)CWindowC)CDocumentD)CFormView 12、采用C++进行绘图时,(B)用于指定图形得填充样式,(A)用于指定图形得边框样式.

windows程序设计学习笔记(一)

Windows程序设计学习笔记 2015年10月4日 一、宽字符wide-character 1、wchar_t: char的双字节(Unicode) 定义:typedef unsigned short wchar_t 示例:wchar_t c=’A’; wchar_t *pw=L”hello!”; //L(代表long)告诉编译器按宽字符保存,即每个字符占两个字节 wchar_t a[]=L”hello!”; 2、宽字符库函数 wcslen( ):计算宽字串符的长度 如:wchar_t *pw=L”hello!”; iLength=wcslen(pw); //字符串长度是6 二、windows头文件类型 1、CHAR和WCHAR typedef char CHAR; //8位 typedef wchar_t WCHAR; //16位变量前面可加wc以说明是一个宽字符 2、字符串指针 (1)8位字符串指针 tpyedef CHAR *PCHAR, *LPCH, *PCH, *NPSTR, *LPSTR, *PSTR; tpyedef CONST CHAR *LPCCH, *PCCH, *LPCSTR, *PCSTR; 前缀N和L表示“near”和“long”,指的是16位windows中两种大小不同的指针,在Win32中near和long指针没有区别 (2)16位字符串指针 tpyedef WCHAR *PWCHAR, *LPWCH, *PWCH, *NWPSTR, *LPWSTR, *PWSTR; tpyedef CONST WCHAR *LPCWCH, *PCWCH, *LPCWSTR, *PCWSTR; 3、WINAPI 定义:#define WINPAI _stdcall 该语句指定了一个调用约定,包括如何生成机器代码以在堆栈中放置函数调用的参数三、Hello程序 /*------------------------------------- HELLO.C--windows下显示Hello,world! 作者:lw 时间:2015年国庆 -------------------------------------*/ #include LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { static TCHAR szAppName[] = TEXT("HelloWin"); HWND hwnd; MSG msg; WNDCLASS wndclass; wndclass.style = CS_HREDRAW | CS_VREDRAW; wndclass.lpfnWndProc = WndProc;

显示桌面快捷方式为什么不见了怎么办怎么找回来

显示桌面快捷方式为什么不见了怎么办怎么找回来? 法一: 一般情况下,右击任务栏空白处,在弹出菜单上点“工具栏”-快速启动,使快速启动前打上对勾,任务栏上就会辟出快速启动栏,里面就有“显示桌面”的图标(一个方块上面支笔的图标式样),点一下,就能切换到桌面。注:可以按“win+d”快捷键实现快速切换到桌面。(win键位于Ctrl与Alt 之间) 方法二: 也可以点击“开始→运行”,在弹出的“运行”对话框中输入“REGSVR32 /n /i:u shell32 ”(不含双引号。注:32后面有个空格),然后回车,片刻后会弹出“shell32中的DllInstall成功”提示对话框,这样“显示桌面”按钮就可以完美归来了。 方法三: 可以自己做一个。 打开记事本,输入以下内容: [Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop 其中,第三行代码代表的是图标的位置,数字“3”显示的是,而当把数字“3”换成“4”,刷新,图标会变成;当数字换成“6”时,图标变成了回收站的图标,如图。虽然图标的式样变了,但是同样是“显示桌面”的功能。因此,更改显示桌面图标的方法就是这样。其实,只要在“IconFile=”后输

入你所中意的图标的路径就可以了。 然后点“文件”——>“另存为”,在文件类型中选择"所有文件",在文件名中打上“显示桌面.scf”(不包括双引号)就成了。 接下来,用鼠标把保存好的文件拖到快速启动栏里就OK了。为了以后便于使用,还可以将该图标保存到以下路径:C:\Documents and Settings\Administrator\Application Data\Microsoft\Internet Explorer\Quick Launch。至此,“显示桌面”图标的新建工作,搞定! 方法四: 如果觉得这个麻烦,还有一个简单的方法,从另一台电脑上复制“显示桌面”快捷方式。首先到另一台电脑上找到这个快捷方式,按住ctrl 把这个图标拖到电脑桌面上,然后把这个“显示桌面”复制到存储盘或者联网传给需要的电脑,传到后再用鼠标拖动到快速启动栏即可。 方法五: 或者运行“regedit”打开注册表,找到下面键值:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ Policies\System,在右边的窗口中有一个DOWRD值:“NoDispCPL”,将其值设为“0”或者删除即可。 在完成此操作后,有些电脑可能需要重启后才能生效

Windows程序设计题(含简答题标准答案)

《Windows程序设计》模拟题 一.单项选择题 1. 在VC++中,项目文件的扩展名是(B)。 A)exe ????B)dsp C)d sw?????D)cpp 2.在MFC中,利用ClassWizard不能(D )。 A)建立新类?????B)进行消息映射 C)增加类的成员变量?D)插入资源 3. 当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送(C)消息。 A)WM_CHAR ?B)WM_HSCROLL C)WM_VSCROLL???D)WM_CHANGE 4. 更新菜单状态的消息是(C)。 A)WM_COMMANDB)UPDATE C)UPDATE_COMMAND_UI D)INVALIDATE 5.对于消息队列描述正确的是( D ) A)在Windows中只有一个消息系统,即系统消息队列。消息队列是一个系统定义的数据结构,用于临时存储消息。 B)系统可从消息队列将信息直接发给窗口。另外,每个正在Windows下运行的应用程 序都有自己的消息队列。 C)系统消息队列中的每个消息最终都要被USER模块传送到应用程序的消息队列中去。应用程序的消息对列中存储了程序的所有窗口的全部消息。 D)以上都正确 6. 在MFC中,所有的控件都是(B )类的派生类,都可以作为一个特殊的窗口来处理。 ?B)CWnd A)CView ??? C)C Window ???D)CDialog 7.使用GetDC()获取的设备上下文在退出时,必须调用(A)释放设备上下文。 A)ReleaseDC()???B)delete() C)D eleteDC() ?D)Detach() 8. 希望菜单无效,应该用CCmdUI类的(A )成员函数。 A)Enable ???B)SetRadio C)S etCheck ??D)SetText 9. 希望菜单前出现一个“√”,应该用CCmdUI类的(C)成员函数。 A)Enable??B)SetRadio C)SetCheck????D)SetText 10. 下面(A)不是MFC设备环境类CDC类的派生类。 A)GDI??????B)CPaintDC C)C ClientDC ???D)CWindowDC 11. 在MFC中,所有的文档类都派生于(C),所有的视图类都派生于(A )。 A)CViewB)CWindowC)CDocument D)CFormView 12. 采用C++进行绘图时,(B )用于指定图形的填充样式,(A)用于指定图形的边框样式。 A)画笔B)画刷C)区域D)位图

显示桌面图标不见了怎么办

显示桌面图标不见了怎么办 篇一:电脑桌面图标消失了怎么办 电脑桌面图标消失了怎么办? 1、电脑桌面图标消失了 Windows XP有一个功能,就是把桌面上的图标隐藏!所以可能是无意中改动了这个选项的设定,只要在桌面展开右键,选择“依次排列图标”-“显示桌面图标”就可以了:) 2、桌面上的IE图标竟然不见了 在桌面单击右键,选“属性→桌面→自定义桌面”,在桌面图标处看到“Internet Explorer”项了吧,选择上它桌面就可以恢复IE 图标了。 3、控制音量的小喇叭图标不见了 出现这种情况,只要打开[控制面板],选择[声音、语言和音频设备]这一项,再选择[声音和音频设备],然后再打开窗口的[音量]选项,在[将音量图标放入任务栏]选项前面打上钩,单击[确定],图标便会出现了。(如图) 4我的输入法图标哪儿去了?怎么办? 如果你用的是Windows XP中,输入法图标也会莫名其妙地丢失,但在控制面板中却没有“输入法”,这时可以按以下方法尝试:方法1:在任务栏单击鼠标右键,弹出快捷菜单,把鼠标移动到”工具栏”上,会弹出子菜单,看看其中的“语言栏”有没有被选中,

如果没有选中,单击选中“语言栏”,一般会显示输入法图标。 方法2:依次单击“开始→设置→控制面板”,打开控制面板,在控制面板中单击“日期、时间、语言和区域设置”,单击“语言和区域设置”,弹出“语言和区域设置”对话框,单击“语言”标签,在“文字服务和输入语言”下单击“详细信息”按钮,弹出“文字服务和输入语言”对话框,单击“高级”标签,在“系统配置”下,把“关闭高级文字服务”前面的对号取消(看到下面的注释了没有,选中”会关闭语言栏”),单击“确定”按钮,输入法图标就回来了。 方法3:点“开始→运行”,键入“msconfig”,单击“确定”或回车,运行“系统配置实用程序”,在“启动”里把“”选中,单击“确定”,然后注销或重新启动应该就可以了。这是因为控制Alternative User Input Text Processor (TIP)和Microsoft Office 语言条,提供语音识别、手写识别、键盘、翻译和其它用户输入技术的支持。这个程序没有启动也会造成输入法图标不显示。 5、“网络连接”窗口中我的“本地连接”和“ADSL”图标不见了 这可能是你的Network Connections服务被禁用了原因造成的,查看方法如下:在“运行”窗口中输入“”,然后在打开的“服务”窗口右侧服务列表中找到名称为“Network Connections”的服务,看看其状态是否为“已启动”。假如不是,那么就需要将其设置为“已启动”。 6、任务栏按钮忽然消失了

windows程序设计

消息驱动运行中发生的各种事件(鼠标键盘输入,各种状态的改变等),以消息的形式通知Windows系统Windows系统接收消息,提交给发生事件的应用程序应用程序的窗口处理函数负责处理响应收到的消息处理完成后继续等待下一个消息API application programming Interface SDK software Development kit 事件是用户对计算机操作的动作或程序中某个对象的状态发生的变化,每个事件对应一个消息,即每个事件发生的效果是产生消息消息是描述事件发生的信息事件驱动程序执行的顺序不是事先规定的,而是由事件的发生来控制在程序执行过程中,当某个对象的状态发生变化,或有外部输入等情况发生,则产生相应的事件当事件产生时,系统会发出特定的消息编写程序时可以对这些消息做出反应,也可以不做出;若要做出反应(即响应消息),则把响应此消息的程序写在与此消息相关联的函数中在程序执行时,一旦产生了一个消息,会调用与此消息相关联的函数窗口是Windows应用程序基本的操作单位,是应用程序与用户之间交互的接口,也是系统管理应用程序的基本单位消息传输事件发生,产生消息消息保存到消息队列分配给应用程序消息队列消息循环提取消息窗口函数响应消息MFC Microsoft foundation class MFC应用程序框架提供了一般应用程序需要的全部面向对象软件组件的集成集合MFC程序结构基于框架窗口的应用程序(早期的MFC)程序运行管理、窗口及数据管理分开两部分,与SDK程序类似基于文档/视图的应用程序单文档应用程序(重点)程序运行管理、窗口管理、交互管理、数据管理分开基于对话框的应用程序程序运行管理、对话框管理分开目前的MFC应用程序都采用文档/视图结构,把原来窗口框架类的工作分开窗口框架类管理窗框视图类(即视窗类)管理数据显示、接收用户输入文档类负责数据管理文档视图架构的思想数据嵌入文档中,利用文档的架构管理文档与视图通信,使数据在视图中显示视图显示数据,并与用户交互视图放入窗口中文档模板类对象管理上述对象协调工作CDocument是负责管理数据的类应用程序中的文档类是这个类的派生类作用数据管理程序员应将用户的实际数据对象内嵌在自己的文档类中需要与自己的视图类通信在程序中实现CDocument的派生类,以便嵌入数据对象,并改写成员函数实现对数据的处理用于派生应用程序的视图类CView 作用处理与用户的交互显示文档类中的数据接收用户输入(例如鼠标操作)通常要改写视图类的成员函数OnDraw或OnPrint,实现数据显示框架自动调用OnDraw函数WM_PAINT消息OnPaint()OnDraw() 菜单及响应利用菜单编辑器修改IDR_MAINFRAME 菜单资源在相应的类中为新菜单项映射消息COMMAND单击或用快捷键选中时生产UPDATE_COMMAND_UI上一级菜单显示前生产用于控制菜单状态编写新菜单项的消息处理函数快捷键在菜单项标题后面加“(&字母)”菜单动态为要添加的菜单项定义一个宏(例如ID_MENU1)用CWnd::GetMenu( )获得指向菜单条的指针(如果在子菜单上添加,应用CMenu::GetSubMenu()获得该菜单的指针)为菜单项手工映射消息处理函数在适当的地方调用InsertMenu或AppendMenu添加菜单项调用CWnd::DrawMenuBar()函数重画菜单动态删除菜单项与上面类似(使用DeleteMenu函数)动态创建菜单项用函数BOOL CreateMenu( );获得新菜单句柄,再用此句柄当作AppendMenu函数的第2个参数(需进行(UTIN)强制类型转换)通常用于创建弹出式菜单的顶级(不需映射消息)快捷菜单建立菜单如果菜单已经存在,且功能齐全,只需确定弹出方式即可也可以另加一个菜单资源,此法可使菜单条中不显示快捷菜单关联类(对于新加菜单)把此菜单资源关联到视图类上选中此菜单资源的情况下打开类向导,选视图类影射消息并编写消息处理函数选择弹出方式可在视图类的WM_CONTEXTMENU消息(鼠标右键单击客户区时产生)处理函数中弹出Windows系统有一个存放消息的队列每个应用程序也有一个消息队列Windows系统先将收到的消息存放在系统队列中,然后再分发到相应的应用程序队列中应用程序则从自身的队列中获取消息并进行处理类的消息响应一个类要响应多种消息对于每一种消息最重要的是知道是哪个消息:消息的标识(ID 身份证)这个消息对应的响应函数是什么(函数的起始地址)解决的办法建立一个结构体数组(消息映射表)一行(一个数组元素)是一个消息的信息每行至少包含消息的标识(ID)指向响应函数的指针消息的响应当收到消息后,根据消息ID在表中查找,找到后调用对应的消息处理函数消息路由当一个类收到消息后,先在自己的消息映射表中搜索,搜索到就执行相应的消息处理函数,然后结束消息处理过程未搜到,则到上一层基类中搜索,依此类推如果都未搜到,则交给系统默认的窗口处理函数去处理消息种类窗口消息命令消息控件通知消息实现消息映射消息映射的要点为每个要响应的消息建立一个处理函数为每个能够响应消息的类建立一个结构类型的数组(消息映射表)并填写这个数组编写每个消息处

桌面图标丢失了怎么恢复

点击“开始→运行”,在弹出的“运行”对话框中输入“REGSVR32 /n /i:u shell32”(不含双引号,否则会很没面子),然后回车,片刻后会弹出“shell32中的DllInstall成功”对话框,“显示桌面”按钮即可恢复,这也是最简单的办法了。 显示桌面图标丢了怎么恢复 “快速启动”实际上就是一个目录,您可以找到它,然后在其中添加自己想要的快捷方式。比如:您的系统安装在C盘,并且您使用“name”作为用户名登录的。那么“快速启动”的目录应该在 C:\Documents and Settings\name\Application Data\microsoft\internet explorer\qui ck launch 如果“显示桌面”图标丢了,请新建一个文本文件,键入下面的内容,然后将其存为“显示桌面.scf”文件名就可以了。 [Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop 我的电脑由于安装了两个杀毒软件,导致了桌面的图标全部不见了,如何恢复? ★桌面-点击鼠标右键-点击排列图标-点击显示桌面图标 ★在桌面上右键点击→“属性”→桌面项→左下有个“自定义桌面”进入设置,把你需要的桌面项目打上勾,然后确定就行了。 ★先按ctrl+alt+del三键打开任务管理器,(如果打不开任务管理器,你最好重做系统)。在任务管理器中点“文件”--“新建任务”。在弹出的创建新任务选项卡中的运行中输入:Explorer.exe ,然后点确定。 或按CTRL+AIT+DEL,选任务管理器,点击文件——新建任务——浏览,选C:\windows下的explorer.exe运行。 ★在任务栏上点右键,属性,点工具栏,选中快速启动 如果不行,打开“记事本”程序,在其中输入如下内容: [Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop 然后把这个文件保存为:“Show Desktop.scf”,必须确认文件名和双引号中的一样。然后把保持的Show Desktop.scf文件复制到:“C:\Documents and Settings\用户名\Application Data\ Microsoft\Internet Explorer\Quick Launch”目录下。其中你需要把“用户名”替换成你需要恢复“显示桌面”按钮的用户名。 ▲要是还不行的话,可能是你系统文件被破坏,桌面启动项丢失,建议从新安装系统!

Windows程序设计复习资料(完整答案)

一、单项选择题: 1.WinMain()函数的工作。 WinMain()函数是Windows程序的入口点 在WinMain中进行:注册窗体类、建立窗体、显示窗体、更新窗体、建立消息循环2.非MFC的Windows程序中,不是处理WM_PAINT消息的时候怎样获得客户区的设备环境句柄。 BeginPaint ----------EndPaint GetDC---------------ReleaseDC(成对出现) 利用GetDC()函数获取设备环境句柄 3.句柄的含义。 句柄是一个(通常为32位的)无符号整数(unsigned int),它代表一个内核对象内核对象在应用层的表示 4.在MM_TEXT映射模式下,什么情况下客户坐标和逻辑坐标可能不同。 当窗口客户区有滚动条时客户坐标和逻辑坐标可能不同 5.Windows程序的控制流程。 Windows程序没有固定的控制流程,事件驱动程序控制流程 6.事件驱动、消息驱动的概念。 事件驱动程序设计是一种全新的程序设计方法,它不是由事件的顺序来控制,而是由事件的发生来控制,而这种事件的发生是随机的、不确定的,并没有预定的顺序,这样就允许程序的的用户用各种合理的顺序来安排程序的流程。 消息是事件到达Windows内部后的称呼 7.对话框、控件的作用。 对话框是程序与用户之间进行交互,接收用户输入、并把数据显示出来的一个窗口; 控件是用户可与之交互以输入或操作数据的对象。控件通常出现在对话框中或工具栏上。 8.MFC中怎样处理WM_PAINT消息。 在OnDraw()函数中处理该消息 9.GetMessage()函数在什么情况下返回0,从而导致消息循环终止,程序结束。 在接收到WM_QUIT消息时返回0 10.Windows中,应用程序的输出是怎样进行的。 通过设备描述表DC(Device Context)来进行应用程序与物理设备之间的交互11.MFC中,大多数类的基类都是什么。 CObject类 12.一个MFC应用程序必须有且只能有一个从哪个类派生的全局应用程序对象,此对象在运行时刻控制应用程序中所有其他对象的活动。 CWinApp类 13.每次当窗口客户区需要重新绘制时,应用程序框架怎么处理。 发送WM_PAINT消息,调用OnDraw()函数进行重绘 14.CDC类的作用。 CDC是设备描述表类的基类,除了一般的窗口显示外,还用于基于桌面的全屏幕绘制和非屏幕显示的打印机输出。 15.当程序中某个函数改变了数据而需要重新绘制客户区时,OnDraw()函数不会被自动调

Windows程序设计题

《Windows程序设计》模拟题 一.单项选择题 1. 在VC++中,项目文件的扩展名是(B)。 A)exe B)dsp C)dsw D)cpp 2. 在MFC中,利用ClassWizard不能(D)。 A)建立新类B)进行消息映射 C)增加类的成员变量D)插入资源 3. 当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送(C)消息。 A)WM_CHAR B)WM_HSCROLL C)WM_VSCROLL D)WM_CHANGE 4. 更新菜单状态的消息是( C )。 A)WM_COMMAND B)UPDATE C)UPDATE_COMMAND_UI D)INVALIDATE 5. 对于消息队列描述正确的是( D ) A)在Windows中只有一个消息系统,即系统消息队列。消息队列是一个系统定义的数据结构,用于临时存储消息。 B)系统可从消息队列将信息直接发给窗口。另外,每个正在Windows下运行的应用程序都有自己的消息队列。 C)系统消息队列中的每个消息最终都要被USER模块传送到应用程序的消息队列中去。 应用程序的消息对列中存储了程序的所有窗口的全部消息。 D)以上都正确 6. 在MFC中,所有的控件都是(B)类的派生类,都可以作为一个特殊的窗口来处理。 A)CView B)CWnd C)CWindow D)CDialog 7. 使用GetDC()获取的设备上下文在退出时,必须调用(A)释放设备上下文。 A)ReleaseDC() B)delete() C)DeleteDC() D)Detach() 8. 希望菜单无效,应该用CCmdUI类的(A)成员函数。 A)Enable B)SetRadio C)SetCheck D)SetText 9. 希望菜单前出现一个“√”,应该用CCmdUI类的(C)成员函数。 A)Enable B)SetRadio C)SetCheck D)SetText 10. 下面(A)不是MFC设备环境类CDC类的派生类。 A)GDI B)CPaintDC C)CClientDC D)CWindowDC 11. 在MFC中,所有的文档类都派生于(C),所有的视图类都派生于(A)。 A)CView B)CWindow C)CDocument D)CFormView 12. 采用C++进行绘图时,(B)用于指定图形的填充样式,(A)用于指定图形的边框样式。

win7显示桌面的快捷方式做法

首先讲下原理,代码和XP是一样,不同就是在Win7下不能直接拖入任务栏,不然达不到XP中的效果。我们随便找个程序的快捷方式,然后修改它的图标及链接位置,接下来只记锁定到任务栏就可以了。 1.随便找个程序的快捷方式,比如我找的是Media Player,在图标上右击 选择【属性】—【更改图标】,将【查找此文件中的图标】下的路径删除并回车,这时就可以显示所有图标了,然后选择显示桌面的图标,接着右击选择“锁定到任务栏”。

2.在桌面上新建记事本,把下面的代码复制进去,然后点【另存为】,保存 类型为:所有文件,文件名为:显示桌面.scf。然后将该文件放到一个你认为不碍眼的地方,比如我放到C盘根目录,路径为C:\显示桌面.scf。 [Shell] Command=2 IconFile=%SystemRoot%system32SHELL32.dll,34 [Taskbar] Command=ToggleDesktop 3.打开【计算机】—【组织】—【文件夹和搜索选项】—【查看】—【隐藏 文件和文件】选项,然后选择【显示隐藏的文件、文件夹和驱动器】,设置完后打开该路径C:\用户\你的用户名 \AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar。这时我们可以看到被我们改过的Media Player图标,这时我们在图标上右击选择【属性】,将【目标】改成C:\显示桌面.scf,

当然如果你放在了别的地方,就换成你的路径。 4.4、OK!Win7中也有了XP中的“显示桌面”图标了,是不是更方便点了 呢。

电脑桌面图标显示不正常怎么办-快速恢复不正常图标的方法

电脑桌面图标显示不正常怎么办?快速恢复不正常图 标的方法 篇一:桌面图标显示不正常怎么办? 有的时候图标显示不正常就是由于图标缓存文件损坏了,我们要做的就是新建一下图标缓存文件。 篇二:5种电脑桌面图标异常及错误的解决办法,其他办法不能解决问题的,请看这种方法。 5种电脑桌面图标异常及错误的解决办法。 秋水帮朋友修电脑时,遇到过这种桌面图标异常的情况,经过种种折腾,终于搞清楚了原因,并且找到了解决的办法,下面秋水会写清楚遇到的情况,和解决办法。 根据遇到的种种不同情况,秋水收集了5种电脑桌面图片异常或者错误的例子,如下图: 第一种:图标名称有阴影,蓝色的阴影。 第二种:图标显示不完整,或者一个完整的图标显示为错位,从中间分开,两边各一半、异常图标错位,分裂,被未知文件覆盖,只显示文字不显示图标,图标是黑色块不显示,图标间距变大,图标不清晰等第三种:系统图标能正常显示,软件和文件图标也能正常显示,但是电脑桌面图标颜色不对!变成了非常刺眼的颜色。 第四种:除了文件夹图标,及个别图标外,无论系统还是软件都不能

正常显示,识别为未知文件图标。第五种:我的文档、我的电脑图标变成了不可识别的文件类型,显示为白色未知图标。 解决办法: 针对第一种情况,请按照如下操作: 第一种解决办法: 1、在我的电脑右击——选择属性——高级——性能——视觉效果处选设置---选择自定义,在下拉列表处把在桌面上图标标签使用阴影选项打勾去掉,一路确定!! 2、在桌面空白处点击右键选择属性——桌面——自定义桌面——web标签下,所有项都不选择,确定。 3、在桌面上单击鼠标右键选择属性——桌面——自定义桌面——web标签下——选中正在使用的ActiveDesktop活动桌面——删除——确定,一路确定!! 4、如果上边设置完后仍然不管用,可以在上述web窗口中,取消下面的“锁定桌面项目”前面的复选框,确定保存即可。 5、如果不希望以后出现这样的情况可以运行gpedit.msc打开组策略,依次展开,用户配置--管理模板--桌面ActiveDesktop--禁用ActiveDesktop修改为已启用就可以了。 第二种解决办法,需要修改注册表比较麻烦,这里直接提供下载,下载后双击打开运行即可:1、 引用

xp系统电脑开机后不显示桌面图标

xp系统电脑开机后不显示桌面图标 xp系统电脑开机后不显示桌面图标这个情况并不少见,那么该怎么去解决这个问题呢?下面就由小编来为你们简单的介绍一下吧! xp系统电脑开机后不显示桌面图标的解决方法 分析及解决: 当电脑重启动后没有正常显示桌面,只有桌面的背景图片,如何解决呢?分两种情况: 一、没有显示桌面图标,但有任务栏有开始,只有背景但鼠标右键等使用正常,这可能是你不小心把桌面图标设置成不显示了,这时可以通过在桌面空白处单击鼠标右键,点击右键菜单“排列图标”下的“显示桌面图标”即可。 二、只显示桌面背景图片,开始任务栏都没有显示,面且鼠

标点击及右键都没的反应,像是死机状态,重新启动依然是这样,这极有可能是显示图形界面桌面的explorer.exe进程没有正常启动,种病毒或其它原因造成explorer.exe被破坏,可以用以下方法尝试: 方法/步骤 按下“Ctrl+Alt+Del”组合键打开任务管理器(如果按这三个健也不管用,直接重装系统吧,呵),点击进程选项卡,看看里面是不是有explorer.exe进程,如果有把它关闭,然后点击“文件”→“新建任务”,在打开的“创建新任务”对话框中输入“explorer”,单击“确定”按钮后,稍等一下就可以见到桌面图标了。 如果上述的创建新任务,确定或回车时提示说找不到explorer.exe文件,说明该文件被删除了,你可以用U盘到其它电脑的C:\WINDOWS文件夹中复制explorer.exe文件到你的电脑上的C:\WINDOWS文件夹中。 注:因为explorer.exe进程没有启动,不能用常规方法进行复制。复制方法:先到其它的电脑上将explorer.exe复制到U盘上,然后将U盘插到你的电脑上,按“Ctrl+Alt+Del”组合键打开“任务管理器”,点击“文件”→“新建任务”,在打开的“创建

Windows编程基础-期末考试试卷头期末-A卷答案

北华航天工业学院2013—2014学年第二学期 Windows编程基础课程考试卷(A、B) 考核形式:开卷闭卷班级:姓名:学号: 一、填空题(每空1分,共10分) 1. 用户可以通过项目工作区窗口的ResourceView 视图来查看资源。 2. 一个单文档的MFC 应用程序框架一般包括5个类:应用程序类、框架窗口类、 视图类、文档类和文档模板类。 3. 改变菜单项文本是使用CCmdUI 类的SetText 成员函数。 4. 滚动条类CScrollBar的成员函数规定了滚动条的操作。设置滚动条的范围使用SetRange 函数,设置滚动块的位置使用SetScrollPos 函数,获取滚动块的当前位置使用GetScrollPos 函数。 5. 对话框默认标识符前缀是IDD 。 二、选择题(每空2分,共40分) 1.MFC类库中的类按层次关系可知,CStatic的直接父类为(B )。 A、CObject B、CWnd C、CCmdTarget D、CFrameWnd 2. 以下控件中,( C )没有Caption属性。 A、按钮 B、群组框 C、编辑控件 D、静态控件 3. 列表框ClistBox类的成员函数( A )用来向列表框增加列表项,成员函数( C )用来清除列表项所有项目,成员函数( F )用来返回列表框的列表项的总数。 A、AddString B、DeleteString C、ResetContent D、FindString E、GetCurSel F、GetCount 4. 假定AB为一个类,则执行“”AB a(4),b(3),*p[2];”语句时,自动调用该类构造函数的次数为( A )。 A、2 B、3 C、4 D、5 5.在类外定义类的成员函数时,应当使用( B )来标识该函数为特定类的成员。A、:B、::C、-> D、this

Windows程序设计(第五版)源代码A(chap08)

chap08-Beeper1 /*----------------------------------------- BEEPER1.C -- Timer Demo Program No. 1 (c) Charles Petzold, 1998 -----------------------------------------*/ #include #define ID_TIMER 1 LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { static TCHAR szAppName[] = TEXT ("Beeper1") ; HWND hwnd ; MSG msg ; WNDCLASS wndclass ; wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.lpfnWndProc = WndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hInstance = hInstance ; wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ; wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ; wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ; wndclass.lpszMenuName = NULL ; wndclass.lpszClassName = szAppName ; if (!RegisterClass (&wndclass)) { MessageBox (NULL, TEXT ("Program requires Windows NT!"), szAppName, MB_ICONERROR) ; return 0 ; } hwnd = CreateWindow (szAppName, TEXT ("Beeper1 Timer Demo"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL) ;

把任务栏上的显示桌面图标给删除了,怎样才能恢复啊

把任务栏上的显示桌面图标给删除了,怎样才能恢复啊? 1要恢复“快速启动”栏中的“显示桌面”按钮需要采用如下所述的方法。 打开“记事本”程序,在其中输入如下内容: [Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop 然后把这个文件保存为:“显示桌面.scf”,必须确认文件名和双引号中的一样。再将这个文件复制到C:\Windows\System\中,再将它的快捷方式发送到桌面,再把这个快捷方式拖进快速启动栏,就成功了。最后把桌面的快捷方式删掉。 2.点“开始”-->“运行”-->输入" regsvr32 /n /i:u shell32 " 就可以了 3.在运行里面.输入REGSVR32 /n /i:u shell32 按回车. 就行了'; 4在Windows操作系统中,任务栏的显示桌面图标目标文件是 “C:\Windows\Application Data\Microsoft\Internet Explorer\Quick Launch\显示桌面.scf”,所以如果需要恢复该图标,只需要在原处重新建立一个“显示桌面.scf”文件即可。

可以使用记事本等文本编辑器,重新用以下内容建立一个显示桌面.scf 文件。 [Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop 工具栏中“显示桌面”图标的实际位置是:“C:\Windows\System\显示桌面.scf”,只需要按此路径找到它,复制到文件夹“C:\Windows\Application Data\Microsoft\Internet Explorer\Quick Launch”中或创建快捷方式直接拖拽至任务栏中即可。 5别着急很容易弄的,桌面空白处点鼠标右键,点排列图标,显示桌面图标就可以了。试试看吧,我就是这样弄的

相关文档
最新文档