How to Export an SDK from Microsoft Windows CE Platform Builder 3.0 to eMbedded Visual C++
Summary: This paper explains how to export a software development kit (SDK) from Microsoft® Windows® CE Platform Builder version 3.0 and install it on a computer for use with Microsoft® eMbedded Visual C++® (4 printed pages)
Microsoft Windows CE Platform Builder version 3.0 enables you to create a customized Windows CE–based platform for an embedded device. After you have created a platform, you can use Platform Builder to export a software development kit (SDK) based on your platform. While SDKs are language-specific, once an SDK is “rolled” (i.e., built and exported), independent software vendors can install it and write applications for your platform using Microsoft eMbedded Visual C++ or eMbedded Visual Basic®. Furthermore, the SDK export feature is both generic and extensible, which means that you can also create your own dynamic-link library (.dll) and use it to roll SDKs for other programming languages and development environments. This discussion focuses on exporting an SDK for use with eMbedded Visual C++.
When you export an SDK, Platform Builder automatically incorporates all the necessary context data for the target language. In the case of eMbedded Visual C++, Platform Builder automatically incorporates the necessary headers and libraries for the modules and components that make up your platform in to the SDK. Given the great flexibility of the SDK roller, you can choose to incorporate which features you need to tailor your SDK to your audience and the desired size of the resultant executable (.exe) file.
Another benefit of the SDK roller is that it creates a customized HTML Help file that indicates which application programming interface (API) elements are supported by your platform. When the SDK is installed, this customized reference file appears as a separate, top-level node in the Help collection of the eMbedded Visual C++ integrated development environment (IDE).
The result of the SDK export process is a self-extracting .exe that contains the SDK for your platform. A developer can run the .exe to install the SDK; the platform subsequently appears as a target platform in eMbedded Visual C++. By providing all of the necessary context information, Platform Builder removes the guesswork from porting platform data to a development environment.
This paper assumes that you have used Platform Builder to create a custom Windows CE platform and are ready to export an SDK. For information about creating a custom Windows CE platform, see the Platform Builder documentation.
Before exporting an SDK, there are some issues of which you ought to be aware. First, in configuring a platform, the application needs something to which it can link. To this end, the platform headers for the operating system (OS) components must be generated. Usually, this is a transparent part of the build; however, if you try to roll an SDK before the platform has been built, you will get an error message indicating this step must be complete before the SDK can be exported.
Second, Platform Manager is the communications technology that manages how a desktop computer communicates with a target device. It operates through eMbedded Visual C++ to download applications and platforms to your target device, and connects your target device to the remote debugging tools that are available on the desktop computer.
Platform Manager enables original equipment manufacturers (OEMs) to create a custom transport layer to further tailor the SDK. For instance, you can include a custom protocol for other technologies, such as small computer system interface (SCSI), and then create a SCSI export of the SDK.
Once installed, the SDK relies on the host-target relationship provided by Platform Manager to give the SDK target platform the ability to communicate with an actual target device.
- Choose Export SDK from the Project menu, and indicate eMbedded Visual C++ as the development environment your SDK supports. The Export SDK Wizard opens.
- Click Browse to navigate to the End User License Agreement you wish to include and then click Next.
Note Platform Builder automatically includes a license agreement, which is necessary to protect the intellectual property rights of Microsoft components. To protect your own intellectual property rights, you must include your own license agreement as a text (.txt) file. Platform Builder attaches custom license agreements to the end of the Microsoft license agreement. When installing your SDK, users will be presented with both agreements as a single document, and must accept both prior to completing the installation.
- Indicate the features your SDK will support by checking the appropriate box, or browsing to the location of your custom .dll, and then click Next. Platform Builder 3.0 gives you the option of including the following APIs with the click of a button.
- MFC Application
- MFC ActiveX® Controls
- ATL ActiveX Controls
- Console Applications
In addition to providing support for Microsoft APIs, you can include custom APIs and Help documentation. In the Additional Files section of the Export Windows CE—Select Configuration dialog box, simply type the name of (or Browse for) the files you wish to include.
- Review the summary of the configurations that will be exported. This is the step to determine whether you want to export an SDK with optimized code—a Retail export (the default), or one with full symbolic information to aid in debugging—a Debug export. Configurations will be displayed only for the targeted CPUs. To make changes, select the appropriate line, and then click Details. When you are finished making changes, click Next.
- Indicate transport protocols. You can use the built-in protocols (PPP, TCP/IP, or the dynamic ActiveSync®), or you can include a custom protocol by clicking Add.
- At the Installation dialog box, type the directory in which Platform Builder should place the SDK .exe, and then choose Next to start the process. Platform Builder creates the SDK .exe, and names the file with the same name as the platform; for example, Platform Builder creates the CEToaster.exe SDK for the CEToaster platform.
- Choose Finish in the Export Windows CE SDK dialog box to complete the export process.
Application developers can import an SDK created in Platform Builder into eMbedded Visual C++ simply by running the SDK .exe file. They can then use the SDK to create applications that run on the platform from which the SDK was exported.
Once installed, using an imported SDK is as easy as selecting it as the target platform in the eMbedded Visual C++ IDE.