- 1. What is SocketWrench?
SocketWrench is an ActiveX control, managed .NET class and dynamic link library
(DLL) which uses the Windows Sockets API to provide basic TCP/IP networking
functionality to your application. Both client and server capability is provided
through the component, as well as support for both TCP and UDP protocols.
SocketWrench also includes support for standard and secure (SSL) client and
server connections. Virtually any type of application which needs to communicate
with another, either on a local network intranet or over the Internet, can be
written using SocketWrench.
- 2. What is the current version of SocketWrench?
The current version for all editions of SocketWrench is version 6.0, build 6010.
To determine the version of the controls and/or libraries that you have installed, run the License
Manager utility that is included in the program folder created during installation. Using this utility,
you can display the version and build number for the product, as well as for the control and
library individually.
Customers with a commercial version earlier than 6.0 can purchase an upgrade
online.
- 3. What are the key features for SocketWrench?
SocketWrench has been designed to make it easier to develop complex
client and server applications, including those which require advanced
security features such as data encryption. The component itself is
available as both an ActiveX control and a standard Windows dynamic link
library (DLL). Some of the key features of SocketWrench are:
- Support for secure communications in the Secure Edition of the product using standard
secure sockets layer (SSL) technology;
- Improved performance and reliability; this new version has been redesigned so that
there is less overhead, reduced memory requirements and higher overall throughput;
- Improved interface to make development using SocketWrench easier and more
straight-forward; fewer lines of code are needed to accomplish the same task;
- Simplified distribution means that you only need to redistribute the single
SocketWrench component; there are no external third-party file dependencies which
can complicate installations on target platforms.
In addition to these new features, SocketWrench 6.0 continues to provide the same advantages
offered by previous versions. SocketWrench supports the complete Windows Sockets API,
and includes both client and server functionality in the same component. Everything you need
to develop an Internet or intranet application can be done using SocketWrench.
- 4. What are the minimum system requirements?
SocketWrench requires Windows 2000 or later versions of the Windows platform.
The minimum memory and disk space requirements for end-users are the same as
for the base operating system. The following table lists the minimum operating
system versions required:
| Operating System |
Minimum Version |
| Windows 2000 |
5.00.2195 |
| Windows XP |
5.10.2600 |
| Windows Server 2003 |
5.20.3790 |
| Windows Vista |
6.0.6000 |
| Windows Server 2008 |
6.0.6001 |
| Windows 7 |
6.1.7600 |
It is required that Windows 2000 have Service Pack 4 (SP4) installed on the system
for both developers and end-users. For Windows XP, Service Pack 2 (SP2) must be
installed and Service Pack 3 (SP3) is recommended. It is recommended that developers
using Windows Vista install Service Pack 2 (SP2).
SocketWrench does not directly use Internet Explorer or
the WinInet library, however it does depend on several core operating system libraries
that are shared with Internet Explorer on earlier versions of Windows. It is recommended that you upgrade to the
latest version of Internet Explorer available for your platform, and make sure that
all service packs and security updates have been installed.
- 5. Is SocketWrench compatible with Windows 7?
All editions of SocketWrench 6.0 are fully supported under Windows 7 and there are no
special coding considerations required. Note that it may be necessary to configure the
Windows Firewall so that your applications are permitted to establish connections and/or
accept inbound connections on specific ports. Refer to the operating system documentation
for more information on how to configure the firewall.
- 6. Is SocketWrench 6.0 compatible with previous versions?
SocketWrench 6.0 is source compatible with version 4.0 and version 5.0. Simply remove the
reference to the previous version of the control, and add a reference to the current
version. For older versions of SocketWrench prior to version 4.0, some coding changes
will be required because of differences in the interface. The Developer's
Guide includes information to assist developers in updating their applications.
Note that the new version of SocketWrench can co-exist with previous versions on the
same system. Using the SocketWrench 6.0 control
in new applications will not affect programs that were written using older versions
of the control.
- 7. Can SocketWrench be used with Visual Studio 2008?
Yes. The SocketWrench .NET Edition includes managed code classes written
specifically for the .NET Framework and can be used with Visual Studio 2008,
Visual Studio 2005 and Visual Studio .NET 2003. The ActiveX controls in the
SocketWrench Standard and Secure Editions can also be used with the .NET
Framework through a COM interop wrapper, however there can be a significant
performance penalty when using ActiveX controls in a managed code application.
It is recommended that developers who are programming using Visual Studio .NET 2003
or later upgrade to the SocketWrench .NET Edition, which includes assemblies that
target versions 1.1, 2.0 and 3.5 of the .NET Framework.
- 8. Can SocketWrench be used with Visual Studio 6?
Yes, the ActiveX control and dynamic link library can be used with Visual Studio
development tools such as Visual Basic, Visual FoxPro and Visual C++. The product
includes example programs and the documentation includes additional reference
material specifically for Visual C++ programmers who wish to use the product in
their projects. Scripting languages such as Visual Basic Script are also supported,
and the control can be used as an object in server-side scripting environments such as ASP.
- 9. Can SocketWrench be used with Active Server Pages?
Yes, the ActiveX control can be used in Active Server Pages (ASP) by calling the function CreateObject
to create an instance of the object. The class name for the object is SocketTools.SocketWrench.
Note that the use of CreateObject requires that the control be initialized with a runtime
license key by calling the Initialize method after the control has been created.
- 10. Is there a version of SocketWrench for .NET development?
Yes, there is SocketWrench .NET Edition which is designed to be used with Visual
Studio .NET 2003, Visual Studio 2005 and Visual Studio 2008. It includes assemblies
that can be used to target versions 1.1, 2.0 and 3.5 of the .NET Framework and it
is recommended that this edition be used with .NET development projects rather than
the ActiveX control in the SocketWrench Standard and Secure Editions.
- 11. What secure communication protocols are supported?
SocketWrench 6.0 supports three standard security protocols: Secure Sockets
Layer (SSL) versions 2.0 and 3.0, Private Communication Technology (PCT) version 1.0 and
Transport Layer Security (TLS) version 1.0. Note that in order to access the security
features of SocketWrench, a Secure Edition development license is required.
- 12. Does SocketWrench require any third-party libraries?
No, SocketWrench is completely self-contained with no dependencies on third-party libraries or
Microsoft support libraries. The only thing that needs to be redistributed with your
application is the SocketWrench control or library itself. If you are using Windows 95 or
Windows 98, it may be necessary to update the system with the latest version of Internet
Explorer available for that platform and install the current security patches. Note that
in order to access the security features of SocketWrench, a Secure Edition development
license is required.
- 13. Does SocketWrench require Internet Explorer?
The SocketWrench control does not use Internet Explorer or WinInet, however it
does depend on base system libraries such as the CryptoAPI. Because Internet Explorer is
considered to be a core system component, it is recommended that you always update
your system with the latest version, service pack and hotfixes.
- 14. Does SocketWrench use the Microsoft WinInet library?
No, SocketWrench does not use Microsoft's proprietary WinInet library to establish secure
connections. It is not required that you redistribute the WinInet.dll with your software
unless you make use of it elsewhere in your application. SocketWrench uses the Windows
CryptoAPI and standard Windows Security Support Provider Interface (SSPI), which is modeled
after the Generic Security Service (GSS-API) interface outlined in RFC 2078.
- 15. Are there any third-party patent restrictions?
No. SocketWrench 6.0 uses standard Windows libraries which are included
with the operating system and the current version of Internet Explorer. There are no
patent restrictions or requirements for you to pay licensing fees to third-parties.
- 16. Is there an evaluation copy of the product available?
Yes. If you choose to install SocketWrench without a serial number then it will
be installed with an evaluation license that is valid for a period of thirty (30)
days. The software is fully functional during the evaluation period, however
you will be unable to create redistributable applications using the control. In other
words, you will be able to create and test applications on the system on which the
evaluation license was created, but you will not be able to run those programs on any
other system until you purchase the product.
- 1. What is SocketWrench .NET?
SocketWrench .NET is a managed code component for general purpose
network programming and can be used with any Visual Studio .NET
programming language. It is designed for the developer who needs to
create custom client and server applications, including those which need
to support advanced security features such as encryption using the
standard SSL/TLS protocols. The SocketWrench class is written in C# and
provides an interface that is similar to the interface used by the
SocketWrench ActiveX control, making it easier to port applications
witch use the ActiveX version to the .NET platform. For professional
developers, the SocketWrench .NET Edition provides all of the features,
documentation and technical support needed to develop complete Internet
applications quickly and easily.
- 2. What version of the .NET Framework is supported?
The minimum version of Visual Studio .NET required for development is version
7.1.3088 (Visual Studio .NET 2003) and the minimum version of the .NET Framework
required for development and redistribution is version 1.1.4322 (version 1.1
with Service Pack 1 installed). The following .NET Frameworks are supported:
| Visual Studio |
Framework |
Version |
| Visual Studio .NET 2003 |
Version 1.1 |
1.1.4322 |
| Visual Studio 2005 |
Version 2.0 |
2.0.50727 |
| Visual Studio 2008 |
Version 3.5 |
3.5.21022 |
The .NET Framework 3.0 includes version 2.0 of the Common Language Runtime (CLR)
and is primarily a collection of extension classes that were formally called
WinFX. Because the CLR was not changed with this version, the version
2.0 assemblies should be used with version 3.0 of the framework.
- 3. What are the key features in SocketWrench .NET?
SocketWrench .NET has been designed to make it easier to develop complex
client and server applications, including those which require advanced
security features such as data encryption. The component itself is a
class library written Visual C#.NET. Some of the key features of
SocketWrench .NET are:
- Complete support for the Windows Sockets API, including support
for both TCP and UDP as well as raw IP sockets. Advanced features
such as detailed function call and data logging simplify debugging
and technical support once an application is deployed.
- Support for secure communications using standard encryption
technology. The component supports the Secure Sockets Layer (SSL)
versions 2.0 and 3.0, as well as Transport Layer Security (TLS)
version 1.0 protocols.
- High performance and reliability without compromise. SocketWrench
is designed to provide increased network throughput without
sacrificing features, performance and ease-of-use.
- Simplified interface to make network development easier and more
straight-forward; fewer lines of code are needed to accomplish the
same task. The interface is similar to the COM interface, making it
easier to migrate existing applications to the .NET platform.
- There are no third-party file dependencies which can complicate
installations or result in legal patent or copyright issues. For
example, all security related functions use the standard CryptoAPI
that is part of the base operating system; there are no dependencies
on third-party encryption or security protocol libraries.
In addition to these features, SocketWrench .NET continues to provide
the same advantages offered by previous versions and includes both
client and server functionality in the same component. Everything you
need to develop an Internet or intranet application can be done using
SocketWrench.
- 4. Is SocketWrench .NET compatible with the ActiveX version?
The interface for the SocketWrench .NET component is different from the
COM interface in the ActiveX control. An existing .NET application that
wraps the ActiveX control will require minor modifications when
converting the program to use the SocketWrench .NET managed class
library.
- 5. Can SocketWrench .NET be used with Visual Basic 6.0?
Yes, it is possible to use a managed .NET component from within Visual
Basic 6.0, however you have to create a class which exposes an interface
to a COM client (which is your VB6 application). The Microsoft
Developer's Network documentation has a section on interoperating with
unmanaged code that provides information on how to do this. If you're
using Visual Basic 6.0, we recommend that you consider using the
SocketWrench ActiveX control instead.
- 6. Can SocketWrench .NET be used with Visual Studio 2008?
Yes. SocketWrench .NET is fully supported in Visual Studio 2008, as well as
Visual Studio 2005 and Visual Studio .NET 2003. It can be used with any Visual Studio programming
language, and example programs are provided for all supported versions of Visual Studio.
- 7. What language was the SocketWrench .NET class written in?
The SocketWrench .NET component is a managed code class library written in Visual C#.
It is important to note that the component is not simply a COM Interop class wrapper
around the SocketWrench ActiveX control; there are no external dependencies on the
ActiveX control or any other COM object.
- 8. Will you continue to support the SocketWrench ActiveX control?
Yes. The SocketWrench .NET Edition is simply another edition of the
product and there are no plans to phase out development of our COM
components and dynamic link libraries (DLLs). We are committed to
developing new features and providing support for all current versions
of our products.
- 9. What secure communication protocols are supported?
SocketWrench 6.0 supports three standard security protocols: Secure Sockets
Layer (SSL) versions 2.0 and 3.0, Private Communication Technology (PCT)
version 1.0 and Transport Layer Security (TLS) version 1.0.
- 10. Does SocketWrench .NET require any third-party libraries?
SocketWrench .NET has no dependencies on third-party libraries. It is always recommended that
the system have the latest security updates and service packs for the
.NET Framework installed.
- 11. Can I evaluate SocketWrench .NET if I have SocketTools installed?
Yes, you can install an evaluation version of SocketWrench .NET on a
system that already has an evaluation or licensed copy of SocketTools or
SocketWrench installed. They are completely separate products and the
evaluation license will not interfere with your ability to compile and
redistribute applications developed using other editions of SocketTools
or SocketWrench.
- 12. Is there a separate SocketWrench .NET Secure Edition?
The SocketWrench .NET component supports both standard and secure (SSL/TLS)
connections and it does not require that you purchase a different
edition to enable the security features.
- 1. What is the SocketWrench Freeware Edition?
The SocketWrench 6.0 Freeware Edition is a version of our commercial
SocketWrench product that has been made freely available to software
developers. It can be used to create both client and server applications,
and supports both the TCP and UDP protocols. The first version of
SocketWrench was released in 1995 as a Visual Basic control. The current
version includes an ATL based ActiveX control which can be used
to create applications in a wide variety of programming languages such as
Visual Basic, Visual C++, Visual FoxPro, Delphi and PowerBuilder. The
Freeware Edition is ideal for students, hobbyists and programmers who are
new to Internet software development.
Although the Freeware Edition is based on the same commercial component that
is part of our SocketWrench and SocketTools products, it does not include
support for secure, encrypted connections and does not include all of the
other components that are part of those packages. For example, the Freeware
Edition doesn't include the new InternetServer component that makes it
significantly easier to create server applications. The Freeware Edition
also does not include the dynamic link library (DLL) and C++ classes that
are part of the commercial version.
- 2. Does the Freeware Edition include an ActiveX control?
Yes, an ActiveX control is included with the Freeware Edition. It is a
32-bit ATL-based control that can be used with languages such as Visual
Basic 6.0, Visual FoxPro and Progress. It can also be used with scripting
languages as a simple automation object as long as they support standard COM
objects.
- 3. Does the Freeware Edition include a .NET component?
No, only the SocketWrench .NET Edition includes a managed .NET class which
can be used with languages such as Visual Basic .NET, Visual C# .NET and
Delphi .NET. If you are writing applications that target the .NET Framework
and would prefer to use a managed component rather than importing the
ActiveX control, we recommend that you purchase the .NET Edition.
- 4. Does the Freeware Edition include a C++ library?
No, only the SocketWrench Secure Edition and SocketWrench Standard Edition include a C++ class library and
API for developers who prefer a native, lower-level interface rather than
using the ActiveX control or .NET class. If you would prefer to use the
SocketWrench API, we recommend that you purchase either the Secure Edition
or the Standard Edition, depending on whether or not you require support for
secure connections.
- 5. Does the Freeware Edition support secure connections?
No, the SocketWrench Freeware Edition does not include support for secure
connections. If your application requires security features, then we
recommend that you purchase the SocketWrench .NET Edition or SocketWrench
Secure Edition which includes support for the standard Secure Sockets Layer
(SSL) and Transport Layer Security (TLS) protocols.
Please note that although the SocketWrench component has several security
related properties and options, those features are not enabled in the
Freeware Edition and an error will be returned if you attempt to establish a
secure connection without a commercial license.
- 6. Is SocketWrench 6.0 compatible with version 3.6?
The interface for SocketWrench 6.0 has been completely redesigned and is not
source compatible with the SocketWrench 3.6 Freeware Edition. An existing
application that uses an earlier version of the control will require some
modifications.
The Developer's Guide has additional information to assist developers in
updating their applications. Note that the new version of SocketWrench can
co-exist with previous versions on the same system. Using the SocketWrench
6.0 component in new applications will not affect existing programs in any
way.
- 7. Can the Freeware Edition be used to create commercial applications?
Yes, you can use the Freeware Edition to create a commercial application.
The license agreement permits you to redistribute the ActiveX control and/or
.NET component files along with your application executable. It is not
necessary for the end-user to install the SocketWrench Freeware Edition
package. The only restriction is that SocketWrench must be redistributed as
part of an end-user application, and not as part of a software development
toolkit. For more information, please refer to the license agreement
included with the product.
- 8. Is technical support available for the Freeware Edition?
The only technical support that is available for the Freeware Edition is the
online knowledge base and community-based support using the public forums.
Paid technical support options through e-mail and voice support are only
available for our commercial products. If you require technical support, it
is recommended that you purchase one of the commercial versions of
SocketWrench.
- 1. What are the general terms of the license agreement?
The complete license agreement for the product can be found in the online help. In
general terms, it permits you to install a single copy of the product on your computer
system, use the product to build application software and redistribute that software to
your end-users. There are no runtime licensing fees, and there are no restrictions on the
number of products which may be developed using the control.
There are two primary restrictions, the first being that the product is only licensed
for a single developer. The second restriction is that you may not use the controls or
libraries to create a software development product which is then used and/or resold by
your customers. In other words, you may use the control to build application software,
but you are not permitted to create software development components or libraries which
are then used by your customers to create software which, in turn, they distribute to
end-users. If you have any questions regarding the licensing agreement,
please
contact us.
- 2. What are the limitations of an evaluation license?
SocketWrench is fully functional during the evaluation period and the same code that you
develop during the evaluation period can be compiled and used once you have purchased the
product. However, there are two limitations to consider when developing software using an
evaluation license. First, the components and/or libraries will cease to function after the
evaluation period has expired. This means that you will not be able to load them into your development
environment, and any application that uses them will no longer function. Second,
you cannot redistribute any application that uses SocketTools with an evaluation
license. An application that is created using an evaluation license will only function on
the development system where the license is installed. Once you have purchased a license,
you only need to recompile your application with your new, registered license.
- 3. Is a license required for each developer using the product?
Yes, a license is required for each developer who is using SocketWrench. It is a
violation of the terms of the license agreement for more than one developer to use the
same copy of the product. However, the same developer may install the product on more than
one system as long as there is no chance that it will be used by another developer. For
information about purchasing additional licenses, please
contact us.
- 4. Does this product require activation or online registration?
No, SocketWrench does not require electronic activation or registration. We feel that
this is too restrictive for developers who frequently must develop and test applications
on multiple platforms. Although online registration is not required, it is recommended
because this entitles the developer to technical support and free service pack updates to
the product.
- 5. What is the runtime license key?
When the product is installed with a serial number, a runtime license key will be
created which is used by the control to validate that a licensed copy of the product has
been purchased. For languages like Visual Basic, the license key is managed internally and
doesn't require any additional coding by the developer. However, some languages don't
directly support the use of runtime license keys so the control must be initialized with
the license key by calling the Initialize method. The key itself is
stored in the \Include folder where the product was installed. For more information, refer
to the online help for the Initialize method. Please note that the
product serial number is not the same as the license key.
- 6. Why do I get a licensing error when redistributing my application?
There are two common reasons that a licensing error may occur when attempting to
execute an application on another system. If SocketWrench was installed with an evaluation
license, then it can only be used on the development system during the evaluation
period. Attempting to use an evaluation copy of the product will generate an error if the
application is installed on another system.
If a development license has been purchased and registered on the development system,
then it may be that the language does not support the appropriate interface to
automatically manage the runtime license key. For example, using the CreateObject
function to create an instance of an ActiveX control will cause a licensing error when the
application is redistributed to another system. The control's Initialize
method must be called immediately after the control has been created, specifying the
runtime license key as one of the arguments. For more information, refer to the
online help for the product.
- 7. Are there any royalties or runtime licensing fees?
No, absolutely not. The development license allows you to make any number
of products with the SocketWrench components, and redistribute those components along with
your application to any number of end-users. For more information about how our products
are licensed, please refer to our
Product Licensing FAQ.
- 1. What is the best way to get started using SocketWrench?
Included with SocketWrench is a User's Guide and Technical Reference. This covers the basics of TCP/IP
programming with SocketWrench and gets you started with your first project. There are also a number of
samples included with the package which demonstrate how to use the control with a variety of application
protocols. If you are already familiar with network programming under Windows or UNIX, then you should
find SocketWrench to be very easy to use.
- 2. Can SocketWrench be used to transfer files?
Yes, and there are example programs included with the package which demonstrate
how SocketWrench can be used to transfer files. The standard protocol for
uploading and downloading files over the Internet is the File Transfer Protocol
(FTP), which is defined in RFC 959.
If file transfers are an important part of your application, Catalyst also offers
a
File Transfer
control as a separate product which can greatly simplify the process of uploading
and/or downloading files using either the FTP or HTTP protocols.
- 3. Can SocketWrench be used to send e-mail messages?
Yes, however your application is responsible for composing a message which conforms to the
Internet e-mail standards outlined in RFC 822 and RFC 2045. To send a message, the Simple
Mail Transfer Protocol (SMTP) should be implemented as defined in RFC 821. To download
messages from a mail server, the Post Office Protocol (POP3) should be used as defined in
RFC 1939.
If sending e-mail messages and/or managing messages on a mail server are an important
part of your application, Catalyst also offers an
Internet Mail
control as a separate product which can greatly simplify the process of composing,
sending and retrieving e-mail messages.
- 4. Can I monitor Ethernet traffic using SocketWrench?
The SocketWrench package does not include a control or library that can help you monitor
low-level Ethernet traffic on your local network (commonly called a network monitor or
sniffer). If you wish to develop this type of application, one company that you can contact is
PCAUSA. They provide a Win32 NDIS
development framework that can be used to directly access MAC drivers under Windows
98 and Windows NT.
- 5. Do I have to be connected to the Internet during development?
SocketWrench will dynamically load the Windows Sockets library only when it
determines that it actually needs a network connection. This means that it is safe to use
the control or library in a project, and as long as it is not accessed, it will not require a network
connection.
When you come to the point in your development where you want to work with the control or library,
but you don't want to dial out to a service provider, you can use what is called the loopback
interface. This is a special IP address, 127.0.0.1, which always refers to your own local system.
Just like a loopback connector on a serial port, when you use this address, anything that is written
on the socket is immediately sent back as data to be read.
- 6. How do I connect to an Internet service provider?
Dial-up networking is part of the Remote Access Services (RAS) subsystem which
can be used by applications to establish a connection with an Internet
Service Provider (ISP). This interface is available on all Windows
platforms, with documentation for the API available at the Microsoft
Developers Network site. SocketWrench includes a RAS dialer ActiveX control
which you can use to easily create and manage dial-up networking connections.
- 7. How do I establish a secure connection with SocketWrench?
The ActiveX control has a property named
Secure which is used to
specify if a secure connection is to be established. To establish a secure client
connection, set the property to a value of True before connecting to the server:
SocketWrench1.Secure = True
nError = SocketWrench1.Connect(strRemoteHost, nRemotePort)
If nError Then
MsgBox "Unable to establish a secure connection"
EndIf
With the library, your application will need to specify
an option that requests that a secure connection be established with the server. For
example:
SOCKET sockClient;
LPCTSTR pszRemoteHost = _T("www.catalyst.com");
UINT nRemotePort = 443;
UINT nTimeout = 120;
if (InetInitialize(CSWSOCK4_LICENSE_KEY, 0L) == 0)
{
// Unable to initialize SocketWrench library
return;
}
sockClient = InetConnectEx(pszRemoteHost,
nRemotePort,
INET_PROTOCOL_TCP,
nTimeout,
INET_OPTION_SECURE,
0, 0, NULL);
if (sockClient == INVALID_SOCKET)
{
int nError = InetGetLastError();
if (nError == ST_ERROR_SECURITY_NOT_INITIALIZED)
{
// Unable to initialize security interface
return;
}
else
{
// Unable to establish a connection
return;
}
}
If the library is not initialized with a runtime license key, or the security libraries
could not be loaded, the connection attempt will fail with an error. At this point,
your application could either display a warning to the user or optionally establish a
standard, non-secure connection to the server.
Note that a SocketWrench Secure Edition development license is required in order to
establish a secure connection.
- 8. Can the ActiveX control be used in Visual Basic without a form?
Yes, there are two ways that the control can be used without a form
in Visual Basic. One is to create a reference to the control by selecting
Project |
References from the menu, then clicking on the Browse button and selecting the
control's file name. Then, in the program, an instance of the control can be created using
the
Dim statement as follows:
Dim objSocket As New SocketWrench
The other approach is to use the
CreateObject method:
Dim objSocket As Object
Dim strLicenseKey As String
Set objSocket = CreateObject("SocketTools.SocketWrench.5")
objSocket.Initialize strLicenseKey
Note that the
strLicenseKey value must be obtained from the cswskey5.bas module
that was created in the \Include folder where the product was installed. The
Initialize
method must be called explicitly when using the
CreateObject function;
otherwise a licensing error will occur when redistributing the application.
- 9. Can the ActiveX control be used with Visual C++?
Yes, the control can be used in Visual C++ using one of several methods. The simplest is to
include the control in the project and place it on a dialog, which is similar to using the
control with a Visual Basic form. Other methods include using a CWnd
derived class and creating an instance of the control dynamically or using the
#import directive to import the the control into the project. The control
can also be used as a COM object and created using the lower level COM API. Refer to the
online technical reference which contains detailed information about using the control
with Visual C++.