Category: Web Building

IIS not recognizing .aspx extension (404 error)

While trying to install a .NET application on a Windows Server 2003 box, I ran into a problem where the .aspx extension was not being recognized. Browsing .NET pages resulted in 404 (“page not found”) errors. Since the same set of application files had been installed on several other servers without incident, it seemed likely that there was something different about this server. The same version of .NET had been installed on all the servers, but never used.

I had assigned .NET 2.0.50727 to the application using the drop-down menu in the Application properties window in IIS Manager. But apparently, sometimes the .NET installer doesn’t register .NET to IIS, and it has to be done manually.

You can tell that this is the problem, if you have assigned .NET to the application, but when looking in IIS Manager > Web Service Extensions, it does not show up in the list.

Continue reading

The Usability of Windows 8

Just finished reading a fairly devastating review of Windows 8 by Jakob Nielsen. I have to wonder if some of the choices they made in designing the interface were forced because of patent considerations, considering all the air has been sucked out of the room in that regard by Apple.

Worth a read, if you are wondering what to expect of a tablet interface that has been shoehorned onto a PC. Perhaps it will make more sense if they start selling 70″ touch screen high-performance tablet PCs. We’ll all work standing up next to the wall or something, waving our arms. It will be better for our figures, at least.

Continue reading
Adobe Captivate

Getting and setting data from Captivate 6 for custom integrations

We use Captivate with our LMS both as standalone SCORM modules that communicate directly with the LMS, and as embedded quizzes inside custom learning modules. Communication of the Captivate score back to the learning module was done using a trick suggested by Adobe’s Andrew Chemey which involved redefining the built-in sendMail function Captivate used to send an email report of the quiz results.

Captivate 6 removed the built-in email functions, so we’re now using the very powerful Captivate API to do the same thing. The new API is very powerful and makes it much easier to get and set variables from outside the Captivate, using javascript.

Here’s how to get started:

Continue reading

Friction

Something I’ve been thinking a lot about lately, since we have been looking at learning systems, is the idea of friction. My definition of friction is anything that either lowers our expectations of the results we can get from a particular tool or process to the point that we either change our expectations of the results or abandon them altogether.

Examples of friction include: bad usability, frustration, unexpected results, bad user experience, steep learning curves, cognitive overload, lack of critical mass of the right participants, hardware problems (slowness, breakdowns, etc.) – in short just about any sort of obstacle. It is anything that gets in our way enough to make us change what we hope to get out of the process we are engaged in, even if only slightly. Friction plays a part in how we choose to use devices, apps, and services and even what route we choose on the way home.

Continue reading

.NET Error: httpRuntime requestValidationMode=”2.0″

If you get .NET errors that reference

<system.web>
<httpRuntime requestValidationMode="2.0" />
<!-- everything else -->
</system.web>

It means that the application you are trying to run has set the property requestValidationMode to function the way it acted under .NET 2.0, but this directive only makes any sense under .NET 4.0 or greater, and your website is not set up to use .NET 4.

You need to run the application in a separate application pool and set it to run under .NET 4.0 (which, of course, needs to be installed before it can be used).

Continue reading

Use BBEdit to replace the entire contents of multiple files

A few months ago, I needed to revise an HTML file that is used many times across a large website. Most of the key code associated with this file is contained in centrally-located includes, but as luck would have it, this time the entire file needed to be revised – even the user-customized bits. That meant that almost a thousand files would have to be replaced. Worse, they were not entirely the same, since they were customized by the users to some extent.

After checking a few of them, I found there were enough commonalities to serve as the basis of a regular expression search. They always started with a comment, like this:

<!--/ *v

Continue reading
Adobe Captivate

Adobe Presenter and Captivate: Hyperlinks don’t work after importing Powerpoint

Symptom: hyperlinks that worked in a Powerpoint file no longer work in the published Presenter or Powerpoint presentation based on that Powerpoint.

This is because Flash Security treats local content differently than the content on the internet.

The solution is to put the published files onto a web server and access it using the URL (like: http://yoursite.com/yourpresentation.htm).

Continue reading