It Just Works

As a technical writer, I often say that no one notices when the documentation is good, but everyone notices when it’s bad. The same can be said of data security. As you chug on day after day, uploading files, downloading files, copying files … everything “just works.” You don’t think about all of the things going on behind the scenes: firewalls, virus scanning, virus blocking, alerts about suspect files and suspect connections, servers going down, maintenance updates, security patches, and so on. At least, you hope you don’t have to think about those things. You expect your IT team to be on top of that. Yep, no one notices when all of that “just works,” but when it stops “just working,” EVERYONE notices.

At home, you don’t have an IT team. You need to be smarter to protect your own security. Even if you don’t do banking on your computer and all you do is Facebook and email, you still have to think about security. Most commonly, you’re going to have “harmless” malware that tracks your browsing habits, what you type into forms, and so on for the purpose of marketing. Other bad guys can use this information for identity theft. The worst-case scenario of course is that a sneaky virus will be installed on your computer that turns it into a “brick” that requires your neighbors’ son who lives in their basement to fix it for you. These sorts of viruses probably benefit computer manufacturers the most, because many people will just shove the old, bad computer in a closet and use that as an excuse to buy a new one.

So what can you do? The most important thing you can do is to install the regular Microsoft and Adobe updates/patches, which are often released for the sole purpose of fixing a security problem. And pay attention to manufacturer’s “End of Life” policies, which means after a certain point, they are no longer upgrading or patching that software, making it more attractive to hackers. Install a brand-name antivirus app on your computer and keep it updated. Make all of these updates (Microsoft, antivirus, etc.) automatic and occur during times that you don’t expect to be using your computer, such as while you’re asleep or at work.

If you are really uninformed regarding regular computer maintenance, then there are two things you can do: pay the money to have someone regularly clean up your computer for you, or buy an Apple computer, which is made for people who don’t know and don’t want to know how to maintain a computer properly. Actually, there are even more options these days for those whose only use for the computer is Facebook, email, picture sharing: some tablets, mobile phones, Chromebook, and so on are “locked down” so they are updated automatically.

You’ll still need a mobile antimalware app, though (such as Lookout). And you still need to cleanup temp files. Your computer needs a part of memory (RAM) and maybe hard drive space just to display all the interfaces and to run services in the background. If the hard drive and RAM are clogged with remnants of files that aren’t being used, it’s harder for the computer to run active apps. You can clean it up yourself if you know what to delete (cookies, web history) and what not to (system files). An app the IT guy I know showed me is called CCleaner. They have a free and a paid version that you can use to clean up temp files, cookies, web history, and so on.

Maintaining your computer is like maintaining your house or car. You can keep your computer running well for a long, long time if you regularly clean up your computer, install updates, and install protective apps. If you ignore it until there is a problem, it can be much more expensive.

Creating JavaHelp with RoboHelp 10

When you generate JavaHelp with RoboHelp, RoboHelp has to “know” where certain Java files are located. You’d think that would be as simple as pointing to the locations within RoboHelp’s interface, but it’s not. Instead, I have to edit the computer’s Environment Variables to point to JAVA_HOME, JAVAHELP_HOME, and JHHOME, and I have to edit the RoboHelp “SingleSource” registry settings.

The company I work for is really great about providing me with the resources that I need to do my job effectively. Two of the things every technical writer ALWAYS needs is more RAM and more storage. I’ve worked here 6 years and I’m on my fourth computer upgrade, because of the need to add more RAM, a bigger hard drive, or a new operating system. The downside of this is having to reconfigure my computer four different times. For the average “knowledge worker,” reconfiguring the computer is no big deal. You might have to set up Microsoft Word with the settings and templates that you use most often, copy files from the old hard drive to the new, etc. If you use RoboHelp, it’s not always so simple. This is especially true if you have to generate JavaHelp.

