Coming to a Seminar? Don’t Forget Your Laptop!
When you attend an OSR seminar that includes lab exercises involving driver development, you’ll need to bring a pre-configured laptop with you to do the labs.
The laptop setup requirements can vary depending on the particular class you’ll be attending. So please make sure to check with the OSR Seminar Team to determine the setup requirements that apply to your specific seminar.
This page describes the general laptop setup requirements, and are primarily designed for our WDF Core Concepts seminar. If you’ll be attending a different seminar, the requirements might be different. Check with the OSR Seminar Team well before the start of your seminar so you know what you’ll need.
We’re also not as strict about requirements for more advanced seminars as we are for the more introductory level seminars. For example, if you’re attending our WDF II (Advanced Implementation Concepts) seminar we still recommend you use the standard setup. But given that if you’re attending this seminar you’re an experienced WDF developer, we assume you know what you’re doing and we’re happy to have you use whatever development environment and tools you prefer. The only caveat (and it’s a significant one) is that our instructional team will not be able to help with anything other than our standard setup. So, if you need help debugging a problem and you’re using the Windows Enterprise WDK, building from the command line, editing with vim, and trying to debug your driver running on VirtualBox… you’re basically on your own to make all that stuff work during class.
Standard Laptop Setup Requirements
Each student must bring a laptop running Windows 7 or later with Internet access (either WiFi or hardwired is fine) and at least one available USB 2.0 port. We recommend a system with at least 4GB of memory and 60GB of free disk space.
While almost everyone’s laptop configurations work without any problem, we’ve occasionally seen laptops configured by Corporate IT departments with “security” software (network proxies, remote management agents, document management and tracking, access control, and the like) that have a variety of problems during the seminar. Some network proxies, for example, can make it impossible for the debugger (WinDbg) to download symbols that you’ll need from the Microsoft symbol server. Bottom line: If you have a choice, keep it simple.
In addition to the base Windows installation, you will need the following software installed and tested on your system:
- Microsoft Visual Studio 2015 with Update 3 – If you don’t already have this version of VS installed, you can download either Visual Studio Community 2015 for free, or a free trial of Visual Studio Professional 2015 or Visual Studio Enterprise 2015. The download links can be found on the Windows Driver Kit download page at https://msdn.microsoft.com/en-us/windows/hardware/dn913721.aspx. If you don’t already have Visual Studio installed we recommend you download the Professional Edition with Update 3. There are many versions of Visual Studio available, if you’re doing a new installation please be sure to install Visual Studio 2015 Update 3 only. If you already have VS 2015 Update 2 installed, you can use that as well. During the installation, be sure to install C++ and also select the (optional) component named “Windows 10 SDK.” This is very important, because failing to install the SDK can result in errors when you try to build some drivers and/or support applications using the WDK. Note that the Windows 10 SDK option can be a bit difficult to find, and in most versions we’ve seen it’s been buried under Universal Windows Development Tools, which itself is listed under the Windows and Web Development category.
- Windows 10 (V1511) Driver Kit (WDK) – This is a free download from http://msdn.microsoft.com/en-us/windows/hardware/dn913721.aspx. The WDK is a plugin to Visual Studio and therefore must be installed after Visual Studio has been successfully installed. If there are any installation options, elect to install everything.
- VMware Workstation Player 12.0 (or later) – This software is available from http://www.vmware.com/products/player. If you or your company doesn’t already have a license and you don’t qualify for the “free trial” of this product, you’re responsible for the retail license cost of $149 for this product (which is not included in the cost of your seminar). The VMware installation on your laptop will host a Windows 10 x64 virtual machine provided by OSR that will be used as the target system on which to test your drivers during class.VMware Workstation Pro 12.0 (or later) may be used in place of the VMware Workstation Player. In fact, if you’ll continue to do driver development using VMware after your seminar, OSR recommends you select Workstation Pro due to its increased functionality and flexibility over Player. But either version will work equally well during your seminar. The VMware VM that OSR provides for this class is simply a client VM image running Windows 10 – nothing else is installed in this VM.Please be aware that the names of the VMware products (that is “Player” and “Workstation Pro”) have changed several times over the past few years. The terminology above reflects the names that were current as of VMware V12. Contact the OSR seminar team if you have any questions about which VMware product you need to install.
Please be sure to test your installation of Visual Studio 2015 Update 2, Windows 10 WDK V1511, and the VMware product of your choice thoroughly before class begins. Detailed instructions for testing are provided below.
If it is not possible for you to provide a suitable laptop, or you have ANY questions regarding the required configuration, please contact our seminar team: seminars at osr.com.
Have Your Laptop Ready and Tested Before Class Starts
We know you’ll be super-busy at work before you leave for your seminar. But, do yourself a favor: Reserve an afternoon before you leave for your seminar to install the required software on your laptop, and to test that software.
If you leave the installation, configuration, and testing until you get to your seminar location, the chances are greater that something will go wrong that will be hard to fix. Internet connections at hotels aren’t always the greatest, right? Not to mention that we promise you that you’ll be tired after the first day of your seminar (the first day is almost always 100% lecture).
How to Test Your Laptop Setup
If you’re already familiar with Windows driver development using Visual Studio and VMware, you know what to do to test your installation to make sure everything is properly configured and working. If you’re new to Windows driver development, here are some steps that you can take to test your installation to be sure you’re ready to go for your seminar’s first lab session:
- Basic Validation: Start Visual Studio. From the VS “File” menu select “New” and then “Project”. A “New Project” dialog should appear and under “Templates” and “Visual C++” should be an entry named “Windows Driver” with several types of sub projects under it. If this is what you see, “Cancel” out of the dialog and proceed to Step 2. Otherwise check and re-check your VS and WDK installation before you do anything else. If you continue to have problems, contact the seminar team by email.
- Check the Debugger: Ensure that the Windows Debugger (WinDbg) is installed on your development system and that you can start it. You should find WinDbg in the directory %ProgramFiles%\Windows Kits\10\Debuggers\x86\ — You might want to put a short-cut in your tool tray to the file in this directory. Note that depending on how you installed the SDK, you may also have an entry for WinDbg in your Start screen. This will point to the version installed by the SDK.
- Build a Test Driver: The final test for Visual Studio is to build a sample driver using the WDK. For this test, you’ll build one of the starter “template” WDF driver projects. If you won’t be attending a WDF seminar, don’t worry. The goal here is just to test that Visual Studio and the WDK are installed and working. If you can build one type of driver, you’ll be able to build any type of driver we’ll be creating in class.For this test once again start Visual Studio. And, once again, from the VS “File” menu select “New” and then “Project”. A “New Project” dialog should appear and under “Templates” and “Visual C++” should be an entry named “Windows Driver” with several types of sub projects under it. Select “Windows Driver” on the left, and then “Kernel Mode Driver (WDF)” in the center pane, like you see below:Ensure that you have access to the path in the “Location:” box (if not, adjust properly). Click the “OK” button. Wait for the template project to be generated, as shown by the lower left side of the Visual Studio status bar:Once the project has been successfully created, ensure “Debug” and “x86” are selected as the Solution Configuration and Solution Platform, respectively. Then, right click the solution and select “Build Solution” from the pop-up dialog:Within a few seconds, the build should complete and the Visual Studio output window should indicate that the build is successful:If the build succeeds, you know that your laptop configuration of Visual Studio and the Windows Driver kit is ready for your seminar! Next, test your VMware installation.
- Test Your VMware Installation: If VMware installed without any errors, that only indicates that the installation is correct. You still have to make sure you can successfully start and run a virtual machine (VM). To test this, download and start a small VM of any operating system. We recommend something like the Tiny Core Linux VM that you can download from this link. Download the VM image (it’s a 12MB ZIP archive). Unzip the download (it’ll still be 12MB), and you’ll get a .OVA file. Then start the VMware product you’ll be using (either Player or Workstation), and open the downloaded OVA file the VMware “File… Open” dialog. This will decompress the OVA file and start it. The Tiny Core Linux VM boots in less than 5 seconds, even on a slow laptop.
VMware is particularly good about diagnosing incompatibilities and letting you know about any problems it finds. So, if you can successfully start the virtual machine, VMware works and you’re ready for your seminar!
If you have problems, check the steps carefully. If you can’t diagnose the problem on your own, contact the OSR Seminar Team and one of our engineers will try to help you.
Having Trouble? Undefined Symbols During Compilation? A Quick Note That May Help
If you didn’t manage to get the SDK installed properly as part of the Visual Studio install, you’ll wind-up with errors (includes for things like NTDDK.H will fail) when you try to build the sample solution. If you have this problem, try installing the Windows 10 platform SDK from this link. That’s helped at least two people (one here at OSR who was upgrading her dev box, and a student preparing for the WDF seminar). Whatever happens, don’t struggle too long by yourself. Drop the Seminar Team an email and we’ll try to get things sorted out for you.