资源描述:
《软件组件技术实验1》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、4软件组件技术实验指导书实验1组件的使用实验目的:1.进一步熟练掌握软件开发技术。2.掌握COM组件的注册、查看和使用等过程。3.了解熟悉注册表软件组件使用过程中的作用实验环境:Windows系统平台和C++Builder开发环境。实验学时:2学时实验内容:给出一个软件组件,要求根据此说明,进行组件的注册、反注册、查看注册表、查看组件和类型库,并编写程序调用操控组件。要求记录操作的步骤和遇到的问题及解决方法,能够熟练使用组件。并掌握BorlandC++Builder环境下组件的注册、反注册,查看组件和类型
2、库的方法,并用C++Builder编写客户程序调用实现对所给组件的调用。实验步骤:1.实验前首先下载所给组件并保存。位置可以自己选择,并可尝试给组件取不同名字。2.注册组件方法1:a、确定待注册文件的位置b、启动windows开始菜单上的”运行”,输入”regsvr32.exe”或者“C:WINDOWSsystem32regsvr32.exe”c、输入待注册的组件的路径和文件名并运行方法2:a、确定待注册文件的位置b、启动windows开始菜单上的”所有程序
3、附件
4、命令提示符”,输入”regsvr3
5、2.exe”或者“C:WINDOWSsystem32regsvr32.exe”c、输入待注册的组件的路径和文件名并运行例如:4软件组件技术实验指导书C:WINDOWSsystem32regsvr32.exe"C:DocumentsandSettingsAdministrator桌面第二章newtestcomserver2MyCOMServer2.dll"1.查看注册表步骤:a、启动windows开始菜单上的”运行”,或者按开始键+”R”,输入”regedit”,然后按确定b、然后在
6、启动的程序中确定查找组件的范围,如选中根节点c、打开“编辑”菜单下查找,在对话框中输入要找的组件名并确定d、查看组件的如下信息CLSID、ProgID和类型库等信息,示例如下:2.组件反注册:a、确定待注册文件的位置b、启动windows开始菜单上的”运行”,输入”regsvr32.exe”或者“C:WINDOWSsystem32regsvr32.exeu”c、输入待卸载的组件的路径和文件名并运行示例:C:WINDOWSsystem32regsvr32.exe/u"C:Documentsa
7、ndSettingsAdministrator桌面第二章newtestcomserver2MyCOMServer2.dll"d、再次进入注册表查看相关信息。3.查看类型库a、启动C++Builder,选择“文件
8、打开”或者直接按“打开”按钮或者是相应的快捷键b、选择需要打开的组件文件(以dll为后缀),弹出如下对话框c、查看属性不同属性页的内容,如“Text”等d、熟悉不同按钮的作用4.导入类型库a、在C++Builder下,创建新的工程,并选择“工程
9、引入类型库”,系统弹出如下页所示对话框4软
10、件组件技术实验指导书b、移动滚动条查看下面文本框的内容及其变化c、加入新的组件,单击”添加”按钮,在弹出的对话框中选择打开要添加的组件文件d、分别单击”Install”按钮和”CreateUnit”,查看生成文件的变化,以区分它们的功能。1.组件操作a、在C++Builder下,创建新的工程,选择“文件
11、新建”,在弹出的对话框中new属性页下选择”Application”,单击”确定”按钮b、创建新的窗体,选择“文件
12、新建”,在弹出的对话框中new属性页下选择”Form”,单击”确定”按钮c、在Form上
13、添加按钮,选中窗体后,双击或拖动Standard面板上的“按钮”图标按钮图标d、双击按钮复制如下代码到函数内,并进行相应的更改,结果与一下类似://---------------------------------------------------------------------------#include#pragmahdrstop#include"Unit1.h"#include"beepPro_OCX.h"//-----------------------------------
14、----------------------------------------#pragmapackage(smart_init)#pragmaresource"*.dfm"TForm1*Form1;constIIDIID_IBeepObj={0xDB6A2409,0x1F5D,0x45A2,{0xB4,0x9E,0xCA,0x92,0xE4,0xD0,0x59,0x71}};constCLSIDCLSID_BeepObj=