RoboHelp uses a file named java.exe to generate JavaHelp and a file named hsviewer.jar to open the JavaHelp so that you can view it after you generate it. RoboHelp also uses several other JAR files, and you must tell it where they are. To do this, you must edit the computer’s Environment Variables and Registry settings.

CAUTION! If you have never edited the Environment Variables or the Registry on your work computer, I suggest that you get your IT department involved in this process. After all, if you break it, they’re the ones who will have to fix it.

(The procedure below is for a Windows 7, 64-bit computer. Your OS may differ, but the steps will be very similar.)

To get RoboHelp to generate JavaHelp, this is what I do:

  1. Download the latest JDK from (Because hackers LOVE to screw with us, the JDK is updated frequently.)

  2. Install the JDK and note the location in which the JDK is installed. For this procedure, let’s say it’s installed at C:\Program Files\Java\jdk1.7.0_25.

  3. If JavaHelp 2.0 is not in the JDK, you can download the JavaHelp system build from (Right-click “here” at the very bottom of that page, then save to your hard drive.)

  4. Extract the files from the ZIP file, and then copy the folder named jh2.0 to the root of C.

  5. Open the Control Panel (Start > Control Panel), then click System.

  6. On the left side of the Control Panel, click Advanced system settings. The System Properties dialog box appears.

  7. Click Environment Variables. The Environment Variables dialog box appears.

  8. Under User Variables, edit or create JAVA_HOME, JAVAHELP_HOME, and JHHOME as follows:

  • Set JAVA_HOME to C:\Program Files\Java\jdk1.7.0_25 (or current version)

  • Set JAVAHELP_HOME to C:\jh2.0\javahelp

  • Set JHHOME to C:\jh2.0\demos\bin

  1. Under System variables, scroll down to and click Path, then click Edit.

  2. Within the Path statement, add or edit the following paths. (Add a semicolon between paths, no spaces. You can just add it to the end if it’s not there already. Copying the Path to a Notepad document might help if it’s a long path.)

  • C:\Program Files\Java\jdk1.7.0_25\bin (JAVA_HOME has to point to the folder that contains java.exe)

  • C:\jh2.0\demos\bin (JHHOME has to point to the folder that contains hsviewer.jar)

  1. Click OK to save the changes.

  2. Click OK to close the System Properties.

  3. Close the Control Panel.

  4. Click Start, then click Run, and type regedit.exe in the Open box. The Registry Editor appears.

  5. Expand nodes until you get to the following node:


Creating JavaHelp2

  1. Double-click to open each item in the right pane to edit the data, as needed. They should read as shown below. (Edit JavaHelpJdkHome and JavaHelpJdkVersion to reflect the installed version. This will change when you install new versions of Java.)

  • JavaHelpHome = C:\jh2.0

  • JavaHelpJdkHome = C:\Program Files\Java\jdk1.7.0_25 (current version, as above)

  • JavaHelpJdkVersion = 1.7

  • JavaHelpRunTimeFiles = javahelp\lib\jhall.jar;javahelp\lib\jhbasic.jar;javahelp\lib\jh.jar;javahelp\lib\jsearch.jar;demos\bin\hsviewer.jar;

  • JavaHelpVersion = 2.0

(I’m not sure what the effects of the other items are on generating JavaHelp, but I know that I had to edit the ones above to get RoboHelp to generate JavaHelp.)

  1. I always reboot the computer just to be sure the new values are read in.

  2. Open your RoboHelp project and attempt to generate JavaHelp. If RoboHelp pauses to ask you questions about JavaHelp, that means something is not right. Make sure your Path statement points to the correct location, and JAVA_HOME, etc. are all configured correctly.

End-User Collaboration and Feedback

For the products that I document, the help documentation is installed and/or available as WebHelp for every product and every customer. They don’t have to go online to find it; they just click in the product to open the Help. This makes the help topic the perfect place for a feedback form—on the same page where they were looking for or found the help they needed to use the product to its full potential. Why do I want a feedback form on every help topic? Enabling collaboration in Help allows users to contribute and share information. Their feedback would allow me to refine and improve the Help and product usability, and assist with sales/marketing efforts. Users’ shared comments improve the Help experience, and gives the user a sense of “ownership” of the Help content (which means they’ll use it more).

