图书介绍

Visual C++.NET技术内幕 英文版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

Visual C++.NET技术内幕 英文版
  • GeorgeShepherd,DavidKruglinski著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111112091
  • 出版时间:2003
  • 标注页数:1038页
  • 文件大小:90MB
  • 文件页数:1087页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Visual C++.NET技术内幕 英文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

PartI Windows,Visual C++.NET,and Application Framework Fundamentals3

1 Windows and Visual C++.NET3

The Windows Programming Model3

Message Processing3

The Windows Graphics Device Interface4

Resource-Based Programming5

Memory Management5

Dynamic-Link Libraries6

The Win32 Application Programming Interface6

Visual C++.NET Components6

Visual C++.NET and the Build Process8

The Resource View Window and the Resource Editors9

The C/C++ Compiler10

The Source Code Editor10

The Resource Compiler11

The Linker11

The Debugger11

The MFC Application Wizard12

Class View13

Solution Explorer13

The Object Browser13

Unified Modeling Language Tools14

Online Help15

Windows Diagnostic Tools16

The MFC Library Version716

The ATL Library Version7.016

.NET Support16

2 The Microsoft Foundation Class Library Application Framework17

Why Use This Application Framework?17

The Learning Curve22

An Application Framework vs.a Class Library23

An Application Framework Example23

What s an Application Framework?23

MFC Library Message Mapping27

Documents and Views27

PartⅡ MFC Essentials33

3 Getting Started with the MFC Application Wizard33

What s a View?34

MFC Library Application Types34

MFC Library User Interfaces35

Ex03a:The“Do-Nothing”Application35

The CEx03aView View Class40

Drawing Inside the View Window:The Windows GDI40

The OnDraw Member Function40

Adding Draw Code to the Ex03a Program41

The Windows Device Context41

A Preview of the Resource Editors43

The Contents of Ex03a.rc43

Running the Dialog Resource Editor44

Win32 Debug Target vs.Win32 Release Target45

Understanding Precompiled Headers46

Two Ways to Run a Program48

4 Visual C++.NET Wizards49

Wizard Types49

How Wizards Work50

Creating a Wizard51

Creating a Wizard for Developing Web Applications Using Managed C++53

5 Windows Message Mapping61

Getting User Input:Message Map Functions62

The Message Map62

Saving the View s State:Class Data Members63

Invalid Rectangle Theory64

The Window s Client Area64

CRect,CPoint,and CSize Arithmetic65

Determining Whether a Point Is Inside a Rectangle65

The CRect LPCRECT Operator66

Determining Whether a Point Is Inside an Ellipse66

The Ex05a Example66

Using Class View with Ex05a70

Using Windows Mapping Modes73

The MM_TEXT Mapping Mode74

The Fixed-Scale Mapping Modes75

The Variable-Scale Mapping Modes76

Coordinate Conversion78

The Ex05b Example:Converting to the MM_HIMETRIC Mapping Mode79

Creating a Scrolling View Window81

A Window Is Larger Than What You See81

Scroll Bars81

Scrolling Alternatives81

The Ex05c Example:Scrolling82

Accepting Keyboard Input82

The OnlnitialUpdate Function82

Using Other Windows Messages86

The WM_CREATE Message86

The WM_CLOSE Message86

The WM_QUERYENDSESSION Message86

The WM_DESTROY Message87

The WM_NCDESTROY Message87

6 Classic GDI Functions,Fonts,and Bitmaps89

The Device Context Classes89

The CClientDC and CWindowDC Display Context Classes90

Constructing and Destroying CDC Objects90

The State of the Device Context91

The CPaintDC Class92

GDI Objects92

Constructing and Destroying GDI Objects93

Tracking GDI Objects94

Stock GDI Objects94

The Lifetime of a GDI Selection95

Fonts96

Fonts Are GDI Objects96

Selecting a Font96

Displaying Fonts97

Printing With Fonts97

Logical Inches and Physical Inches on the Display98

Computing Character Height99

The Ex06a Example100

The Ex06a Program Elements103

The Ex06b Example104

The Ex06B Program Elements106

The Ex06c Example:CScrollView Revisited107

The Ex06C Program Elements110

The CScrollView SetScaleToFitSize Mode112

Using the Logical Twips Mapping Mode in a Scrolling View112

Bitmaps112

GDI Bitmaps and Device-Independent Bitmaps113

Color Bitmaps and Monochrome Bitmaps114

DIBs and the CDib Class114

A Few Words About Palette Programming114

