Microsoft ActiveX Software Development Kit
Last updated: August 12, 1996
The Microsoft® ActiveX Software Development Kit (SDK) includes a variety of technologies that Microsoft is introducing to facilitate development of Internet applications and content. This document provides a quick overview of what's new in the ActiveX SDK. The overview covers some new tools, some new documentation, and some of the key issues associated with this release. Be sure to visit the README.TXT file for more details and time-saving information.
This release of the ActiveX SDK is synchronized with the recent Internet Explorer 3.0 final version. You may be downloading this release of the SDK from the Web site, or you may be receiving it as an MSDN Professional release, so I've tried to ensure that this release of the ActiveX SDK works both on the May '96 release of the Win32® SDK and on the latest release of the Win32 SDK (which will be on the MSDN Professional Edition CDs). Be sure to read the SDK's readme.txt regarding the \INetSDK\Bin\LMS.zip file to install the files that you will need to build the samples with the older May '96 release of the Win32 SDK.
Note: Internet Explorer 3.0 installs on Windows® 95 and on the final version of Windows NT® 4.0. It will not install on Windows NT 4.0 beta versions. This release of the SDK is synchronized with Internet Explorer 3.0, so if you are a developer who does your work on Windows NT, you should not use this SDK on your machine until you have Windows NT 4.0 (final version).
If you would like to see what others are doing with ActiveX technologies, take a quick look at the
Microsoft Web Gallery. This is a collection of multimedia components and sample code that you can add to your Web sites. Currently the web master of this site is pulling together sounds, images, java code, stylesheets, fonts, script samples, HTML samples, animation, and free tools. Something worth visiting from time to time.
Good coding!
Jerry Drain
ActiveX SDK Program Manager
What's New in Tools?
What's New in Documentation?
How Do I License VBScript and JScript?
What are the Steps for Getting a Certificate and Signing Code?
Where Do I Go If I Need Help?
What's New in Tools?
Tools are generally kept in the \INetSDK\Bin\ subdirectory of your ActiveX SDK installation. If you are interested in CAB file development, you will make a great new find there: The CABDevKt.exe is a self-extracting executable that includes the latest tools and documentation we have available on creating CAB files. Place and execute this file in your directory of choice to expand the contents.
DumpCert.exe is a new tool associated with code-signing efforts. It outputs the contents of a certificate file or the certificate information in a signed file. You will also find Wvtston.reg and Wvtstoff.reg. Internet Explorer 3.0 no longer accepts the fake certificate used for development and testing as a default action. You can turn that functionality on and off using the .reg files. However, Internet Explorer 3.0, by default, will only accept authentically signed code. The big question on many ISVs' minds this month will be "How do I get a real certificate and sign my code for download?" See the steps below to guide you through that process.
Not new to this release, but certainly worth mentioning again, is the Microsoft ActiveX Control Pad. This tool lets you build ActiveX Web pages with ease. The ActiveX Control Pad is a utility that lets you add ActiveX controls and ActiveX scripting (Visual Basic® Scripting Edition [VBScript] or JScript) to your HTML pages with an easy point-and-click interface. It is a great way to create and edit pages that use the components built with the ActiveX SDK. For more information, follow this link to the Microsoft ActiveX Control Pad pages located on the Microsoft Web site.
Back to top
What's New in Documentation?
We've revised the HTML documentation and streamlined the Contents section in an effort to make it easier to find the things you're interested in. The new documentation below and more is accessible from \INetSDK\Help\Default.htm.
- There are some new HTML files on CAB file development.
- Register.htm is a new document that describes how to register an ActiveX object as the "viewer" or "player" for a particular media type (MIME).
- New VBScript documentation that shows you how to use VBScript more easily can be found under Scripting Services.
- PlugURL.htm shows you the Internet Explorer 3.0 solution for pluggable URL protocols.
- EmbedTag.htm is a new document that shows you the Internet Explorer 3.0 support for the EMBED tag.
- Encode.htm is a new document that explains why you need to encode/escape or decode/un-escape URLs when using URL monikers, URLOpenStream functions, and Win32 Internet functions (WinInet).
- The CryptoAPI docs were not downloaded with this release, but here is a pointer to them on the Web: http://www.microsoft.com/intdev/security/cryptapi-f.htm.
Back to top
How Do I License VBScript and JScript?
Visual Basic Scripting Edition is an upwardly compatible subset of the popular Microsoft Visual Basic programming system. JScript is a scripting language that is 100% compatible with JavaScript from Netscape. As a software developer, you may want to license VBScript or JScript from Microsoft to use as the scripting language in your own applications. Both VBScript and JScript can be integrated into applications using the published ActiveX Scripting interface. The ActiveX Scripting interface allows developers to orchestrate the interaction among a variety of software components on the Internet, including Java applets and ActiveX controls written in other languages, using any scripting language that supports this interface.
VBScript and JScript are licensed in binary and source formats. Binary licenses are free and grant unlimited redistribution rights for use with any application. One can acquire a binary code license immediately by visiting the VBScript or JScript Web sites. Source licenses are also free but have limitations for the distribution of derivative works that are based on the source. Source licensees can only port the code to non-Microsoft supported platforms and add new runtime functions. Acquiring a source license is more complicated and requires an agreement to be signed by both parties.
Visit http://www.microsoft.com/jscript/ and http://www.microsoft.com/vbscript/ for the latest information on JScript, VBScript, and their licensing programs.
Back to top
So What Are These Steps for Getting a Real Certificate and Signing My Code?
Through Microsoft Internet Explorer 3.0, Microsoft's Authenticode technology lets end users identify who published software and verify that no one tampered with the software before downloading it from the Internet. Authenticode provides accountability similar to that of a shrink-wrapped software box for code available over the Internet. With the ActiveX SDK, software publishers have the tools they need to sign their code using industry-standard digital signature technology, once they have applied for and received their digital certificate.
For software publishers, code signing requires just six steps:
1. Download Internet Explorer 3.0.
Go to http://www.microsoft.com/ie/download/ and get the latest version of Internet Explorer. You will need Internet Explorer 3.0 Beta 3 or later to apply for your credentials and view your signed code.
2. Apply for credentials from a Certificate Authority.
Go to http://www.microsoft.com/intdev/signcode/ for instructions on obtaining a Software Publisher's certificate from a Certificate Authority (CA). Visit the CA's Web site for an on-line certificate application and fill in the requisite information. You will have the option of applying for an Individual or a Commercial Software Publisher certificate. If you are a commercial organization, please apply for the Commercial Software Publisher certificate; otherwise, apply for the Individual Software Publisher certificate. Once you have completed the application, it will take approximately one week for the CA to verify your information. At the end of this process, you will have credentials issued by the CA and a private key that you must store securely. You will need both to sign your code.
3. Get the ActiveX SDK.
Go to http://www.microsoft.com/intdev/sdk/" and download the latest version of the ActiveX SDK. The tools to sign your code are in the SDK. Consult the code-signing documentation provided in the SDK for additional information on using these tools.
4. Prepare your files to be signed.
If you are building any PE file (.exe, .ocx, .dll, or other), you need not do anything special. For CAB files, you need to add the following entry to your .ddf file before creating the CAB file:
Set ReservePerCabinetSize=6144
5. Sign your files.
You can now sign your .exe, or .cab, .ocx, or .dll file. (Currently, only 32-bit files can be signed.) Here is an example of how to sign:
signcode -prog myfilename -name displayname -info http://www.mycompany.com -spc mycredentials.spc -pvk myprivatekey.pvk
- myfilename is the name of the file that needs to be signed.
- displayname is the description of the file that will show up in the certificate.
- http://www.mycompany.com should provide the user with more information about the file being downloaded.
- mycredentials is the credentials file that was obtained from the CA.
- myprivatekey was the private key that was generated during the application process with the CA.
(Note that if you run signcode without any parameters, it will invoke a wizard that will step you through the signing process.)
6. Test your signature.
-
To test a signed .exe, .dll or .ocx file, run chktrust filename.
-
To test a signed CAB file, run chktrust -c cabfilename.cab
If your signing process was successful, this will bring up a certificate. Voila! Congratulations, you have just digitally signed your file. When this file is downloaded from a Web site by Internet Explorer, it will display the same certificate to the user. If the file is tampered with in any way after it has been signed, the user will be notified of the same and given the option of not installing it on his/her machine.
Software developers who have more questions should contact Microsoft Support Services or check the Web site, http://www.microsoft.com/intdev/signcode/. Questions regarding the certificate enrollment process should be directed to id-center@verisign.com .
Back to top
Okay, So Where Do I Go If I Need Help?
One place to go is the Web, to see a list of known issues. The Internet Explorer 3.0 team tries to keep this site updated with all the known issues affecting the current release: http://www.microsoft.com/ie/support/issue/ie3issue.htm. However, sooner or later there comes a how-to question. For those, you can try several places, depending on what fits your needs.
Paid Support for the ActiveX SDK
The ActiveX SDK is supported by Microsoft's AnswerPoint group (Product Support Services). You can ask questions through your Premier Level support contract. You can also ask questions through your Priority Level contract or purchase individual Priority Support incidents (essentially a one-time fee for one question). If you would like to understand more about Microsoft's paid support options, you can call Microsoft Support Sales at (800) 936-3500 from 6:00 a.m. to 6:00 p.m. Pacific time, Monday through Friday, excluding holidays. Please note that technical support is not available through this number. AnswerPoint Information is also available on the World Wide Web at http://www.microsoft.com/support/.
Free Support for the ActiveX SDK
Newsgroups are a great place for free peer support. As time and resources allow, Microsoft developers, program managers, support engineers, and test engineers visit the site to collect feedback and answer questions or correct misperceptions. They will lurk there often to read feedback, but they will not become actively involved unless a specific question is asked or a misperception is observed. This largely depends on bandwidth and time, which is greatly affected by shipping schedules. Some more interesting news groups for Internet Explorer are on microsoft.public.internetexplorer.
To access newsgroups, use your preferred newsgroup reader and enter the news server address as news://msnews.microsoft.com.
You can use the following URL to access the newsgroups directly from a Web browser: news:microsoft.public.newsgroup-name. The newsreader included with Internet Explorer version 3.0 supports multiple news servers; you can download the newsreader from
http://www.microsoft.com/ie/ie3/imn.htm.
Mailing lists are another good form of free peer support. An advantage to being on a mailing list is that this is where Microsoft will make early announcements of information on a given topic. Again, it is peer support, and Microsoft staff will often lurk there, but not send mail unless a specific question is asked. To learn more about mailing lists, please review http://www.microsoft.com/workshop/resource/mail-f.htm
- AnswerPoint Information Services provides you with easy access to the latest technical and support information for Microsoft products. You can access a variety of low and no cost Information Services 24 hours a day, 365 days a year. Many of the AnswerPoint Information Services make reference to the following technical content:
- Microsoft Frequently Asked Questions (FAQ): Here you will find quick answers to the most common technical issues on using your favorite Microsoft product.
- Microsoft Software Library: The Microsoft Software Library contains hundreds of free software add-ons, bug fixes, peripheral drivers, software updates, and programming aids for easy downloading at your convenience.
- Microsoft Knowledge Base: The Microsoft Knowledge Base is the same database that Microsoft support engineers use to answer technical questions. It is a comprehensive collection of more than 70,000 detailed articles with technical information about Microsoft products, bug and fix lists, and answers to commonly asked technical questions.
- Internet services (World Wide Web and FTP sites): Customers access the Microsoft FAQ, Microsoft Software Library, and Microsoft Knowledge Base more than 850,000 times each week on our Internet sites. Additional information, such as resource kits, white papers, and the latest information about Microsoft products is also readily available. It's easy to search through these technical sources to find what you need. If you're an Internet user, you can access this no-charge information (connect charges may apply) at the following locations:
- The Microsoft Network (MSN) and other online services: You can access the 70,000-plus Microsoft Knowledge Base articles and the Microsoft Software Library files through MSN and other online services. Additional technical information and community services, such as the Microsoft Frequently Asked Questions, Member-to-Member Bulletin Board Services, and links to the World Wide Web, are available on MSN. To access Microsoft support services on MSN, choose "Go To Other Location" from the Edit menu and type "MSSUPPORT".
- Microsoft TechNet: Microsoft TechNet is the front-line resource for fast complete answers to technical questions on Microsoft desktop and systems products. From crucial data on client-server and workgroup computing, systems platforms, and database products, to the latest on support for Microsoft Windows and Macintosh®-based applications, it's all on Microsoft TechNet. Microsoft TechNet is $299 annually for a single user license, or $699 annually for a single-server, unlimited-users license. To subscribe to Microsoft TechNet, call (800) 344-2121.
- Microsoft Developer Network (MSDN): The Microsoft Developer Network is the comprehensive source of programming information and toolkits for those who write applications for the Microsoft Windows, Windows 95, and Windows NT operating systems, or use Microsoft products for development purposes. Members with an MSDN annual subscription are kept up-to-date through regular deliveries of information, a newsletter, and other information sources. To subscribe to the Microsoft Developer Network, call (800) 759-5474.
- Microsoft Download Service (MSDL): The Microsoft Download Service contains sample programs, device drivers, patches, software updates, and programming aids. Direct modem access to MSDL is available by dialing (206) 936-6735. The service is available 24 hours a day, 365 days a year. Connect information: 1200, 2400, 9600, or 14400 baud, no parity, 8 data bits, and 1 stop bit.
- Microsoft FastTips: This automated service provides quick answers to your common technical questions via an automated toll-free telephone number, fax, or mail. To access FastTips or to receive a map and catalog, call the FastTips number listed for your product of interest:
- Desktop applications(800) 936-4100
- Personal Systems products(800) 936-4200
- Development tools(800) 936-4300
- Business Systems(800) 936-4400
- Per-Incident Electronic Service Requests: This service is available to Premier, Priority Comprehensive 35 and 75, and Priority Developer 35 customers. You can directly submit electronic service requests to Microsoft support engineers who receive the requests and work with you to resolve your technical problem. This capability also allows you to access Microsoft information databases so you can use the information to maintain and troubleshoot your Microsoft products independently.
Back to top