Getting Management Buy-In for Feedback

Managers are often loathe to spend money for a technical writer, let alone for user feedback. Explain to your manager the many benefits to user feedback. Not only can it improve the help itself, but also can serve as a marketing tool. (i.e., who is using our product help, and therefore, who is using our product?) Comments can be used in marketing materials (minus any identifiers like full name or company name).

This is from

Business Benefits and Risks of UGC for Technical Documentation

User-generated content can help businesses reap additional benefits. Reader commentary can be instrumental in identifying the concerns of users. Based on user feedback, we can modify content to suit the needs of our audience. Creating more effective technical documentation also reduces the cost of helpdesk support. At the same time, UGC can serve as a strong marketing tool. A product’s audience can best reflect its proper market position. Good testimonials that a product’s customers or users have provided can work wonders in increasing its user base—delivering on the promise of greater adoption.

Feedback Management

Certain websites exist for the sole purpose of feedback form management and tracking, with varying levels of complexity.

Adobe Forms Central allows you to design your own feedback form, and the responses are stored on their website. However, it’s not free if you want more than one form or more than 50 responses. Their “Plus” plan is $143.88 per year, which allows unlimited forms, with a max of 5,000 responses per form. You can view the form that I made (from their templates) here. Adobe provides a link to the survey that you can email, embed in a webpage, or even send via Twitter. In the administration pages, one page shows the comment and the respondent’s email address in a spreadsheet format. You can also export the responses to Excel. A Summary Report has charts and graphs of data gathered.

Survey Monkey is widely used and has free and paid levels starting at $204 per year. As with Adobe Forms, it involves linking to an external website.

I think Survey Monkey and Adobe Forms are more than what I need regarding Help usage, plus the jumping out to an external website with no tracking of which topic they were on when they decided to submit a comment is a problem.

MadCap Feedback integrates with MadCap Flare (competitor to RoboHelp) and works with their Feedback Server or MadCap Hosted Service. In addition to comments, it allows you see which search keywords were entered by users. From their user guide:

“Let’s say that many users are entering the search term “sofa.” Unfortunately, you have not used that word in your project, so users are unable to find the topics that they need. However, you have used a similar word, “couch.” Therefore, in the Synonyms Editor, you enter “couch” as a synonym for “sofa.” The next time a reader enters “sofa” as a search keyword, topics containing the word “couch” will be returned in the results.”

Of course, I can do something like this in RoboHelp, too—IF I know which words they are using and not finding what they need. MadCap Feedback can work with any WebHelp (not just Flare projects). This app would provide a more detailed view of how our customers use our software and the Help files. The advantage to MadCap Feedback is that it was developed for exactly this purpose. They have group and one-on-one training ($$) for installation and setup. But Feedback is not cheap: $2,499. (Their Hosted Service is a monthly charge.) I imagine this would be something to try after trying a free or low-cost method to determine if I really want to do this.

Self-created and self-managed form

The alternative to online forms/survey managers is to create my own form, manage the inflow of emails, generate reports, and create/manage the database myself. If we have a tool that we’re currently using that could be expanded for this purpose (and includes reporting) that would be even better.

The design of the form would depend on the information that we want to gather, such as:

  • Was the information easy to find?
  • Was the information clearly represented?
  • Did this information solve your problem?
  • What can we do to improve this information?
  • What were you searching for?
  • What search words did you use?
  • Overall, how would you rate this Help documentation?

Of course, that’s too many questions. At the very minimum, I want to a display a comment box and ask them to leave a comment. When they click Submit, it would send an email to a dedicated mailbox, not to my mailbox. I would add something like this, at the bottom of every help topic:

Feedback Form

