Skip to main content


IIS in Windows 10 VirtualBox guest has VirtualPath on Ubuntu 16.04 VirtualBox host

"Connect as"... lets IIS in VirtualBox Guest deliver files from a ZFS disk on Ubuntu 16.04 VirtualBox host

( artwork credit to Theo Junior )

This is the system:

Host Operating System: Ubuntu 16.04 LTS
VirtualBox is installed on this host.

Guest Operating System: Windows 10 Pro
Microsoft IIS is running in this guest.
Drive C: with \Windows is a .VDI VirtualBox drive.  IIS is happy to serve any files from a regular .VDI or .VDMK disk.

However 500GB+ project files are stored by Ubuntu on a ZFS disk (in case-insensitive mode by the way).  These files are available on both systems in various ways for different purposes.  

For editing purposes, a VirtualBox shared folder surfaces the project files as Drive D: but those files are not available for use by the part of IIS that serves up files over http.  (They can be seen by IIS Manager because of the way VirtualBox Guest Additions works, but not at the time the worker process needs to get them.)  

For http server purposes, an Ubuntu Network S…
Recent posts

Solved: low-graphics mode on Ubuntu 16.04 with amdgpu-pro on Dell Precision 7510

Problem: stuck in the well-documented loop with error message "The system is running in low-graphics mode" on Ubuntu 16.04 LTS on a bare metal Dell laptop.

This started for me when my Ubuntu 16.04 system froze.  After restart, I tried to install system updates via the "Ubuntu Software" GUI.  That seemed to hang at roughly 50% complete, and I rebooted at that point.  Thereafter I could not get out of the low-graphics-mode situation for many hours because I could not find anyone with exactly the same problem.

The common tip about getting into the alternate terminal window was critical.

Ctrl + Alt  + F1

There are many posts about the low-graphics mode error from people with nvidia cards.  I eventually found the syntax to check which video card was in my system and it was not nvidia.  It was an AMD graphics card which Dell sold me in 2016 as an option on a Dell Precision 7510 laptop.

lshw -c video

product: Venus XTX [Radeon HD 8890M / R9 M275X/M375X]
       vendor: Advanced M…

Error Code 0x800700c1 on IIS on Windows 10 Pro

Alert on June 13, 2017
New App Pool unexpectedly defaults itself to Win32When you use IIS Manager to make a new Application Pool, it defaults to win32 not win64 on Windows 10 Pro.  This, of course, leads to IIS Server Error 500 with Error Code 0x800700c1, if you are in fact loading custom win64 ISAPI extensions.

Solution: go into Advanced Settings for the App Pool and toggle True to False for enabling 32-bit.

This seems to me to be a new/opposite behavior in IIS Manager.  I am not sure when it started but it must have been fairly recently.

This is the detail that I picked up today:
Detailed Error Information:

Module          IsapiModule
Notification  ExecuteRequestHandler
Handler         ISAPI-dll
Error Code      0x800700c1
Requested URL   http://localhost:80/scripts/runisa64.dll?r:version
Physical Path   D:\Apps\HREFTools\WebHub\bin\whRunner\runisa64.dll
Logon Method    Anonymous
Logon User      Anonymous

Windows Server 2016 Nano - In Practice on AWS EC2

I have decided NOT to use Windows Server 2016 Nano at this time. The following explains what I got working, and where I got stuck.  

I wanted to run custom Windows services compiled with Delphi for win64, and have them serve dynamic web content through IIS using a custom ISAPI extension, as I do on Windows Server 2012 and 2016.

I wanted to work with standalone Nano servers, without being in a corporate domain or using Active Directory.  i.e. tcp/ip not "computername" hook-ups.

I used AWS EC2 to launch my Nano instances for testing purposes.  That saves the difficulty of making the VHD image etc.  It introduces other challenges however, because the starting point is determined by Amazon.  I thought IIS would be included by default but it is not.  

I already had some Windows Server 2012/2016 systems running on EC2 in Oregon. Those all have normal remote desktop access, with full GUI.  It is essential to launch the Nano instance in a network such that you have a "local" c…

Windows 10 Visual Elements incl Start Menu Tiles for Native Desktop EXEs compiled with Delphi

This is a summary of what is needed to make a native Windows desktop EXE (compiled with Delphi or any compiler other than Visual Studio) appear with scaled logos and icons throughout Windows, especially in the Start Menu and in File Explorer.

1. The ICO file.This factoid is based on the Main Icon Group in Delphi, bds.exe, which you can examine with XNResourceEditor or Resource Hacker.

Build an ICO file containing your program icon in all these sizes and color depths. Use that icon when you Project > Build by associating it with the project.  In Delphi: menu Project  > Options, Application.  Do this for at least the target platform combined with Release, e.g. Win32 Release and/or Win64 Release.  Load your icon.  Repeat for other targets as necessary.  Project > Build each one.

2. The visualelementsmanifest.xml fileMake a file named ____.visualelementsmanifest.xml file where the ____ is replaced with the name of your EXE.  So for MyGreatApp.exe it would be MyGreatApp.VisualElement…

Windows 10 upgrade success after error 0x80070070 - 0x2000C

This post documents one way to successfully get past error 0x80070070 - 0x2000C with the Windows 10 upgrade process.  Your mileage may vary.

First, the problem.  I used the Media Creation tool to make an ISO  and cleared enough disk space that the installation from ISO was willing to proceed.  I had started from a Windows 7 Pro system, and I used Virtual Clone Drive to mount the ISO.  I was also running this machine inside VirtualBox and had to uninstall the Guest Additions and change the machine type to Windows 10.  All that worked.  The problem was that after the Win10 upgrade was in process and in fact almost complete, it reverted itself with an error message: 

We couldn't install Windows 10
We've set your PC back to the way it ws right before you started installing Windows 10.

0x80070070 - 0x2000C
The installation failed in the SAFE_OS phase with an error during APPLY_IMAGE operation. 

After some research, I found two potentially valid reasons for the trouble.  1, possibly corru…

Using OpenSSL on Windows to Sign a File Upload Policy for AWS S3

DocsThe authoritative reference for uploading files directly from a web browser to an Amazon S3 bucket is here on Amazon and a nice example with further tips is here, since 2008.  

This post concerns the steps 1-2-3-4 for signing the policy, and doing it with OpenSSL.exe at a Windows cmd prompt.

1. Encode the policy by using UTF-8.  
If you are lucky enough to be able to express your policy in English, then you can use notepad to save your JSON code to a simple Ansi file.  Nothing further required.

Match your utf8 filename to the one you specify in the BAT for step 2 below (inputfilespec).

2. Encode those UTF-8 bytes by using Base64.
A sample BAT file for doing this follows. Please adjust paths and filenames to something reasonable on your own system.  All filenames are arbitrary except that you need to make sure that the output from step 2 ends up as the input to step 3 below. 


set  inputfilespec=showcase-upload.policy.utf8.json
set outputfilespec=showcase-viaopenssl.base64.txt

:: cha…