NCS Logo - Click for home page Northstar Developer Center
Platforms
All Platforms
.NET Framework (1.x - 4.x)
Active Server Pages
ASP.NET
C#
SQL Server
VB.NET
Visual Basic

Keywords
.NET Data Types
.NET E-mail
.NET Events
.NET Functions
.NET Object Programming
.NET System.Configuration
.NET System.Diagnostics
.NET System.IO
.NET System.Net
.NET System.Net.Sockets
Active Data Objects
ASP Architecture
ASP Black Belt
ASP Built-in Functions
ASP Built-in Objects
ASP Debugging
ASP Performance
ASP Security
ASP Syntax
ASP.NET Authentication
ASP.NET Controls
ASP.NET Data Access
ASP.NET Features
ASP.NET Master Pages
ASP.NET Page Events
ASP.NET Security
ASP.NET ViewState
Atom
Certifications
COM, DCOM, COM+
Data Access
E-Mail
Errors
Exporting Data
HTML Tips
IIS
Object-Oriented Programming
RSS
SQL
Uncategorized ASP Tips
VB API Programming
VB Forms
VB Syntax
XML

Book Support
Visual Basic 6 Bible
ASP Bible
ASP Weekend Crash Course
ASP.NET At Work
Creating Web Services

Using Variants in COM Components

Written by Eric Smith, Northstar Computer Systems LLC

If you’re building COM components for your web applications, remember that VBScript only knows one data type: Variant. This has two implications for COM components. The first is in parameters you might have to supply to a function or subroutine. If your COM component is set to accept a Long, for instance, you’ll have to use the CLng function on the input value before passing it. This is fine, but an easier way to handle this is to accept a Variant and do any conversions after the value is inside the COM component. This has the added benefit of keeping all the conversion code in one place. Also remember to do any necessary validation on the input.

The other implication is in return values from functions. While you might want to return an ADODB.Recordset object to your code, for instance, you should use a return type of Variant. You’ll still be able to return the object and VBScript will know how to handle the object, since you’re using the Set statement to store the result in a Variant variable.

Keywords: [ COM, DCOM, COM+ ]

Publication Date: 9/1/2000