I already have the text above at the bottom of every help topic, plus “Leave compliments or complaints regarding the help in the User Forum.” But I’ve never found anything in the User Forum specifically for the Help. I think allowing users to comment directly in the topic, versus linking to yet another web page, would encourage more users to provide feedback.

Do you ask for user feedback? If so, how do you do it? If not, why not?

Working with Programmers to Create Context-Sensitive Help

My main job, which I consider “real” technical writing, is creating the help that is installed with an application. Context-sensitive help (CSH) provides a better user experience than always opening an intro topic. That is, a user is trying to modify a site and isn’t sure what to type in a particular field, so he clicks Help. A help topic appears that describes exactly how to modify a site. That’s CSH; the topic appears based on the context in which the user clicked Help.

The developer/programmer can add “help hooks” and “help IDs” (code) into the code for the Help button. (He also has to add code to call the help—tell it which file to use for the help, what to display, blah, blah, blah, but I’m not a programmer.) So if the developer is creating a dialog box named New Site and adding a Help button, he might add a help hook named HIDD_NEW_SITE with an ID of 0x204FF*. When the developer is done coding, ready for QA to test the application, or the technical writer nags him that she needs the help hooks, he can export a file from his coding application with a .H, .HH, or .HM extension**. And with that, the developer’s contribution to the Help is complete–unless he made mistakes or forgot to add some help hooks. (Alternatively, the technical writer can define help hooks for each topic, create the .H, .HH, or .HM file, and send it to the developer to add to the code.)

When I’m writing new help topics or editing existing help topics, I install the latest build (in development) of the application on a virtual machine (VM) so I can write more intelligently about what it actually does when I click, right-click, and so on. In some ways, I’m doing “QA” on it and writing up bugs that I find, but I don’t do a formal QA. (We have smarter people than I to do that.) One of the things I do test for, however, is whether the help appears at all and, if so, if the topic is relevant (context-sensitive). I can tweak the CSH files to link a specific help hook to a different topic, if needed.

Often the name used for the help hook is not very intuitive (HIDD_AFTER_INSTALL7) , so I need to ask the developer which ID is assigned to which dialog box. First, I create a spreadsheet that lists the dialog box, the help hook, and the topic that I think should appear for that dialog box. (Remember, that the developer may not have ever seen the interface, just code and COM API interactions.) I then email the spreadsheet to the developer and ask him to fill in the blanks. Seems simple, right?

Sometimes a developer has no clue what I’m talking about, either because he’s never worked with CSH before, he didn’t read the email, or English is not his first language, and so he responds that the error is on my end. If this happens to you, use your “detail oriented” technical writing skills to verify that the following is true:

  • You have the correct help hooks file (.H, .HH, or .HM). On one project, we had 5 different HM files and I had no idea which one I was supposed to use, and neither did anyone else. (The most recent one? Not necessarily.) The fix for that is ask them to export a new one. If you already reference it in the help authoring tool, ask if they can name it the same, to make your life easier.
  • Each hook in the .H, .HH, or .HM file has “#define” and a space in front of it. Sometimes they don’t.
  • Your map file or alias file (the .ALI file) is formatted correctly and ALL of the correct hooks linked to relevant topics. (You don’t have to link every ID in the .H, .HH, or .HM file, just the ones that are assigned to Help buttons.)
  • The ALI and .H, .HH, or .HM file are properly referenced in the HHP file.

If you don’t edit the ALI file directly, but prefer to do it in RoboHelp, make sure RoboHelp still “sees” the hooks. When I copy and paste an updated version of the file into the project (overwriting the existing, same-named file), RoboHelp sometimes forgets it. I don’t know why. Of course, if this a new file, you have to import it–RoboHelp doesn’t know the file exists if you just paste it into the project. You must import it to add it to the project files.

