Summer Reading B2G1 Free

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to
for a chance to win.
Privacy Policy

Visit our stores

    Recently Viewed clear list

    Original Essays | July 14, 2015

    Joshua Mohr: IMG Your Imagination, Your Fingerprint

    When I was in grad school, a teacher told our workshop that if a published novel is 300 pages, the writer had to generate 1,200 along the way. I... Continue »
    1. $17.50 Sale Hardcover add to wish list

      All This Life

      Joshua Mohr 9781593766030

Qualifying orders ship free.
Used Trade Paper
Ships in 1 to 3 days
Add to Wishlist
Qty Store Section
1 Burnside Computer Languages- Visual Basic

More copies of this ISBN

Advanced Visual Basic 6: Power Techniques for Everyday Programs with CDROM (DevelopMentor)


Advanced Visual Basic 6: Power Techniques for Everyday Programs with CDROM (DevelopMentor) Cover


Synopses & Reviews

Publisher Comments:

"This book takes you to places that no other book on VB and COM has ever dared to go. If you're a Visual Basic developer who refuses to recognize the commonly accepted limitations of VB, this book is definitely for you. You'll learn programming techniques that will give your applications unbelievable boosts in performance and flexibility."

--Ted Pattison

In Advanced Visual Basic 6, leading Visual Basic expert Matthew Curland demonstrates powerhouse techniques programmers can use to write high-performance, robust, and reusable VB code. Readers learn how to leverage the close relationships between VB, COM, and OLE Automation, extending the envelope of VB's capabilities and building high-quality, object-based systems.

Key topics include how to:

  • Control VB array variables explicitly to directly access arbitrary memory locations
  • Call pointers to standard, cdecl, and class module functions
  • Aggregate complete interface implementations into any VB object
  • Override functions on any interface, including those implemented automatically by VB
  • Turn any user-defined type into a lightweight COM object
  • Minimize memory usage in systems with a large number of objects
  • Safely create and manage threads in ActiveX EXEs and DLLs
  • Interact with messages to customize windowed and windowless UserControl objects

The web site accompanying this book contains extensive source code samples to enable all techniques without external DLLs. It also provides integrated type library add-ins for creating and editing referenced libraries, modifying binary compatibility files, and customizing the type libraries that VB generated for ActiveX components.

With this compendium of best practices, sophisticated techniques, and valuable utilities, VB programmers will gain a deeper understanding of VB's inner workings and be able to extend its object-oriented capabilities.


Book News Annotation:

Curland, a developer for Microsoft, demonstrates techniques programmers can use to write reusable Visual Basic (VB) code, and how to leverage the close relationships between VB, COM, and OLE automation to extend VB's capabilities. The book alternates between a low-level look at the data underlying array, object, and string types and practical applications of these structures. The CD-ROM contains source code sample that enable techniques without external DLLs.
Annotation c. Book News, Inc., Portland, OR (

About the Author

Matthew Curland is a long-time member of Microsoft's Visual Studio development team. Visual Basic's IntelliSense feature is his most visible contribution. A frequent and popular speaker at VBITS, he also contributes black-belt articles to the leading VB journal, VBPJ, and is the co-author of Object Programming with Visual Basic 4 (Microsoft Press).


Table of Contents



1. Building Blocks.

Phantom Pointers.

Living Pointers.

VBoost Objects.

2. Leveraging Arrays.

Array Descriptors.

Reading Array Variables.

Writing to Array Variables.

Array Options: Beyond Fixed or Variable Size.

Miscellaneous Tips for Using Arrays.

3. IUnknown: An Unknown Quantity.

VB and IUnknown.

Declaring IUnknown and Calling Its Functions.

4. Binding Functions to Objects.

When are objects bound to?

Name Binding at Runtime.

VTable-Binding Custom Control Interfaces.

5. Object Design Constructs.

Abstraction with Implements.

Pluggability of Calling Code.

Implements and Implementation Reuse.


6. Circular References.

Intermediate Object Solutions.

Weak References and Collections.

Transferring Object Ownership.

Hierarchical Object Models.

7. External Object Creation.

Object Creation with Class Factories.

Loading DLL Objects Directly.

Custom Loading Custom Controls.

Custom Class Objects.

8. Lightweight COM Objects.

Lightweight Basics.

Termination Code on Structures.

LastIID Lightweight.

ArrayOwner Lightweight.

Where's the Interface?

To Err or Not to Err.

Returning Errors from Lightweights.

Aggregating Lightweight Objects.

Coding the QueryInterface Function.

9. Large Systems of Objects.

Using a Fixed-Size Memory Manager.

Scribble Sample.

10. VB Objects and the Running Object Table.

Registering VB Objects with The ROT.

ROTHook Implementation Details.

11. Calling Function Pointers.

Sample: Calling DllRegisterServer.

Sample: QuickSort, Once and for All.

Function Pointers in VB for Alpha.

Stack Allocation.

Generating Your Own In-Line Assembly.

Pointers to Class Functions.

Using CDECL Functions.

12. Overriding Functions.

Cooperative Redirection.

Interface Wrapping.

Thinner Interface Wrapping.

Wrapping Issues.

13. Threads in VB.

Thread Local Storage.

Can You Avoid the Marshaling Overhead?

To Thread or Not to Thread.

Creating Threads in a Client EXE.

Coordinated Gate-Crashing in STA Apartments.

Creating Worker Threads in DLLs.

14. Strings in VB.

UNICODE Conversions.

String Allocation.

Strings as Numbers.

15. Type Libraries and VB.

VB-Generated Type Libraries.

VB-Friendly Custom Type Libraries.

Binary Compatibility.

Post-Build Type Library Modifications.

16. Controlling Windows.


Custom Window Creation.

Windowless Controls.

Appendix: VBoost Reference.

Assignment and Arithmetic Functions.

Memory Allocation Objects.

Aggregation Functions.

Index. 0201707128T04062001

Product Details

Curland, Matthew J.
Storage, Bill
Curland, Matt
Curland, Matthew
Curland, Matthew J.
Storage, Bill
Addison-Wesley Professional
Programming Languages - General
Programming - General
Programming Languages - Visual BASIC
BASIC (Computer program language)
Microsoft Visual BASIC
Computer Languages-Visual Basic
Edition Description:
Trade paper
The developMentor series
Series Volume:
no. AU-ARI-92-8
Publication Date:
July 2000
Grade Level:
Professional and scholarly
9 x 7.3 x 1.1 in 875 gr

Other books you might like

  1. ADO.NET Programming in Visual Basic .Net New Trade Paper $54.99
  2. Microsoft Visual Basic 6.0:... Used Trade Paper $1.25
  3. Effective C++ 2ND Edition 50... Used Trade Paper $17.50
  4. Advanced .NET Remoting in VB .NET New Trade Paper $49.99
  5. Java Prog Language 3RD Edition Used Trade Paper $0.50
  6. Thinking in C++ 2ND Edition New Trade Paper $82.75

Related Subjects

Computers and Internet » Computer Languages » Visual Basic
Computers and Internet » Software Engineering » Programming and Languages

Advanced Visual Basic 6: Power Techniques for Everyday Programs with CDROM (DevelopMentor) Used Trade Paper
0 stars - 0 reviews
$10.50 In Stock
Product details 528 pages Addison-Wesley Professional - English 9780201707120 Reviews:
  • back to top


Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at