DIBs,Pixels,and Color Tables116

The Structure of a DIB Within a BMP File116

DIB Access Functions118

The CDib Class118

DIB Display Performance125

The Ex06d Example125

Going Further with DIBs128

The Loadlmage Function128

The DrawDibDraw Function129

Putting Bitmaps on Pushbuttons130

The Ex06e Example131

Going Further With Bitmap Buttons133

7 Dialog Boxes135

Modal vs.Modeless Dialog Boxes135

Resources and Controls136

Programming a Modal Dialog Box136

The Ex07a Example:The Dialog Box That Ate Cincinnati137

Building the Dialog Resource138

Creating the Dialog Class145

Connecting the Dialog Box to the View150

Understanding the Ex07a Application152

Enhancing the Ex07a Application153

Taking Control of the OnOK Exit153

OnCancel Processing154

Hooking Up the Scroll Bar Controls155

Identifying Controls:CWnd Pointers and Control IDs157

Setting the Dialog Box Background Color or a Control Color157

Adding Dialog Controls at Run Time158

Using Other Control Features158

Windows Common Dialog Boxes159

Nested Dialog Boxes160

Deriving from the Common Dialog Classes160

Using the CFileDialog Class Directly160

The Ex07b Example:CFileDialog161

Other Customizations for CFileDialog166

Programming a Modeless Dialog Box167

Creating Modeless Dialog Boxes167

User-Defined Messages168

Dialog Box Ownership168

The Ex07c Example:A Modeless Dialog Box169

8 Common Controls177

The Progress Control178

The Slider Control178

Standard Common Controls178

The Spin Control179

The List Control179

The Tree Control180

The WM_NOTIFY Message180

The Ex08a Example:Standard Common Controls181

Advanced Common Controls194

The Date and Time Picker194

The Month Calendar196

The Internet Protocol Address Control196

The Extended Combo Box197

The Ex08b Example:Advanced Common Controls198

9 Using ActiveX Controls211

ActiveX Controls vs.Ordinary Windows Controls212

Ordinary Controls:A Frame of Reference212

How ActiveX Controls Are Similar to Ordinary Controls212

How ActiveX Controls Differ from Ordinary Controls:Properties and Methods213

Installing ActiveX Controls214

The Calendar Control215

ActiveX Control Container Programming217

Property Access217

Visual Studio.NET s C++ Wrapper Classes for ActiveX Controls217

MFC Application Wizard Support for ActiveX Controls220

The Add Class Wizard and the Container Dialog Box220

Locking ActiveX Controls in Memory222

The Ex09a Example:An ActiveX Control Dialog Container223

ActiveX Controls in HTML Files232

Creating ActiveX Controls at Run Time232

The Ex09b Example:The Web Browser ActiveX Control233

Picture Properties237

Bindable Properties:Change Notifications238

10 Win32 Core Memory Management241

Processes and Memory Space241

The Windows 95/98 Process Address Space243

The Windows NT/2000/XP Process Address Space245

How Virtual Memory Works245

The VirtualAlloc Function:Committed and Reserved Memory248

The Windows Heap and the GlobalAlloc Function Family249

The Small-Block Heap,the C++ new and delete Operators, and_heapmin250

Memory_Mapped Files251

Accessing Resources253

Tips for Managing Dynamic Memory254

Optimizing Storage for Constant Data254

11 Windows Message Processing and Multi-Threaded Programming257

Windows Message Processing257

How a Single-Threaded Program Processes Messages258

Yielding Control258

The Ex11a Program259

Timers259

On-Idle Processing263

Multi-Threaded Programming264

Writing the Worker Thread Function and Starting the Thread264

How the Main Thread Talks to a Worker Thread265

How the Worker Thread Talks to the Main Thread266

The Ex11b Program267

Using Events for Thread Synchronization269

The Ex11c Program269

Thread Blocking271

Critical Sections272

User Interface Threads274

Mutexes and Semaphores274

PartⅢ MFC s Document-View Architecture277

12 Menus,Keyboard Accelerators,the Rich Edit Control,and Property Sheets277

The Main Frame Window and Document Classes278

Windows Menus279

Keyboard Accelerators280

Command Processing280

Command Message Handling in Derived Classes281

Update Command User Interface Handlers282

Commands That Originate in Dialog Boxes282

The Application Framework s Built-in Menu Commands283

MFC Text Editing Options284

The CEditView Class284

The CRichEditView Class284

Enabling and Disabling Menu Commands284