After you’ve fixed your mistakes (or you’re positive you haven’t made any mistakes), generate the CHM again and paste into your VM with the latest build installed. (When you generate the help, you can view the log file to see if there are any errors that you can fix.) Test every Help button, using your spreadsheet as a reminder of which dialog boxes have Help buttons. You should test every button every time, because sometimes you break things unintentionally when you’re fixing other things! If you’ve decided everything is working on your end, ask/email the developer again, ask him to review your worksheet, and point out the exact help hook(s) that you believe are broken. (Developers are busy people and usually get paid a lot more than you do, so make it easy for him to scan the email to see what you’re asking him to do.)

Microsoft HTML Help Workshop (HHW.exe) is a utility to test that you have valid files. It’s an old app that Microsoft no longer updates, but it still does the job. In HHW, specify the CHM you want to test, then click Tools > HTMLHelp API. In the dialog box that appears, select HH_HELP_CONTEXT and then type in a map ID (decimal or hex works).  When you click OK, the topic that you want to appear for that map ID should appear. If the wrong one opens or nothing opens, you need to fix the .ALI file. If a message appears that says something like “HH_HELP_CONTEXT called without a [MAP] section” that means something is broken. (Duh.) You can decompile the CHM (in HTML Help Workshop) and see that there is, indeed, a [MAP] section, yet it doesn’t “see” it. Why not??

If you get that message, ensure that the .ALI and .H, .HH, or .HM are properly referenced in the .HHP file. Computers aren’t very smart—you make one mistake and they get confused! (One time I had to generate WebHelp, before the HHP file would update. I wasn’t about to manually add a bunch of files! I do merged helpsets, so I need a valid HHP for that.)

This is important to understand: if your CHM works in HTML Help Workshop, that does NOT mean that it works in the application! All it means is that the .ALI file and CHM are properly formatted and a topic opens when you provide the hook. Period. For example, you could have two of the help hooks reversed or wrong topics referenced, but the CHM will still “work” in HHW. The only way to be sure your CHM works in the application is to paste it into the installation folder (or wherever the existing CHM is stored), and then try it in the application. Your application will have to be closed to do this; otherwise, you’re trying to overwrite a file that is in use.  In my last experience with “broken” CSH, the developer had forgotten to add hooks to the dialog boxes that didn’t open the correct help. He kept insisting that the CHM worked for him. After three emails asking him to please test it in the application, not in HHW, he finally accepted that it was broken in his code.

Usually the application is coded such that if a user clicks a Help button and there is no help ID assigned to it, the default help topic (e.g., Intro) will appear. So when that happens in my testing, that’s a pretty good clue that either there is no help hook or I didn’t add it to the ALI file. Don’t let the developer intimidate you. You might be doing something wrong, but if all he tells you is that the problem isn’t in his code (rather then telling you specifically what is wrong with yours), ask for more information. He should be able to tell you, “When I click the Help button on the New Site dialog box, this ID is triggered, but the CHM is opening the Intro topic.” You can then verify that the ID is in your ALI file and linked to the topic that you want to open. (If he had looked at your spreadsheet, he would have seen which IDs you were using for each Help button.) Of course, if release is happening soon, opening the Intro topic is better than having no help at all!

*Help hooks in the app are in hexadecimal (0x204FF). Help authoring apps like RoboHelp list them in decimal. If you want to convert the hex number to decimal, open Windows Calculator (click Start, then type calc.exe), click View >Programmer, type the hex number, then click Decimal. The number is converted to decimal.

**In this article, I’m talking about Microsoft HTML Help (CHM). The basic process is similar, but in JavaHelp (JH), the map file is simply called a “map file”–imagine that!–and it’s formatted slightly differently. This is how I learned how to write JH: I highly recommend buying the book (because knowing how JH works will help you fix it when it doesn’t work!), but this page  gives you the general idea if you just need a refresher:

My Standing Desk Project

I keep seeing blog articles for standing desks, so I’ve decided to throw mine out there.

I have made two attempts (so far) at making a standing desk. My first effort involved a wooden bench, which I made out of 1″x10″ pine shelving, and a laptop desk like you would use while sitting in bed. The laptop desk was not wide enough for my keyboard and mouse pad, and offered no space at all for resting my hand or documents.

