Visual Basic Shell Programming

by
Format: Paperback
Pub. Date: 2000-07-01
Publisher(s): Oreilly & Associates Inc
  • Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $29.95

Rent Book

Select for Price
There was a problem. Please try again later.

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

eBook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

Visual Basic's outstanding set of resources for rapidly developing stand-alone applications doesn't include shell extensions for integrating those applications or their data files with the Windows shell. Typically, such extensions as customized context menu handlers, per instance icons (such as a data file icon that's based on the contents of the file), and customized property sheets are written in C++, and all of the available documentation focuses on using C++ for shell extensions.But even C++ programmers find the task rough going, given the woefully inadequate state of the documentation. Very few programmers know that writing shell extensions is not tied to a single language or development environment, and that Visual Basic is an excellent tool for creating shell extensions that more closely tie an application to the Windows shell.That, however, is precisely the focus ofVisual Basic Shell Programming.It shows how to take advantage of shell services to develop shell extensions and it provides the basic documentation needed for accomplishing this. Each major type of shell extension gets attention, including: Context menu handlers that can add items to the popup menu that appears when the user right clicks a file. con handlers for displaying per instance icons that, like the standard Recycle Bin icon, vary depending on some condition Property sheet pages, which appear when the user selects the Properties option from a file's context menu. InfoTip handlers, which display tooltips, or "info" tips for a file object on a per instance basis.In showing how to integrate applications with the Windows shell by building shell extensions, author J.P. Hamilton provides a concrete tutorial on COM programming with Visual Basic. And while developing their own shell extensions, readers get to learn advanced VB concepts and techniques such as: Pointers. Since VB tends to hide pointers from the programmer, Hamilton shows how to take advantage of the undocumented VarPtr, StrPtr, and ObjPtr functions, as well as the Win32 RtlMoveMemory function. Using class identifiers (CLSIDs) from Visual Basic. VTable modification, which allows control of the HRESULT (or status code) returned by a call to a COM method.Visual Basic Shell Programmingventures where none have gone before by giving readers both the know-how to develop shell extensions and an advanced treatment of COM programming with Visual Basic.

Table of Contents

Preface ix
I. Introduction to the Shell and the Basics of COM 1(36)
Introduction
3(6)
COM and the Shell
3(1)
Programming for the Shell
4(1)
Kinds of Shell Extensions
5(3)
Conclusion
8(1)
COM Basics
9(17)
What Is COM?
9(1)
Interfaces
10(2)
Classes
12(2)
Type Libraries
14(7)
IUnknown
21(2)
IDispatch
23(2)
Conclusion
25(1)
Shell Extensions
26(11)
Folders and File Objects
26(1)
Shell Extensions
26(4)
Registry Settings
30(3)
The .rad File
33(1)
The Shell Extension Project
34(1)
Restarting the Shell
35(1)
When the Shell Crashes
35(2)
II. Shell Extensions 37(134)
Context Menu Handlers
39(31)
Static Context Menus
40(1)
Static Context Menus in IE 5.0
41(1)
Dynamic Context Menus
42(1)
Context Menu Handlers Interfaces
43(13)
Creating a Context Menu Handler
56(14)
Icon Handlers
70(17)
How Icon Handlers Work
70(1)
Icon Handler Interfaces
71(7)
Creating an Icon Handler
78(9)
Property Sheet Handlers
87(31)
How Property Sheet Handlers Work
87(2)
Property Sheet Handler Interface
89(5)
Creating a Property Sheet Handler
94(22)
Registering the Property Sheet Handler
116(2)
Drop Handlers
118(10)
How Drop Handlers Work
118(1)
Drop Handler Interfaces
119(3)
Creating a Drop Handler
122(5)
Registering the Drop Handler
127(1)
Data Handlers
128(23)
How Data Handlers Work
129(1)
Data Handler Interfaces
130(7)
Creating a Data Handler
137(9)
Adding Additional Formats
146(5)
Copy Hook Handlers
151(14)
How Copy Hook Handlers Work
152(1)
Copy Hook Handler Interface: ICopyHook
153(3)
Implementing ICopyHook
156(1)
Registering Copy Hook Handlers
157(1)
Testing the Handler
158(7)
InfoTip Handler
165(6)
How InfoTip Handlers Work
166(1)
InfoTip Interfaces
166(1)
The Project
167(4)
III. Namespace Extensions 171(74)
Namespace Extensions
173(72)
Namespace Fundamentals
174(4)
Explorer Architecture
178(2)
The PIDL
180(2)
Namespace Interfaces
182(17)
Creating the Namespace Extension
199(20)
The PIDL Manager
219(23)
Registering DemoSpace
242(1)
Practical Coding Examples
243(2)
IV. Browser Extensions 245(78)
Browser Extensions
247(27)
Browser Helper Objects
248(11)
Browser Extensions
259(15)
Band Objects
274(29)
How Band Objects Work
276(1)
Band Object Interfaces
277(6)
The Project: FileSpider
283(16)
Registry
299(3)
Tool Bands
302(1)
Docking Windows
303(20)
How Docking Windows Work
304(1)
Docking Window Interfaces
305(5)
The Project
310(11)
Registration
321(2)
V. Appendixes 323(40)
A. VBShell Library Listing
325(32)
B. Pointers
357(6)
Index 363

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.