The CRichEditCtrl Class285

The Ex12a Example285

Property Sheets292

Building a Property Sheet292

Property Sheet Data Exchange292

The Ex12a Example Revisited293

The CMenu Class306

Apply Button Processing306

Creating Floating Shortcut Menus307

Extended Command Processing307

13 Toolbars and Status Bars309

Control Bars and the Application Framework309

Toolbars310

The Toolbar Bitmap310

Toolbar Button States311

The Toolbar and Command Messages311

Toolbar Update Command User Interface Message Handlers312

Locating the Main Frame Window313

ToolTips313

The Ex13a Example:Using Toolbars314

Status Bars319

The Status Bar Definition320

The Message Line320

The Status Indicator321

Taking Control of the Status Bar321

The Ex13b Example:Using Status Bars322

Rebars328

Anatomy of a Rebar328

The Ex13c Example:Using Rebars329

Why Reusable Base Classes Are Difficult to Write333

14 A Reusable Frame Window Base Class333

The CPersistentFrame Class334

The CFrameWnd::ActivateFrame Member Function334

The PreCreateWindow Member Function335

The Windows Registry336

Using the CString Class339

The Position of a Maximized Window341

Control Bar Status and the Registry341

Static Data Members342

The Default Window Rectangle342

The Ex14a Example:Using a Persistent Frame Window Class342

Persistent Frames in MDI Applications348

Document-View Interaction Functions349

15 Separating the Document from Its View349

The CView::GetDocument Function350

The CDocument::UpdateAllViews Function351

The CView::OnUpdate Function351

The CView::OnlnitialUpdate Function352

The CDocument::OnNewDocument Function352

The Simplest Document-View Application352

The CFormView Class353

The CObject Class354

The TRACE Macro355

The afxDump Object355

Diagnostic Dumping355

The Dump Context and the CObject Class356

Automatic Dump of Undeleted Objects357

The Ex15a Example:A Simple Document-View Interaction360

A More Advanced Document-View Interaction367

The CDocument::DeleteContents Function368

The CObList Collection Class369

Using the CObList Class for a First-In,First-Out List369

CObList Iteration:The POSITION Variable370

The CTypedPtrList Template Collection Class372

The Dump Context and Collection Classes372

The Ex15b Example:A Multi-View SDI Application373

Resource Requirements375

Code Requirements376

Protected Virtual Functions389

Testing the Ex15b Application390

Two Exercises for the Reader390

16 Reading and Writing Documents391

What Is Serialization?391

Disk Files and Archives392

Making a Class Serializable393

Writing a Serialize Function393

Loading from an Archive:Embedded Objects vs.Pointers394

Serializing Collections396

The Windows Application Object397

The Serialize Function and the Application Framework397

The SDI Application397

The Document Template Class399

The Document Template Resource401

Multiple Views of an SDI Document401

Creating an Empty Document: The CWinApp::OnFileNew Function402

The Document Class s OnNewDocument Function403

Connecting File Open to Your Serialization Code:The OnFileOpen Function403

The Document Class s DeleteContents Function404

Connecting the File Save and File Save As Commands to Your Serialization Code404

The Ex16a Example:SDI with Serialization405

The Document s “Dirty”Flag405

CEx16aApp406

CStudent406

CMainFrame410

The CEx16aDoc Class413

The CEx16aView Class414

Testing the Ex16a Application414

Windows Explorer Launch and Drag and Drop415

Program Registration415

Double-Clicking on a Document416

Enabling Drag and Drop416

Program Startup Parameters416

MDI Support417

Experimenting with Explorer Launch and Drag and Drop417

A Typical MDI Application,MFC Style418

The MDI Application Object419

The MDI Document Template Class419

The MDI Frame Window and the MDI Child Window420

The Main Frame and Document Template Resources422

Creating an Empty Document422

Creating an Additional View for an Existing Document423

Loading and Storing Documents424

Multiple Document Templates424

The Ex16b Example:An MDI Application425

Explorer Launch and Drag and Drop425

CEx16bApp426

CMainFrame430

CChildFrame432

Testing the Ex16b Application434

MTI Support434

The Ex16c Example:An MTI Application435

Testing the Ex16c Application436

17 Printing and Print Preview437

Windows-Based Printing437

Standard Printer Dialog Boxes437

Display Pages vs.Printed Pages439

Interactive Print Page Selection439

Print Preview440

Programming for the Printer440

The Printer Device Context and the CView::OnDraw Function440

The CView::OnPrint Function440

