Archive

Archive for April, 2010

How to deal with “Uninstallation failed” messages when trying to upgrade to the latest version of the Advanced Admin Console AddIn

April 29th, 2010 4 comments

Yesterday I released version 0.5.2 of the Advanced Admin Console AddIn for Windows Home Server. As always I noted that you should UNINSTALL any previous version before installing the latest release. If you tried to install the latest version over an existing installation of AAC, you may find yourself now in a situation where you can’t uninstall the previous version (getting “Uninstallation failed” messages from the console) and also can’t install the new release (getting “Please uninstall previous version first” messages from the installer).

Please follow these steps to fix this issue:

  • Establish a Remote Desktop Connection (RDP) to your server (if you don’t know how to do that, please see this short How-To).
  • On your server, go to control panel –> Add/Remove programs. Find the entry for the “Advanced Admin Console AddIn” and click “Remove” to uninstall it. If you are prompted to reboot your server, really REBOOT YOUR SERVER before installing AAC again.

You can now install the latest AAC version from the console.

It’s very likely that now both (old and new) versions of AAC are now listed as installed in the settings dialog:

duplicate_addin_entry

In order to clean up this mess you can use ASoft’s Addin Cleanup Tool. Download it and read the instruction from the Readme.txt (contained in the downloaded .zip file) carefully. You can use this tool to delete the orphaned addin entry for your previously installed AAC version (0.5.0 in this example).

Categories: FAQ

Advanced Admin Console AddIn: Version 0.5.2 now available for download

April 28th, 2010 12 comments

Version 0.5.0 Beta was released back in May 2009. Since then only one bug has been reported. So I think it’s time to remove the beta tag from the Advanced Admin Console.

This release fixes a bug which caused a console crash when AAC tried to load a corrupt custom link file (see this forum thread). Also the installer has been improved. It’s no longer possible to install AAC over an existing installation. In this case you now are prompted to uninstall any existing version first.

Download Advanced Admin Console AddIn Version 0.5.2.

CRC-32 5F6395D7
   MD5 505E4E3915CAFE96971ECCE9C3D38120
  SHA1 4757DF42CFDFF0EFDAE103F3BDFB08F2FD226AB4

Important: Before installing the new release, please UNINSTALL any previous version!

As always, feedback is welcome. See the support page on how to get in touch with me.

Categories: Windows Home Server

VAIL Dashboard improvements

April 28th, 2010 No comments

Windows Home Server Codename “VAIL” is the next version of Windows Home Server, now in public beta. Just like with the “Home Server Console” in the current version, it will feature a central place of administration. In order to emphasize the evolution the console has gone through it is now named the Dashboard.

As detailed in my AAC Feature Focus article back in January, the Home Server Console runs on the server itself and its user interface is displayed on a client computer over a remote desktop session. One disadvantage of this method is that the console window has a fixed size and any application that is launched from the console is trapped within the console window:

RegeditInWHSConsole  Regedit.exe run from the Advanced Admin Console on Windows Home Server

While the VAIL Dashboard is also running on the server the Dashboard client application now utilizes a new Remote Desktop Services feature called “RemoteApp”. RemoteApp integrates the Dashboard UI into the client’s desktop, thus creating a richer and more natural user experience:

RegeditInWHSDashboard  Regedit.exe run from the Advanced Admin Console on VAIL (Client’s Regedit in background)

As you can see, the Dashboard and the server’s Regedit window are not tied together, are fully resizable and they both appear on the client’s taskbar. Notice the contrast between the Windows 7/Server 2008 R2 window styles and the Windows XP desktop theme of the client while the Dashboard and its child windows are seamlessly integrated into the desktop.

Porting Advanced Admin Console to Windows Home Server Version 2 (Codename “VAIL”)

April 27th, 2010 9 comments

As of yesterday, the next version of Windows Home Server (Codename “VAIL”) is now in public beta. The new version brings a lot of improvements and feature enhancements. One area that has completely been overhauled in VAIL is the home server console, which is now known as the Dashboard. The extensibility model of Windows Home Server has been completely redesigned in “VAIL” so that all AddIns need to be ported to the new platform.

I have already begun porting the Advanced Admin Console AddIn to Windows Home Server “VAIL”:

AACforVail

There’s still a lot of work to do, but I hope that by mid-may I can put up a public beta version for download.

WHS Developer Tip: How to communicate between your SettingsTab and your ConsoleTab

April 8th, 2010 3 comments

As an avid Windows Home Server AddIn developer you probably followed the steps from the Windows Home Server SDK which explain how to implement your own console tab and a settings tab for the WHS console settings dialog.

Now when the user makes changes to the settings on your settings tab and ultimately clicks OK or Apply you may need a way to notify your console tab of the new settings.

settings_notify

The easiest way to accomplish this is by using a singleton object which provides the necessary means of communication:

public sealed class ChangeNotifier {
    public event EventHandler Changed;

    private ChangeNotifier() {
    }
    public static readonly ChangeNotifier Instance = new ChangeNotifier();

    public void Notify() {
        OnChanged(new EventArgs());
    }

    void OnChanged(EventArgs e) {
        EventHandler handler = Changed;
        // Make a temporary copy of the event to avoid possibility of
        // a race condition if the last subscriber unsubscribes
        // immediately after the null check and before the event is raised.
        if (handler != null) {
            handler(this, e);
        }
    }
}

Simple enough! Now we can access a common instance (the singleton) from everywhere in our code by calling on ChangeNotifier.Instance. Note: If you’re not familiar with the singleton design pattern you can read more about it in this Wikipedia article.

Now there’s two things left to do: First we need to subscribe to the ChangeNotifier’s Changed event in our console tab and second we have to call the Notify() method (which will fire the Changed event) from our settings tab when setting changes are committed.

Place this code in your console tab:

ChangeNotifier.Instance.Changed += new EventHandler(ChangeNotifier_Changed);

void ChangeNotifier_Changed(object sender, EventArgs e) {
    // TODO: Apply changed settings to your console tab here
}

And this line of code could be the last statement of your ISettingsTab.Commit() implementation:

ChangeNotifier.Instance.Notify();

This is pretty much it. Every time the user clicks OK or Apply on the settings dialog of the Windows Home Server your ISettingsTab.Commit() method is called where you now call Notify() on your ChangeNotifier singleton. This will raise the Changed event which will be handled by your event handler in your console tab (or any other class in your addin) so that you instantly can apply the settings changes the user has just made.

Related Posts with Thumbnails