search for books and compare prices
Tables of Contents for Learn Microsoft Active Desktop Programming Using Windows 98
Chapter/Section Title
Page #
Page Count
Introduction
xvii
 
Chapter 1 An Overview of the Internet Client SDK
1
20
Obtaining the Internet Client SDK
2
6
The Active Desktop Hierarchy
8
1
The Active Desktop
9
10
Channel Definition Format (CDF)
10
1
The IActiveDesktop COM Interface
10
1
The IE 4 Common Controls
11
1
The MSHTML ActiveX Control
12
1
The MSHTML Document Object Model (DOM)
12
1
Data Binding API
13
1
Information Delivery API
13
1
Software Distribution Channel API
14
1
PICS Ratings
15
1
URL Security Zones
15
1
Offline Browsing API
16
1
The Active Desktop Shell API
16
1
The res: // Protocol
17
1
WinInet API
17
1
Hit Logging API
17
1
HTML Clipboard Format
18
1
HTMLHelp API
18
1
Where We've Been So Far
19
1
Where We're Going Next
19
2
Chapter 2 Programming Active Desktop Channels in HTML
21
52
Active Channels Overview
23
3
The Desktop Channel Bar
23
1
How Channels Work
24
1
Viewing Active Channels
24
1
The Channel Screen Saver
25
1
Active Desktop Items Overview
26
1
Software Distribution Channels Overview
27
2
Active Channels Design Issues
29
5
Top-Level Design Criteria
29
1
Update Scheduling
29
1
Weekly Schedule
30
1
Daily Schedule
30
1
Hourly Schedule
30
1
Minute By Minute Schedule
31
1
Dialup Scheduling Issues
31
1
Personalizing Channels
31
1
Active Channels Requiring User Authentication
32
1
Offline Page-Hit Logging Capabilities
32
1
Channel Screen Savers
33
1
Creating an Active Channel
34
6
Creating the CDF File
34
2
Creating the Logo Images
36
1
Wide Active Channel Logo Images
37
1
Normal Active Channel Logo Images
38
1
Icon Active Channel Logo Images
38
1
Update Gleams
38
1
Posting the CDF File and Supporting Files
38
1
Making the New Channel Available to Users
39
1
Creating an Active Desktop Item
40
4
Active Desktop Item Behaviors
40
1
Active Desktop Mechanics
41
1
Active Desktop Item Content Guidelines
41
1
Active Desktop Item CDF Files
42
2
Creating a Software Distribution Channel
44
4
Software Distribution Channel CDF Files
44
2
Software Distribution Channel OSD Files
46
1
Software Distribution Channel Distribution Units
47
1
Channel Definition Format Reference
48
25
?XML
48
1
A
48
1
ABSTRACT
49
1
CANRESIZE
49
1
CANRESIZEX
50
1
CANRESIZEY
50
1
CHANNEL
50
2
CLASS
53
1
CODE
53
1
CODEBASE
53
2
DELETEONINSTALL
55
1
DEPENDENCY
55
1
EARLIESTTIME
55
1
HEIGHT
56
1
HTTP-EQUIV
56
1
ICON
57
1
IMPLEMENTATION
57
1
INTERVALTIME
58
1
ISBEAN
58
1
ITEM
59
1
JAVA
60
1
LANGUAGE
60
1
LATESTTIME
61
1
LOG
61
1
LOGIN
62
1
LOGO
62
1
LOGTARGET
63
1
NAMESPACE
64
1
NATIVECODE
64
1
NEEDSTRUSTEDSOURCE
64
1
OPENAS
64
1
OS
65
1
OSVERSION
65
1
PACKAGE
66
1
PROCESSOR
66
1
PURGETIME
67
1
SCHEDULE
67
1
SOFTPKG
68
2
SYSTEM
70
1
TITLE
70
1
TYPELIB
70
1
USAGE
71
1
WIDTH
72
1
Chapter 3 Programming the Active Desktop in C++
73
20
IActiveDesktop Overview
73
5
Accessing the Active Desktop with COM
74
1
Adding an Active Desktop Item
74
2
Enumerating the Active Desktop Items
76
1
Changing the Desktop Wallpaper
77
1
IActiveDesktop Functions Reference
78
9
IActiveDesktop::AddDesktopItem
78
1
IActiveDesktop::AddDesktopItemWithUI
78
1
IActiveDesktop::AddUrl
79
1
IActiveDesktop::ApplyChanges
80
1
IActiveDesktop::GenerateDesktopItemHtml
80
1
IActiveDesktop::GetDesktopItem
80
1
IActiveDesktop::GetDesktopItemByID
81
1
IActiveDesktop::GetDesktopItemBySource
82
1
IActiveDesktop::GetDesktopItemCount
82
1
IActiveDesktop::GetDesktopItemOptions
82
1
IActiveDesktop::GetPattern
83
1
IActiveDesktop::GetWallpaper
83
1
IActiveDesktop::GetWallpaperOptions
84
1
IActiveDesktop::ModifyDesktopItem
84
1
IActiveDesktop::RemoveDesktopItem
85
1
IActiveDesktop::SetDesktopItemOptions
85
1
IActiveDesktop::SetPattern
85
1
IActiveDesktop::SetWallpaper
86
1
IActiveDesktop::SetWallpaperOptions
86
1
IActiveDesktop Structures Reference
87
4
COMPONENT
87
1
COMPONENTSOPT
88
1
COMPPOS
88
2
WALLPAPEROPT
90
1
IActiveDesktop Flags Reference
91
2
Chapter 4 Programming the IE 4 Common Controls in C++
93
72
ComboBoxEx Controls
93
16
Registering and Creating ComboBoxEx Controls
96
1
Adding Images, Text, and Information to a ComboBoxEx Control
97
1
ComboBoxEx Controls in Visual C++ 6
98
1
ComboBoxEx Control Reference
98
1
ComboBoxEx Control Extended Styles
98
1
ComboBoxEx Control Messages
99
3
ComboBoxEx Control Notification Messages
102
3
ComboBoxEx Control Structures
105
4
DragListBox Controls
109
6
DragListBox Reference
110
1
DraglistBox API Functions
110
2
DragListBox Notification Messages
112
2
DragListBox Structures
114
1
IPAddress Controls
115
7
IPAddress Control Reference
116
1
IPAddress Control Messages
116
2
IPAddress Control Notification Messages
118
1
IPAddress Control Utility Macros
119
2
IPAddress Control Structures
121
1
Pager Controls
122
15
Handling Pager Control Messages
123
1
Pager Control Reference
124
1
Pager Control Styles
124
1
Pager Control Messages
124
4
Pager Control Utility Macros
128
5
Pager Control Notification Messages
133
1
Pager Control Structures
134
3
Rebar Controls
137
28
Creating and Using Rebar Controls
138
2
Rebar Controls in Visual C++ 6
140
1
Rebar Control Reference
140
1
Rebar Control Styles
140
1
Rebar Control Messages
141
11
Rebar Control Notification Messages
152
4
Rebar Control Structures
156
9
Chapter 5 Programming the WebBrowser and MSHTML Controls in C++
165
28
IE 4, WebBrowser, and MSHTML Architectural Overview
166
2
Using HTML Dialog Boxes in C++ Applications
168
5
Using HTML Files as Resources in a C++ Project
172
1
Parsing HTML With the MSHTML Control
173
6
Controlling the MSHTML Control's Downloading Behavior
177
2
Using the WebBrowser Control as a C++ Application's User Interface
179
14
WebBrowser User Interface Replacement COM Interfaces Reference
181
1
ICustomDoc Interface
181
1
IDocHostUIHandler Interface
181
9
IDocHostShowUI Interface
190
3
Chapter 6 Programming the Document Object Model in the WebBrowser Control with C++
193
272
Using the Document Object Model
193
2
Obtaining the Document Interface
193
1
Obtaining the Document Interface When Hosting MSHTML
194
1
Obtaining the Document Interface When Hosting the WebBrowser Control
194
1
Using the IHTMLDocument2 Interface
194
1
Document Object Model Interfaces Reference
195
266
ICSSFilter
195
1
ICSSFilterSite
196
1
IHTMLAnchorElement
196
12
IHTMLAreaElement
208
3
IHTMLAreasCollection
211
3
IHTMLBaseElement
214
1
IHTMLBaseFontElement
214
2
IHTMLBGsound
216
2
IHTMLBlockElement
218
1
IHTMLBodyElement
219
11
IHTMLBRElement
230
1
IHTMLButtonElement
230
3
IHTMLCommentElement
233
1
IHTMLControlElement
233
2
IHTMLControlRange
235
4
IHTMLDatabinding
239
2
IHTMLDDElement
241
1
IHTMLDialog
241
4
IHTMLDivElement
245
1
IHTMLDivPosition
246
1
IHTMLDListElement
246
1
IHTMLDocument
247
1
IHTMLDocument2
248
26
IHTMLDTElement
274
1
IHTMLElement
274
15
IHTMLElementCollection
289
1
IHTMLEmbedElement
290
2
IHTMLEventObj
292
7
IHTMLFieldSetElement
299
1
IHTMLFiltersCollection
299
1
IHTMLFontElement
300
1
IHTMLFontNamesCollection
300
1
IHTMLFontSizesCollection
300
1
IHTMLFormElement
301
4
IHTMLFrameBase
305
5
IHTMLFrameElement
310
1
IHTMLFramesCollection2
310
1
IHTMLFrameSetElement
311
1
IHTMLHeaderElement
312
1
IHTMLHRElement
312
1
IHTMLIFrameElement
313
1
IHTMLImageElementFactory
314
1
IHTMLImgElement
315
5
IHTMLInputButtonElement
320
1
IHTMLInputFileElement
320
1
IHTMLInputHiddenElement
321
1
IHTMLInputImage
322
1
IHTMLInputTextElement
323
1
IHTMLIsIndexElement
324
1
IHTMLLabelElement
325
1
IHTMLLegendElement
326
1
IHTMLLIElement
326
1
IHTMLLinkElement
327
1
IHTMLListElement
328
1
IHTMLLocation
328
1
IHTMLMapElement
329
1
IHTMLMarqueeElement
329
6
IHTMLMetaElement
335
2
IHTMLMimeTypesCollection
337
1
IHTMLNextIdElement
337
1
IHTMLNoShowElement
338
1
IHTMLObjectElement
338
3
IHTMLOListElement
341
1
IHTMLOpsProfile
342
2
IHTMLOptionButtonElement
344
3
IHTMLOptionElement
347
2
IHTMLOptionElementFactory
349
1
IHTMLOptionsHolder
349
7
IHTMLParaElement
356
1
IHTMLPhraseElement
356
1
IHTMLPluginsCollection
356
1
IHTMLRuleStyle
357
44
IHTMLScreen
401
3
IHTMLScriptElement
404
1
IHTMLSelectElement
405
3
IHTMLSelectionObject
408
1
IHTMLSpanElement
409
1
IHTMLSpanFlow
409
1
IHTMLStyle
409
7
IHTMLStyleElement
416
1
IHTMLStyleSheet
416
3
IHTMLStyleSheetRule
419
1
IHTMLStyleSheetRulesCollection
420
1
IHTMLStyleSheetsCollection
420
1
IHTMLTable
420
7
IHTMLTableCaption
427
1
IHTMLTableCell
428
2
IHTMLTableCol
430
1
IHTMLTableRow
431
1
IHTMLTableSection
432
1
IHTMLTextAreaElement
433
1
IHTMLTextContainer
434
3
IHTMLTextElement
437
1
IHTMLTitleElement
437
1
IHTMLTxtRange
438
8
IHTMLUListElement
446
1
IHTMLUnknownElement
446
1
IHTMLWindow2
446
8
IOmHistory
454
1
IOmNavigator
455
6
Interfaces and Scripting Objects
461
4
Chapter 7 Programming Active Desktop Information Delivery in C++
465
40
COM Does Databases
465
1
OLE-DB Simple Provider: A Data Binding API for the Active Desktop
466
1
OLE DB in Visual C++ 6.0
467
1
Creating an Active Desktop C++ Channel and Subscription Manager Application with the Information Delivery API
467
2
The Updates Notification Problem
467
1
The Channel Pane Refresh Problem
468
1
Information Delivery API Reference
469
28
Interfaces
469
1
IChannelMgr
469
2
IEnumChannels
471
1
ISubscriptionMgr
472
3
Structures
475
5
Enumerated Types
480
7
Return Values
487
1
New Subscription and Channel Manager COM Interfaces in IE 5
487
1
IEnumItemProperties
487
2
IEnumSubscription
489
2
ISubscriptionItem
491
2
ISubscriptionMgr2
493
3
Structures
496
1
Adding Active Software Update Functionality to a C++ Application with the Software Distribution Channel API
497
8
Using the Software Distribution Channel APIs to Determine New Version Availability and Notify Users
497
1
Software Distribution Channel API Reference
498
1
Functions
498
3
Structures
501
2
"Blessed" Shortcuts Automate the Software Distribution Channel Process in IE 5
503
2
Chapter 8 Programming PICS, URL Security Zones, and Offline Browsing in C++
505
34
The PICS Content Rating System
505
12
Developing for the PICS/RSACi System
509
1
Supporting RSACi and PICS in Standalone Browser Applications in C++ With the Internet Ratings API
509
2
Internet Ratings API Reference
511
6
URL Security Zones
517
16
Intranet Zone
519
1
Trusted Web Sites Zone
520
1
Internet Zone
521
1
Untrusted Web Sites Zone
522
1
Local Machine Zone
522
1
URL Actions and Policies Reference
523
8
Using the Security Zones API in C++
531
2
Active Desktop Offline Browsing System
533
6
Chapter 9 Programming the Active Desktop Shell in C++
539
14
Detecting the Active Desktop Shell in C++
539
2
Active Desktop Band Objects
541
5
Band Object Implementation Considerations
543
1
Registering Band Objects
543
1
COM Interfaces Which Band Objects Must Implement
544
2
Commands Which Band Object Containers Support
546
1
Programming the Active Desktop Taskbar in C++
546
7
Detecting Taskbar Re-creation
549
1
Managing Taskbar Status Area Icons
549
4
Chapter 10 Programming the Active Desktop for the Internet with the WinInet API in C++
553
74
The res:// Protocol
553
1
WinInet API Overview
554
17
Establishing a Dial-Up Connection to the Internet
555
1
Enabling Internet Functionality
555
1
Using the InternetOpen Function
556
2
Using InternetConnect
558
2
Common WinInet Functions
560
11
Handling Uniform Resource Locators
571
9
What Is a Canonicalized URL?
571
1
Canonicalizing URLs
572
1
Combining Base and Relative URLs
573
1
Cracking URLs
573
3
Creating URLs
576
1
Accessing URLs Directly
576
4
Handling Authentication
580
6
About HTTP Authentication
580
2
Registering Authentication Keys
582
1
Server Authentication
582
1
Proxy Authentication
583
1
Handling HTTP Authentication
583
3
FTP Sessions
586
1
FTP Function Handles
587
1
Using the Win32 Internet Functions for FTP Sessions
587
12
Starting an FTP Session
588
1
Enumerating Directories
588
2
Navigating Directories
590
1
Manipulating Directories on an FTP Server
591
3
Getting Files on an FTP Server
594
1
Placing Files on an FTP Server
595
2
Deleting Files From an FTP Server
597
1
Renaming Files and Directories on an FTP Server
598
1
Gopher Sessions
599
2
Using the Win32 Internet Functions for Gopher Sessions
599
1
Creating Locators
599
2
Enumerating Directories
601
1
Downloading Gopher Resources
601
1
HTTP Sessions
601
7
Using the Win32 Internet Functions to Access the WWW
601
1
Initiating a Connection to the WWW
602
1
Opening a Request
602
1
Adding Request Headers
603
1
Sending a Request
604
1
Posting Data to the Server
604
1
Getting Information About a Request
604
2
Downloading Resources from the WWW
606
2
Cookie Functions
608
1
Using Cookie Functions
608
1
Getting a Cookie
609
1
Setting a Cookie
609
1
Caching
609
13
Using Flags to Control Caching
609
1
Persistent Caching Functions
610
1
Using the Persistent URL Cache Functions
611
1
Enumerating the Cache
612
3
Retrieving Cache Entry Information
615
1
Creating a Cache Entry
616
3
Deleting a Cache Entry
619
1
Retrieving a Cache Entry Stream
619
1
Retrieving Cache Entry Files
620
1
Cache Groups
621
1
Handling Structures with Variable Size Information
621
1
HINTERNET Handles
622
1
Handle Hierarchy
622
1
FTP Hierarchy
622
1
Gopher Hierarchy
623
1
HTTP Hierarchy
623
1
Using Buffers
623
1
Handling Errors
624
3
Chapter 11 Programming for Miscellaneous Active Desktop Technologies in HTML (with C++)
627
20
Programming for the Hit Logging API in C++
627
2
Hit Logging API Reference
628
1
Functions
628
1
Structures
628
1
Programming with the HTML Clipboard Format
629
2
Programming for HTMLHelp in C++
631
16
The HTMLHelp Window
631
2
HTMLHelp Workshop
633
1
Invoking HTMLHelp from C++
634
1
HTMLHelp API Reference
635
1
Functions
635
1
Flags
635
3
Structures
638
7
Notification Messages
645
2
Index
647