Preparing the Device Context:The CView::OnPrepareDC Function441

The Start and End of a Print Job441

The Ex17a Example:A WYSIWYG Print Program442

Reading the Printer Rectangle448

Template Collection Classes Revisited:The CArray Class449

The Ex17b Example:A Multi-Page Print Program450

The Splitter Window457

18 Splitter Windows and Multiple Views457

View Options458

Dynamic and Static Splitter Windows459

The Ex18a Example:A Single View Class SDI Dynamic Splitter459

Resources for Splitting460

CMainFrame460

Testing the Ex18a Application461

The Ex18b Example:A Double View Class SDI Static Splitter461

CHexView462

CMainFrame462

Testing the Ex18b Application463

The Ex18c Example:Switching View Classes Without a Splitter464

Resource Requirements464

CMainFrame464

Testing the Ex18c Application466

The Ex18d Example:A Multiple View Class MDI Application466

Resource Requirements467

CEx18dApp467

CMainFrame468

Testing the Ex18d Application469

19 Context-Sensitive Help471

WinHelp vs.HTML Help471

Rich Text Format473

The Windows WinHelp Program473

Writing a Simple Help File474

An Improved Table of Contents479

The Application Framework and WinHelp480

Calling WinHelp480

Using Search Strings481

Calling WinHelp from the Application s Menu481

Help Context Aliases482

Determining the Help Context482

F1 Help483

Shift+F1 Help483

Generic Help484

Message Box Help:The AfxMessageBox Function484

A Help Example with No Programming Required485

Help Command Processing487

F1 Procassing487

Shift+F1 Processing488

Example Ex19b:Help Command Processing488

Header Requirements489

CStringView489

CHexView490

Resource Requirements490

Help File Requirements490

MFC and HTML Help491

Testing the Ex19b Application491

Example Ex19c:HTML Help492

20 Dynamic-Link Libraries495

DLL Fundamentals495

How Imports Are Matched to Exports496

Implicit Linkage vs.Explicit Linkage497

Symbolic Linkage vs.Ordinal Linkage498

The DLL Entry Point:DllMain499

Instance Handles:Loading Resources499

How the Client Program Finds a DLL500

Debugging a DLL500

MFC DLLs:Extension vs.Regular501

MFC Extension DLLs:Exporting Classes502

The MFC Extension DLL Resource Search Sequence502

The Ex20a Example:An MFC Extension DLL503

The Ex20b Example:A DLL Test Client Program505

MFC Regular DLLs:The AFX_EXTENSION_MODULE Structure506

Using the AFX_MANAGE_STATE Macro506

The MFC Regular DLL Resource Search Sequence506

The Ex20c Example:An MFC Regular DLL507

Updating the Ex20b Example:Adding Code to Test Ex20c.dll509

A Custom Control DLL510

A Custom Control s Window Class511

What Is a Custom Control?511

The MFC Library and the WndProc Function512

Custom Control Notification Messages512

User-Defined Messages Sent to the Control513

The Ex20d Example:A Custom Control513

Revising the Updated Ex20b Example:Adding Code to Test Ex20d.dll518

21 MFC Programs Without Document or View Classes521

The Ex21a Example:A Dialog Box-Based Application521

The Application Class InitInstance Function524

The Dialog Class and the Program Icon525

The Ex21b Example:An SDI Application526

The Ex21c Example:An MDI Application528

PartⅣ COM,Automation,ActiveX,and OLE531

22 The Component Object Model531

ActiveX Technology531

What is COM?532

The Essence of COM532

What is a COM Interface?533

The IUnknown Interface and the QueryInterface Member Function538

Reference Counting:The AddRef and Release Functions541

Class Factories541

The CCmdTarget Class543

The Ex22a Example:Simulated COM544

The COM CoGetClassObject Function551

Real COM with the MFC Library551

COM and the Windows Registry552

Runtime Object Registration553

How a COM Client Calls an In-Process Component554

How a COM Client Calls an Out-of-Process Component556

The MFC Interface Macros559

The MFC COleObjectFactory Class560

Wizard Support for COM In-Process Components560

MFC COM Client Programs562

The Ex22b Example:An MFC COM In-Process Component562

The Ex22c Example:An MFC COM Client566

Containment vs.Aggregation vs.Inheritance568

Creating C++ Components for VBA571

23 Automation571

Automation Clients and Components572

Excel:A Better Visual Basic Than Visual Basic573

Properties,Methods,and Collections575

Automation Interfaces576

