本书凝聚了作者十余年的项目开发与教学经验,是用来打开Visual C++.NET强大功能的金钥匙。本书前几章讲述了.NET Framework的基础概念、Visual Studio.NET编程环境和Visual C++.NET的一些基础知识;后面部分对一些专业项目进行了详细的剖析,这些项目涉及到的内容包括:使用VC++.NET进行数据库编程、使用Managed C++创建应用程序、在Managed C++应用程序中实现ADO.NET、创建托管扩展类库并用于ASP.NET应用程序、使用ATL创建COM组件、创建ATL Server应用程序、创建Web服务、Managed C++.NET程序集和COM与.NET的互操作性、在VC++.NET中使用XML、VC++.NET中的联网与远程化等。\r\n 本书适合于对C++有一定了解的读者,尤其适合于正在用Visual C++.NET做项目的开发人员。
译者序\r\nNIIT简介\r\n作者简介\r\n前言\r\n\r\n第一部分 VC++.NET介绍\r\n\r\n第1章 .NET Framework基础\r\n\r\n1.1 .NET Framework\r\n1.1.1 公共语言运行环境\r\n1.1.2 类库\r\n1.1.3 程序集\r\n1.1.4 调试器\r\n1.1.5 代码访问安全性\r\n1.2 Visual Studio.NET介绍\r\n1.2.1 Visual Studio.NET IDE\r\n1.2.2 Visual C#.NET\r\n1.2.3 Visual Basic.NET\r\n1.2.4 Visual C++.NET\r\n1.2.5 Windows窗体\r\n1.2.6 Web表单\r\n1.2.7 Web服务\r\n1.3 VC++.NET的新特征和增强功能\r\n1.4 小结\r\n\r\n第2章 VG++.NET编程基础\r\n\r\n2.1 MFC编程概述\r\n2.2 MFC编程基础\r\n2.2.1 事件处理\r\n2.2.2 设备无关性\r\n2.3 小结\r\n\r\n第3章 创建用户界面\r\n\r\n3.1 MFC Application Wizard介绍\r\n3.1.1 启动MFC Application Wizard\r\n3.1.2 创建一个应用程序框架\r\n3.1.3 执行应用程序\r\n3.2 定制一个应用程序框架\r\n3.2.1 为窗体控件创建变量\r\n3.2.2 在控件与变量之间传递数据\r\n3.3 处理按钮事件\r\n3.4 小结\r\n\r\n第4章 使用菜单、对话框和窗口控件\r\n\r\n4.1 创建菜单\r\n4.1.1 创建菜单资源\r\n4.1.2 为显示菜单编写代码\r\n4.1.3 处理菜单\r\n4.2 使用对话框和控件\r\n4.2.1 创建模式对话框\r\n4.2.2 创建无模式对话框\r\n4.3 小结\r\n\r\n第5章 文档/视图结构\r\n\r\n5.1 走近文档/视图结构\r\n5.1.1 文档/视图结构的组成\r\n5.1.2 文档/视图类的功能\r\n5.2 创建一个MDI应用程序\r\n5.2.1 一个MDI应用程序的例子\r\n5.2.2 改进这个应用程序\r\n5.2.3 回顾基于文档/视图的应用程序的控制流程\r\n5.3 小结\r\n\r\n第6章 线程\r\n\r\n6.1 线程基础\r\n6.1.1 单线程应用程序\r\n6.1.2 多线程应用程序\r\n6.2 进一步讨论线程\r\n6.2.1 用于工作者线程的AfxBeginThread函数\r\n6.2.2 用于用户界面线程的AfxBeginThread函数\r\n6.2.3 创建一个单线程应用程序\r\n6.2.4 创建一个多线程应用程序\r\n6.2.5 终止线程\r\n6.3 线程同步\r\n6.3.1 CSyncObject\r\n6.3.2 CMutex\r\n6.3.3 CCriticalSection\r\n6.3.4 CSemaphore\r\n6.3.5 CEvent\r\n6.3.6 CMultiLock\r\n6.3.7 CSingleLock\r\n6.4 小结\r\n\r\n第二部分 专业项目1\r\n\r\n项目1 使用VC++.NET进行数据库编程\r\n项目1 概述\r\n第7章 使用ODBC管理数据库概述\r\n\r\n7.1 数据库访问机制\r\n7.1.1 ODBC\r\n7.1.2 DAO\r\n7.1.3 选择一种数据访问技术\r\n7.2 MFC ODBC类\r\n7.2.1 CDatabase类\r\n7.2.2 CRecordset类\r\n7.2.3 CRecordView类\r\n7.3 小结\r\n\r\n第8章 实现数据访问的技术\r\n\r\n8.1 SaveMyMoney银行案例分析\r\n8.2 SaveMyMoney银行解决方案\r\n8.3 项目生命周期\r\n8.3.1 需求分析\r\n8.3.2 高层设计\r\n8.3.3 低层设计\r\n8.3.4 构造\r\n8.3.5 集成和测试\r\n8.3.6 用户验收测试\r\n8.4 银行业务应用程序\r\n8.4.1 创建Banking数据库\r\n8.4.2 配置一个ODBC数据源\r\n8.4.3 创建SaveMyMoney应用程序\r\n8.4.4 编写应用程序代码\r\n8.5 小结\r\n\r\n第9章 VC++.NET中的程序调试和异常处理\r\n\r\n9.1 MFC应用程序的异常处理\r\n9.2 调试VC++.NET应用程序\r\n9.2.1 调试基础\r\n9.2.2 建立配置\r\n9.2.3 Task List\r\n9.2.4 断点窗口\r\n9.2.5 自动窗口\r\n9.2.6 局部窗口\r\n9.2.7 查看窗口\r\n9.2.8 快速查看对话框\r\n9.2.9 其他调试窗口\r\n9.3 小结\r\n\r\n第三部分 专业项目2\r\n\r\n项目2 使用Managed C++应用程序创建应用程序\r\n项目2 概述\r\n第10章 托管扩展的介绍\r\n\r\n10.1 .NET中的C++语言\r\n10.2 使用C++托管扩展编程\r\n10.2.1 类\r\n10.2.2 接口\r\n10.2.3 属性\r\n10.2.4 异常\r\n10.2.5 装箱\r\n10.3 创建一个GUI应用程序\r\n10.4 小结\r\n\r\n第11章 介绍GDI+、事件和委托\r\n\r\n11.1 GDI+介绍\r\n11.1.1 GDI+提供的服务\r\n11.1.2 GDI+的新功能\r\n11.2 编程模式变化\r\n11.2.1 在GDI+中重载方法\r\n11.2.2 用于画图和填充的不同方法\r\n11.2.3 创建区域\r\n11.3 GDI+中重要的类和名字空间\r\n11.3.1 System.Drawing名字空间\r\n11.3.2 Graphics类\r\n11.3.3 Brush类\r\n11.3.4 Pen类\r\n11.4 事件和委托\r\n11.4.1 事件介绍\r\n11.4.2 委托介绍\r\n11.4.3 托管代码中的事件处理\r\n11.4.4 统一事件模型\r\n11.5 小结\r\n\r\n第12章 创建一个托管扩展应用程序\r\n\r\n12.1 项目案例分析\r\n12.1.1 需求分析阶段\r\n12.1.2 设计阶段\r\n12.1.3 编码和构造阶段\r\n12.1.4 测试阶段\r\n12.1.5 执行阶段\r\n12.2 编写应用程序代码\r\n12.2.1 创建应用程序\r\n12.2.2 创建用户界面窗体\r\n12.2.3 创建应用程序菜单\r\n12.2.4 创建应用程序工具栏和状态栏\r\n12.2.5 应用程序的事件处理\r\n12.2.6 委托\r\n12.3 Easy Tool应用程序的完整代码列表\r\n12.4 小结\r\n\r\n第四部分 专业项目3\r\n\r\n项目3 Managed C++中的ADO.NET\r\n项目3 概述\r\n第13章 ADO.NET介绍\r\n\r\n13.1 数据访问技术概述\r\n13.2 ADO.NET介绍\r\n13.2.1 ADO.NET的功能\r\n13.2.2 ADO.NET的优点\r\n13.3 ADO.NET的体系结构\r\n13.4 ADO.NET和XML\r\n13.5 小结\r\n\r\n第14章 在Managed C++应用程序中实现ADO.NET\r\n\r\n14.1 项目概述\r\n14.2 数据库规划\r\n14.2.1 创建数据库\r\n14.2.2 创建Account_Detail表\r\n14.2.3 创建BankLogin表\r\n14.3 创建银行业务应用程序\r\n14.3.1 在托管扩展中创建项目\r\n14.3.2 创建登录窗体\r\n14.3.3 创建Account Details窗体\r\n14.4 小结\r\n\r\n第五部分 专业项目4\r\n\r\n项目4 创建托管扩展类库并用于ASP.NET应用程序\r\n项目4 概述\r\n第15章 ASP.NET介绍\r\n\r\n15.1 ASP.NET的演变\r\n15.2 创建ASP应用程序的需求\r\n15.2.1 ASP.NET体系结构\r\n15.2.2 Web表单基础\r\n15.2.3 Web表单的组成\r\n15.3 创建Web表单\r\n15.3.1 IIS应用程序根目录\r\n15.3.2 ASP.NET Web表单服务器控件\r\n15.3.3 HTML服务器控件与Web控件的比较\r\n15.3.4 向表单添加服务器控件\r\n15.3.5 设置Web控件的属性\r\n15.3.6 处理Web控件的事件\r\n15.4 验证控件\r\n15.4.1 使用验证控件\r\n15.4.2 使用多个验证控件\r\n15.5 小结\r\n\r\n第16章 创建类库并用于ASP.NET应用程序\r\n\r\n16.1 税款计算器应用程序\r\n16.1.1 项目生命周期\r\n16.1.2 创建Managed C++类库\r\n16.1.3 创建ASP.NET应用程序\r\n16.2 小结\r\n\r\n第六部分 专业项目5\r\n\r\n项目5 使用ATL创建COM组件\r\n项目5 概述\r\n第17章 COM介绍\r\n\r\n17.1 COM的演变\r\n17.1.1 什么是COM\r\n17.1.2 COM要解决的问题\r\n17.2 COM组件\r\n17.2.1 COM组件的类型\r\n17.2.2 COM库\r\n17.2.3 接口\r\n17.2.4 COM中注册表的作用\r\n17.2.5 COM对象的实例代\r\n17.3 COM中的线程\r\n17.4 COM+\r\n17.4.1 内存数据库\r\n17.4.2 负载平衡\r\n17.4.3 基于角色的安全\r\n17.4.4 新线程模型\r\n17.4.5 对象缓冲池\r\n17.4.6 队列组件\r\n17.4.7 COM+事件\r\n17.4.8 自动化事务\r\n17.5 小结\r\n\r\n第18章 基于属性的编程介绍\r\n\r\n18.1 属性和反射的介绍\r\n18.1.1 属性类别\r\n18.1.2 自定义属性\r\n18.1.3 反射\r\n18.2 小结\r\n\r\n第19章 使用ATL实现COM\r\n\r\n19.1 Art-Shop——一个在线美术馆\r\n19.2 项目生命周期\r\n19.2.1 设计站点\r\n19.2.2 Checkout页面\r\n19.3 创建信用卡验证组件\r\n19.3.1 理解Luhn算法\r\n19.3.2 使用ATL Project Wizard创建基础COM组件\r\n19.3.3 创建CoClass并添加功能\r\n19.3.4 测试组件\r\n19.4 小结\r\n\r\n第七部分 专业项目6\r\n\r\n项目6 创建ATL Server应用程序\r\n项目6 概述\r\n第20章 ATL Server介绍\r\n\r\n20.1 什么是ATL Server\r\n20.1.1 请求处理程序\r\n20.1.2 其他功能\r\n20.2 小结\r\n\r\n第21章 创建一个客户簿应用程序\r\n\r\n21.1 案例分析\r\n21.2 创建基于HTML表单的界面\r\n21.3 创建ATL Server应用程序\r\n21.3.1 理解客户簿项目\r\n21.3.2 修改SRF\r\n21.3.3 表单处理\r\n21.3.4 添加方法到默认处理程序\r\n21.4 创建空XML文件\r\n21.5 小结\r\n\r\n第八部分 专业项目7\r\n\r\n项目7 创建Web服务\r\n项目7 概述\r\n第22章 Web服务和相关技术介绍\r\n\r\n22.1 什么是Web服务\r\n22.2 Web服务结构\r\n22.3 相关技术\r\n22.3.1 Web服务和XML\r\n22.3.2 Web服务和SOAP\r\n22.3.3 Web服务描述语言\r\n22.3.4 统一描述、发现和集成(UDDI)\r\n22.4 .NET和Web服务安全\r\n22.4.1 在Internet上确保Web服务的安全\r\n22.4.2 在Intranet上确保Web服务的安全\r\n22.5 小结\r\n\r\n第23章 使用托管扩展创建Web服务\r\n\r\n23.1 Art-Shop的合作方案\r\n23.1.1 项目生命周期\r\n23.1.2 ArtShop数据库中的Product表\r\n23.1.3 创建基础Managed C++Web服务\r\n23.1.4 修改Web服务\r\n23.1.5 用SQL Server.NET Data Provider访问数据\r\n23.1.6 测试Web服务\r\n23.1.7 用Managed C++建立Web服务使用程序\r\n23.2 小结\r\n\r\n第24章 用ATL Server创建Web服务\r\n\r\n24.1 汇率Web服务\r\n24.2 项目生命周期\r\n24.2.1 需求分析\r\n24.2.2 设计\r\n24.2.3 构造\r\n24.2.4 测试\r\n24.3 创建Web服务\r\n24.3.1 创建数据库、表和存储过程\r\n24.3.2 创建ATL Server Web服务\r\n24.4 测试应用程序\r\n24.5 小结\r\n\r\n第九部分 专业项目8\r\n\r\n项目8 Managed C++.NET程序集和COM与.NET的互操作性\r\n项目8 概述\r\n第25章 .NET中的程序集、清单以及与COM的互操作性概述\r\n\r\n25.1 程序集\r\n25.1.1 程序集的类型\r\n25.1.2 全局程序集高速缓存\r\n25.1.3 程序集的优点\r\n25.1.4 程序集版本化\r\n25.1.5 程序集的内容\r\n25.1.6 创建程序集\r\n25.1.7 程序集名称\r\n25.1.8 公钥和私钥\r\n25.1.9 程序集位置\r\n25.1.10 将私有程序集转换成共享程序集\r\n25.2 创建.NET组件\r\n25.3 COM互操作性\r\n25.4 COM可调用的包装器\r\n25.5 运行时可调用的包装器\r\n25.5.1 从.NET中调用COM对象\r\n25.5.2 从COM中调用.NET对象\r\n25.6 小结\r\n\r\n第26章 实现COM和.NET的互操作性\r\n\r\n26.1 Art-Shop——创建一个登录组件\r\n26.2 项目生命周期\r\n26.3 在ArtShop数据库中创建Customer表\r\n26.4 创建登录程序集\r\n26.4.1 用SQL Server.NET Data Provider访问数据\r\n26.4.2 实现方法\r\n26.5 测试组件\r\n26.6 小结\r\n\r\n第27章 在.NET程序集中使用COM+服务\r\n\r\n27.1 Art-Shop Kiosks——下订单\r\n27.2 .NET和COM+服务\r\n27.2.1 使用事务\r\n27.2.2 创建数据库表\r\n27.2.3 创建ProcessOrder程序集\r\n27.2.4 用COM+服务注册ProcessOrder组件\r\n27.2.5 测试组件\r\n27.3 小结\r\n\r\n第十部分 专业项目9\r\n\r\n项目9 在VC++.NET中使用XML\r\n项目9 概述\r\n第28章 在VC++.NET中使用XML\r\n\r\n28.1 New-Tech公司——方案\r\n28.2 项目生命周期\r\n28.2.1 需求分析和设计\r\n28.2.2 应用程序的设计\r\n28.2.3 构造\r\n28.3 .NET中的XML——.NET XML类\r\n28.3.1 XmlTextReader类\r\n28.3.2 XmlValidatingReader类\r\n28.3.3 XmlReader类\r\n28.3.4 XmlWriter类\r\n28.3.5 XmlDocument类\r\n28.3.6 XPathNavigator类\r\n28.3.7 XPathDocument类\r\n28.4 创建和测试Scheduler应用程序\r\n28.5 小结\r\n\r\n第十一部分 专业项目10\r\n\r\n项目10 VC++.NET中的联网与远程化\r\n项目10 概述\r\n第29章 实现网络互联\r\n\r\n29.1 网络编程介绍\r\n29.1.1 套接字\r\n29.1.2 IP地址和端口\r\n29.2 使用VC++.NET开发一个网络应用程序\r\n29.2.1 System.Net名字空间\r\n29.2.2 Socket类\r\n29.2.3 WebRequest类\r\n29.2.4 IPAddress类\r\n29.3 System.Threading名字空间\r\n29.3.1 Thread类\r\n29.4 案例分析\r\n29.5 项目生命周期\r\n29.5.1 需求分析\r\n29.5.2 设计\r\n29.5.3 构造\r\n29.6 小结\r\n\r\n第30章 远程化介绍\r\n\r\n30.1 .NET远程化结构的介绍\r\n30.1.1 进程间通信\r\n30.1.2 .NET远程化框架概况\r\n30.2 远程对象——服务器端\r\n30.2.1 本机化远程对象\r\n30.2.2 配置远程对象\r\n30.2.3 传递远程对象\r\n30.3 代理对象——客户端\r\n30.4 信道服务\r\n30.4.1 信道的工作原理\r\n30.4.2 安全通信\r\n30.5 远程化元数据和配置文件\r\n30.6 对象生存期\r\n30.7 小结\r\n\r\n第31章 实现远程化\r\n\r\n31.1 NJ Finances——方案\r\n31.2 .NET远程化\r\n31.3 创建远程对象应用程序\r\n31.3.1 创建远程服务器应用程序\r\n31.3.2 创建客户机应用程序\r\n31.3.3 测试\r\n31.4 小结\r\n\r\n第十二部分 附录\r\n\r\n附录A .NET蓝图和目标\r\n\r\nA.1 蓝图说明\r\nA.1.1 表示层\r\nA.1.2 业务逻辑/应用层\r\nA.1.3 数据访问存储层\r\nA.2 .NET的架构变化\r\nA.3 .NET框架设计目标\r\nA.3.1 可用性\r\nA.3.2 易管理性\r\nA.3.3 性能\r\nA.3.4 可靠性\r\nA.3.5 可伸缩性\r\nA.3.6 安全性\r\n\r\n附录B .NET Server系列\r\n\r\nB.1 Application Center 2000\r\nB.2 BizTalk Server 2000\r\nB.3 Commerce Server 2000\r\nB.4 Content Management Server 2001\r\nB.5 Exchange 2000\r\nB.6 Host Intergration Server 2000\r\nB.7 Internet Security and Acceleration Server 2000\r\nB.8 Mobile Informatation 2001 Server\r\nB.9 SharePoint Portal Server 2001\r\nB.10 SQL Server 2000\r\n\r\n附录C 名字空间与属性\r\n\r\nC.1 System名字空间\r\nC.2 System.Windows.Forms名字空间\r\nC.2.1 窗体\r\nC.2.2 控件\r\nC.2.3 组件\r\nC.2.4 通用对话框\r\nC.3 属性\r\nC.3.1 COM属性\r\nC.3.2 IDL属性\r\nC.3.3 ATL Server属性\r\nC.3.4 OLE DB使用者属性\r\nC.3.5 编译器属性\r\n\r\n附录D 将非托管代码迁移到托管代码\r\n\r\n附录E C#基础\r\n\r\nE.1 Visual C#.NET起源\r\nE.2 C#简介\r\nE.3 一个示例程序\r\nE.4 小结