Standing Desk v1.0

So I got rid of the laptop desk, and made the bench short enough to comfortably type and mouse on it. I found two mismatched monitor stands and put my monitors on them. The monitors are extended as high as they go and still aren’t tall enough.

Standing Desk v2.0

I put felt on the bottom of the legs to prevent scratching the cubicle desk, and I put contact paper, like you put in your cupboards, on top to prevent the keyboard from sliding off. I have my mouse pad on there also.

My biggest constraint is that I can’t alter the existing desk, which is built in to my cubicle. This was my process:

  1. The first step in designing my desk was to measure the distance from my elbow to the desk. That told me how high my desk had to be for good ergonomics. (Your forearm should be parallel to the floor when you’re typing.) My first effort was too high, because I didn’t take into account the thickness of the keyboard. So in my case, the height of the standing desk had to be the distance from my elbow to my cubicle desk, minus the thickness of the keyboard.
  2. Next, I had to decide how wide to make the desk. At first I was thinking it only needed to be as wide as my keyboard and mouse. But the laptop desk showed me that I needed room to the right of the mouse if I wanted to rest my hand, and I needed to room to the left of the keyboard for the same reason, and for documents. I also had originally planned to put both of my monitors on it (as shown in Standing Desk v1.0), so I measured the total width of them when they are side by side, which turned out to be plenty of room for the keyboard, mouse, both arms, and documents.
  3. And finally, I needed to decide how deep (from the front of the desk to the back) to make it. As I said, I wanted to put my monitors on it, too, but I have a couple of monitor stands I scrounged in the office, so they are working OK for now. The current depth is only slightly more than the depth of the keyboard.

The current setup works OK as is, but isn’t ideal. When I’m sitting (and the monitors are adjusted as low as they go), I’m looking up at the monitors, and when I’m standing (and the monitors are adjusted as high as they go), I’m looking down at the monitors. That’s not good ergonomics and definitely puts a strain on my neck and shoulders. When you’ve spent most of your career sitting at a desk, you have to work up to standing all day, so I have to set up and break down the desk often, which is a bit of an annoyance.

For the setup to be perfect, I need:

  • a drafting chair that can I can sit on at the same height as when I’m standing, so I can continue to work without setting up/breaking down the desk or adjusting the monitors
  • a taller stand for the monitors so that the top of the monitor is at eye level when I’m standing

My plan is to search Goodwill and other such stores to find a 30″ x 30″ end table. Then I can cut off the legs to the desired height.

If/when I build Standing Desk v3.0, I’ll let you know how it goes.

“This product is awful” usually means you can’t figure out how to use it

Documentation not only needs to educate your customers and provide on-the-spot troubleshooting assistance, but also can be used as a sales tool and a revenue generator. I’ve never been a fan of putting marketing-speak in technical documentation—that’s not what I mean by “sales tool.” What I’m saying is that providing good documentation allows prospective customers to more accurately ascertain whether your product meets their needs. With up-to-date online documentation, a prospective customer can quickly find the information he needs on his own. If your documentation doesn’t provide enough information, potential customers will find a vendor who does. A thoroughly documented product also gives the impression that the product is easier to use than your competitor’s, whose product documentation was written one Sunday morning by a developer needing to meet a release date. Good documentation before the sale gives the customer faith that the documentation after the sale will be as good. Companies that are consistently the winners in their industry care about educating their customers and prospective customers. Failure to properly document your product creates an opening for your competitor to capture that customer.

When someone says “this product is awful,” what they usually mean is that they can’t figure out how to use it. If they attempt to use poorly written documentation to figure it out, they are even more convinced that the product is bad. Good documentation results in happier, loyal customers and reduced customer support costs; customer support can spend more time providing higher value service and less time “hand holding” capable customers. Sure, good documentation can be expensive; but according to Forrester, the average call center call can cost a business as much as $50 per call. For technical issues, costs per support call can be as much as $150 per call. If customers can use the documentation or an online forum to solve their problems, the average cost is usually less than a dollar. In fact, Forrester’s research indicates that the average is about 10 cents per customer.