The IDispatch Interface576

Automation Programming Choices577

The MFC IDispatch Implementation579

An MFC Automation Component579

An MFC Automation Client Program581

An Automation Client Program That Uses the Compiler s #import Directive583

The VARIANT Type584

The COleVariant Class586

Parameter and Return Type Conversions for Invoke589

Automation Examples590

The Ex23a Example:An Automation Component EXE with No User Interface591

The Ex23b Example:An Automation Component DLL600

The Ex23c Example:An SDI Automation Component EXE with User Interface609

The Ex23d Example:An Automation Client616

The Ex23e Example:An Automation Client632

VBA Early Binding636

Registering a Type Library636

How a Component Can Register Its Own Type Library636

The IDL File637

How Excel Uses a Type Library638

Why Use Early Binding?639

Faster Client-Component Connections639

24 Uniform Data Transfer:Clipboard Transfer and OLE Drag and Drop641

The IDataObject Interface641

How IDataObject Improves on Standard Clipboard Support642

The FORMATETC and STGMEDIUM Structures642

FORMATETC643

STGMEDIUM644

IDataObject Interface Member Functions644

MFC UDT Support645

Other IDataObject Member Functions:Advisory Connections645

The COleDataSource Class646

The COleDataObject Class647

MFC Data Object Clipboard Transfer648

The MFC CRectTracker Class650

CRectTracker Rectangle Coordinate Conversion651

The Ex24a Example:A Data Object Clipboard652

The CMainFrame Class652

The CEx24aDoc Class653

The CEx24aView Class653

The Source Side of the Transfer660

The Destination Side of the Transfer660

MFC Drag and Drop660

The Drag-and-Drop Sequence661

The Ex24b Example:OLE Drag and Drop662

The CEx24bDoc Class662

The CEx24bView Class663

25 Introducting the Active Template Library667

Revisiting COM667

The Core Interface:IUnknown669

Writing COM Code671

COM Classes That Use Multiple Inheritance672

The COM Infrastructure673

ActiveX,MFC,and COM674

ActiveX,OLE,and COM674

AtlBase.h675

AN ATL Roadmap675

AtlCom.h676

AtlConv.cpp and AtlConv.h676

AtlCtl.cpp and AtlCtl.h676

AtllFace.idl and AtllFace.h676

Atllmpl.cpp676

Client-side ATL Programming677

C++ Templates677

StatReg.cpp and StatReg.h677

AtlWin.cpp and AtlWin.h677

Smart Pointers679

Giving C++ Pointers Some Brains681

Using Smart Pointers682

Smart Pointers and COM683

ATL s Smart Pointers684

The CComPtrBase Class684

The CComPtr Class688

The CComQIPtr Class690

ATL Smart Pointer Problems692

ATL and COM Classes693

Server-Side ATL Programming693

ATL Project Options694

Creating a Classic ATL COM Class697

Apartments and Threading698

Connection Points and ISupportErrorInfo700

The Free-Threaded Marshaler701

Implementing the Spaceship Class Using Classic ATL701

Basic ATL Architecture703

Managing Vtable Bloat704

ATL s IUnknown:CComObjectRootEx705

ATL and QueryInterface708

Making the Spaceship Go711

Adding Methods to an Interface713

Dual Interfaces714

ATL and IDispatch716

The IMotion and IVisual Interfaces717

Multiple Dual Interfaces719

Attributed Programming720

26 ATL and ActiveX Controls723

What Are ActiveX Controls?724

Using ATL to Write an ActiveX Control725

Creating a Control725

ATL s Control Architecture730

Developing a Control736

Creating an Attributed Control768

Control Events in Attributed ATL770

27 The OLE OB Templates771

Why OLE DB?771

The Basic OLE DB Architecture773

The Basic OLe DB Template Architecture774

The OLE DB Consumer Template Architecture774

The OLE OB Provider Template Architecture777

Creating an OLE DB Consumer783

Using the OLE DB Consumer Code787

Creating an OLE DB Provider788

Modifying the Provider Code795

Enhancing the Provider797

Attributed OLE DB Programming797

PartⅤ Programming for the Internet805

28 Internet Essentials805

An Internet Primer806

Network Protocols and Layering806

IP807

UDP808

IP Address Format:Network Byte Order809

TCP810

DNS812

HTTP814

Internet vs.Intranet817

Building an Intranet817

FTP817

NTFS vs.FAT File Systems818

Network Hardware818

Configuring Windows for Networking819

Intranet Host Names and the HOSTS File819

