win32编写记事本要点

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华北科技学院

课程设计说明书

专业:网络工程

课程名称: 汇编课程设计班级:

姓名: 学号:

设计题目: win32编写记事本

设计时间: 2011-12-05 至2011-12-16 评语: ________________________________ _________________________________________ _________________________________________ _________________________________________ _________________________________________ _________________________________________ 评阅成绩:____评阅教师:_____

课程设计报告的要求

1、需求分析:描述问题,简述课题要解决的问题是什么,有什么要求和限制条件。

2、总体设计(程序设计组成框图、流程图)

3、详细设计(模块功能说明(如函数功能、入口及出口参数说明,过程调用关系描述等))

4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施

5、测试结果,用几组测试数据进行测试算法设计的正确性。

6、附录。源程序清单和结果:源程序要加注释。结果要包括测试数据和运行结果。

《汇编语言》课程设计案例

一、问题陈述及其需求分析

要求:在windows系统下利用32位汇编编写一个简单但功能能实现的记事本。

内容:在利用32位汇编编写记事本的时候,考虑到很多问题:

(1)首先最重要的是汇编软件的选择,刚开始用asm2011软件编写,最终不行,最后参考资料,如坚持用它的话,必须用代码编写资源代码才能使用;因此为了方便,区别于dos系统下的汇编,我采用了Radasm汇编软件。

(2)其次是记事本的编辑,由于记事本我们大家都常见,曾经也用过高级语言编写过,例如java,因此对其格式很了解,但是还有一个问题就是,我们将如何用汇编这种语言来编写记事本呢,例如如何编写记事本基本框架,编写菜单栏,建立菜单项,添加文本编辑区及建立文本编辑区。(3)最后当然最重要的还是记事本具体的架构和主要功能的实现,例如记事本中的简单功能,复制,剪切,粘贴之类的;同时还要写出检测功能,以达到对其文本区得以正常编辑及功能的正常使用。

(4)最后还有一点,就是自己的体会和感想,首次接触32位汇编语言设计,这让自己对其知识模块有了一定的了解,通过参考资料,以及网上有关知识,让自己的程序编程有了一定了的提高。

Win32编写记事本基本功能如下:

记事本包括很多东西,其中最重要的是菜单,它包括:文件,编辑,格式,查看,帮助。

文件菜单中提供以下功能:

1、新建 (&N)\tCtrl+N

2、打开(&O)\tCtrl+O

3、保存(&S)\tCtrl+S

4、另存为(&A)\tCtrl+Alt+S

5、退出

编辑菜单中提供以下功能: 1、撤销 (&U)\tCtrl+Z

2、复制(&C)\tCtrl+C

3、剪切(&T)\tCtrl+X

4、粘贴(&V)\tCtrl+V

5、全选(&A)\tCtrl+A

6、查找(&F)\tCtrl+F

7、替换(&H)\tCtrl+H 格式菜单中提供以下功能: 1、字体 2、背景颜色

查看菜单中提供以下功能: 1、工具栏 2、状态栏

帮助菜单中提供以下功能: 1、关于记事本 2、帮助

二、总体设计

1、思路流程图:

结束

用控件建立菜单和文本区的响应关系

在窗口中添加文本编辑区

构造菜单栏

构建记事本窗口

开始

2、窗口建立流程图:

3、记事本的总体结构流程图:

消息循环

刷新窗口客户区

显示窗口

建立窗口 注册窗口类 得到应用程序的句柄

菜单资源

结束

文本编辑区相应变化

菜单和文本编辑区一一对应响应 运行窗口过程 _ProcWinMain

添加richEdit 控件(文本编辑区)

构建窗口

开始

对应反馈相

应的操作

4、其他比较重要的功能流程图: (1)、新建流程图: (2)、另存为流程图:

三、详细设计

1、模块简介 1.程序头文件 名称:记事本.inc

说明:程序头文件主要包含了文件的定义,ID 等值定义,变量定义以及记事本基本功能提示定义。 2.菜单资源文件 名称:记事本.rc

开始

调用_CheckModify 子程序

文本区内容是否有变化

Y

调用_SaveFile 子程序,保存文件

N

调用CloseHandle 关闭文件及相应文件进程

调用_SetCaption 来

设置新建文件的标题调用_SetStatus 来设置 菜单项的可用状态

结束

开始

初始化另存为对话框

显示另存为对话框

创建新文件

新文件创建成功 ?Y

调用_SaveFile 子程序,保存文件

N

输出错误信息

结束

说明:菜单资源文件主要定义了记事本的菜单和菜单项、菜单和菜单项的关系、菜单加速键命令及菜单项的地址。

3. 窗口模块

名称:_WinMain

说明:该模块是搭建整体框架,贯穿整体的主要部分,更是核心部分,它关系着窗口的显示,菜单和文本编辑区的加载,窗口过程的调用等。

4.窗口过程

名称:_ProcWinMain

说明:是该程序的核心部分,也是窗口的重要组成部分,其中设定了窗口的一些窗口命令,而且还在窗口命令中建立了菜单和文本编辑区richEdit组件的联系。

5.文件的读写

名称:_ProcStream

说明:该模块主要是实现richEdit组件中文本的读写操作。

6.检查文本有无改变

名称:_CheckModify

说明:检查richEdit组件中的文本内容是否有变化,从而确定是否进行离开、新建操作。

7.打开文件

名称:_OpenFile

说明:通过调用系统打开对话框来选择已存在的要打开的文件。打开过程使用_ProcStream 子程序(已完成文件的读写过程)。

8.保存文件

名称:_SaveFile

说明:通过向窗口发送输出流操作的消息,同时调用_ProcStream进行写操作,以达到保存文件的目的。

9.另存为

名称:_SaveAs

说明:首先通过调用保存文件对话框来确定要保存文件的名称和位置,然后调用_SaveFile 来保存文件。

10.退出

名称:_Quit

说明:通过调用_CheckModify来检查richEdit组件中的文本内容是否有变化,从而确定是保存后退出还是直接退出。

相关文档
最新文档