Most companies gather statistics on how many support calls are generated in a day. Based on the high volume of calls, they assume that the documentation is not being used. They fail to note how much customer support uses the documentation to help the customer. A large percentage of customers would rather call support, ask a specific question, and be told exactly what to do to fix their problem. This type of customer will never use the documentation unless they have to pay for phone support. Online help that allows the customer to provide feedback can provide statistics regarding not only how many people actually read that particular help topic, but also can tell you whether customers think the information is useful or a waste of their time. (Microsoft Support is a good example of this.) Product managers can use that feedback to improve the product and the documentation.

Some help documentation tools and formats allow for user feedback forms (“Web 2.0”), but having the ability to type comments into a form on a help topic is not enough. You also need a connection to a server that can store the feedback. With the right software, you can also view and print reports of which topics are used most often and what the comments are, which can tell product managers which areas of their application might need improvement to make it easier for users to understand.

Even though the products that I document use in-application help, I also provide online, web-based help. In that help, I could easily create a web form in which anyone who visits the topic could rate the topic and add comments that could improve the topic. Their comments would be visible to other users of the topic and, most importantly, to me. I could use their comments to improve the topic and the product manager could use their comments to improve the product. However, I don’t have the application that I need to manage the comments, store the comments, or report on the comments. Many companies won’t allow you to use a product that has a user feedback system or want to spend time creating their own automated user feedback system. So the best you can hope for is a user forum or a knowledgebase tool that allows user feedback, but that’s a manual system, doesn’t provide for reporting, and doesn’t tell you whether your help documentation is helpful or confusing.

One day, “Web 2.0” help with be the norm. For now, just keep plugging away at your help and hope that the feedback you do receive helps you improve your documentation.


Can’t Download Windows Updates

Keeping your computer’s operating system up to date is important to keep it secure and healthy. Microsoft frequently releases software patches that “patch” holes found in their software. Without these updates, you are leaving your computer open to hackers and viruses. However, if your Internet Security settings are set for highest security, Internet Explorer could be blocking your computer from being able to download those important Windows updates!

I work at a company that makes software. As new versions of the software are created—but before it’s released to the public—I have to install our applications on a “virtual image” and use them so that I can write about what has changed since the last time I used it. A version can have numerous builds before it completely passes quality testing and is good for release. Often there are minor changes that only a regular user—in this case, me—would have noticed. But before I install our software, I have to make sure the OS that I’m installing it on has all of the latest patches—and Microsoft releases new patches pretty much every week.

The virtual image that I use shares an IP address with my desktop, but the image cannot usually connect to the Internet, for security reasons. However, when I download patches, I have to connect the virtual image to the Internet. Not long ago, after an OS update, I was unable to download any more updates using Windows Update. Search after search turned up no help for why my Microsoft Windows image using Microsoft’s browser could not connect to and download its updates! One of the previous updates did something to Internet Explorer’s Internet security options. As usual, making it more secure added more inconvenience. But I eventually figured it out:

To enable Internet Explorer to download updates from*

  1. Open Internet Explorer, then click Tools > Internet Options.
  2. Click the Security tab.
  3. In the Select a zone pane, click Trusted sites.
  4. In the Trusted sites dialog box, clear the Require server verification check box.
  5. In the Add this website to the zone box, type, then click Add.
  6. Click Close to close the Trusted sites dialog box.
  7. Click OK to close the Internet Options dialog box.
  8. Click Tools > Windows Update to restart Windows Update.

If that was your only issue, you should now be able to connect to Microsoft and download the necessary updates. (But it’s never just one issue, is it?)

*The steps may be different on your computer, depending on your operating system and Internet Explorer version, but the idea is the same: add to the Trusted sites list.