Testing Your Intranet:The Ping Program819

Synchronous vs.Asynchronous Winsock Programming820

The MFC Winsock Classes820

Winsock Programming820

An Intranet for One Computer:The TCP/IP Loopback Address820

The Blocking Socket Classes821

A Simplified HTTP Server Program830

A Simplified HTTP Client Program832

Building a Web Server Using CHttpBlockingSocket834

Ex28a Server Limitations834

Ex28a Server Architecture834

Using the Win32 TransmitFile Function835

Building and Testing Ex28a836

Building a Web Client Using CHttpBlockingSocket837

The Ex28a Winsock Client837

Ex28a Support for Proxy Servers837

WinInet s Advantages over Winsock838

Testing the Ex28a Winsock Client838

WinInet838

The MFC WinInet Classes839

Internet Session Status Callbacks841

A Simplified WinInet Client Program843

Building a Web Client Using the MFC WinInet Classes844

The Ex28a WinInet Client#1:Using CHttpConnection844

Testing the WinInet Client#1844

The Ex28a WinInet Client#2:Using OpenURL844

Testing the WinInet Client#2845

The MFC CAsyncMonikerFile Class846

Monikers846

Asynchronous Moniker Files846

Using the CAsyncMonikerFile Class in a Program847

Asynchronous Moniker Files vs.WinInet Programming848

29 Introducing Dynamic HTML849

The DHTML Object Model850

Visual C++.NET and DHTML854

The Ex29a Example:MFC and DHTML855

The Ex29b Example:DHTML and MFC856

The Ex29c Example:ATL and DHTML860

Fore More Information863

IIS865

30 ATL Server865

IIS Security866

Internet Service Manager866

IIS Directories868

IIS Logging870

Testing IIS870

ISAPI Server EXtensions870

CGI and ISAPI870

A Simple ISAPI Server Extension GET Request871

HTML Forms:GET vs.POST871

Where Does ATL Server Fit In?874

Enter ATL Server874

ATL vs.ATL Server874

The ATL Server Architecture875

SRF Files877

The Ex30a Example:An ATL Server Web Site881

PartⅥ .NET and Beyond887

31 Microsoft.NET887

Windows Component Technology887

Some Component History888

What s Wrong with DLLs888

The COM Technology889

The Benefits of COM890

The Drawbacks of COM891

The Common Language Runtime892

No Boundaries892

It s All About Type894

Common Language Runtime Types895

The Common Language Specification899

Assemblies900

.NET Versioning903

Living Within the Common Language Runtime903

AppDomains906

Threading and The Common Language Runtime906

Interoperability907

32 Managed C++909

The Common Language Runtime Is Your Friend909

Why Use C++?910

Managed C++ Extensions912

Visual C++.NET and the Managed Extensions914

The Ex32a Example:A Managed C++ DLl Assembly914

DaysOFTheWeek919

AManagedDelegate920

DotCOMVP,SoftwareDeveloper,and Bum920

AManagedClass920

IAManagedInterface and Iperson920

AManagedValueStruct and AManagedGcStruct920

Making the Assembly Usable921

The Ex32b Example:A Managed Client Executable921

Adding Managed Extension Support925

33 Programming Windows Forms Using Managed C++927

Windows Forms927

Beneath the Veneer928

The Windows Forms Structure928

A Windows Forms Wizard929

The Form Class932

Handling Events933

Drawing934

What s Missing from Windows Forms951

34 Programming ASP.NET Using Managed C++953

The Internet as a Development Platform953

The Evolution of ASP.NET954

The Role of IIS956

ASP.NET s Compilation Model957

The Page Class957

Code-Behind958

Web Forms962

What Happened to ActiveX?967

The HttpModule Object969

The HttpApplication Object969

The HTTP Pipeline969

The HttpContext Object969

The HttpHandler Object972

Web Services976

Web Services Using Managed C++976

WSDL and ASP.NET978

Invoking Web Methods979

35 Programming ADO.NET Using Managed C++981

Managed Providers981

.NET Managed Providers982

Connecting to the Database983

Working with the Providers983

Issuing Commands986

Using Stored Procedures with a Command986

Using Data Readers to Retrieve Data987

Error Handling989

ADO.NET Datasets989

Using the Data Adapter to Populate Datasets990

Creating In-Memory Datasets991

Writing XML from Datasets993

A Message Map Functions in the MFC Library997

B MFC Library Runtime Class Identification and Dynamic Object Creation1005

Index1013

热门推荐