基于CAB技术的CAD开发实现(一)
本帖最后由 efan2000 于 2011-3-23 11:24 编辑CAB(Composite UI Application Block 组合界面程序块),使用了目前商业客户端应用程序常用的设计模式来构建了一个灵活的基础框架。基于这个框架可以很容易的帮助你编写运行在Microsoft .Net平台上的具有复杂用户交互界面的Windows Form 应用程序。
优点:
1:允许构建由各个具有协作关系的独立模块组合成的复杂应用。
2:分离关注点,能将各个模块的开发的关注点和Shell的开发分离开来。
3:提供了一个能支持高质量的桌面应用开发的框架
4:提高了生产力和节约了开发时间,进一步巩固了架构师和开发人员的劳动成果。 创建CAB项目的步骤:1:新建项目。2:在工程Shell中,将应用程序类型更改为类库。添加CAD的引用,AcDbMgd.dll和AcMgd.dll,更改它们的属性复制本地为False。3:在文件ShellApplication中,导入Autodesk.AutoCAD.Runtime,设定该类为命令类,<Assembly: CommandClass(GetType(ShellApplication))>。将过程Main变更为Cab,同时指定它为CAD命令。<CommandMethod("Cab")> _
Public Sub Cab()
#If DEBUG Then
RunInDebugMode()
#Else
RunInReleaseMode()
#End If
End Sub4:注释掉工程Library中的文件DependentModuleLoaderService中的GetModulePath函数中的语句assemblyFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, assemblyFile),修改文件ModuleMetadataReflectionHelper中的LoadFile为LoadFrom,共两处,此为BUG。5:修改工程Shell中的文件ProfileCatalog.xml,将AssemblyFile后的引号内内容添加前缀SmartClientDevelopmentSolution1.,共两处,此为BUG。6:运行CAD,使用NetLoad命令加载SmartClientDevelopmentSolution1.Infrastructure.Shell.dll文件,输入命令Cab,即可看到结果。
http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 该贴已经同步到 efan2000的微博 很感谢分享,多谢了,学习一下 这个CAB项目需要安装什么模版吗?还有就是能不能详细介绍一下CAB?
页:
[1]