Introducing The Nap App

•September 11, 2012 • Leave a Comment

When I started to travel to HP daily my little girl was just 2 weeks old. Needless to say that not all my nights were spent sleeping the necessary amount. So I started to appreciate the little commuting time on the train, but it was always kinda risky not to miss my station at Leixlip. Long story short I was looking for GPS based alarm apps, but I could only find a couple, and none of them was flexible enough for me. So I created the Nap App by last Christmas for myself. It took a while, but I managed to polish it up and send it in to the Microsoft Marketplace. So here it is for all of you:


1000-th download of Design Patterns App

•September 5, 2012 • Leave a Comment

I’m proud to announce that the developer niche

Design Patterns app

has reached the 1000-th download today!

Design Patterns for Windows phone updated

•August 24, 2012 • Leave a Comment

 Design Patterns windows phone has been updated.

There’s been criticism about the readability of the UI so now there’s an option to turn on or off the background. It also has gained a new tile image.

Here’s the marketplace link.:

And … Still waiting…

•August 17, 2012 • Leave a Comment

Now that I have 2 applications pending in the certification queue the latest news:

App publishing temporarily on hold.

They have fixed this yesterday, supposedly, but I can see my certification processes restart for the last 3 days every morning… c’mon guys!!!

When will they finally get their acts together in terms of their marketplaces???

And now that there will be a Win8 marketplace and an Office marketplace … I just wonder if this will be the Achilles heel of the otherwise very promising new systems.

InstallerGUI 2 Sample Explained

•August 15, 2012 • Leave a Comment

This is going to be a simple example of you can use the Install Manager library.

The goal:

Create a WPF application that executes installation/uninstalltion of an msi file.  It also has to be a single file application.

So the application will look like this:

It’s going to have a button that starts the installation/uninstallation, when the installation is happening a large busy indicator will animate, and a status info will inform us whether install or uninstall is executed, while on the background the status messages of the installation process are logged. Once the install/uninstall is finished the busy indicator disappears and the status message informs us that the process is finished.
Continue reading ‘InstallerGUI 2 Sample Explained’

About the bootstrapper

•August 15, 2012 • Leave a Comment

The bootstrapper has minimally the following requirements:

  • Needs to run without any pre-requisite
  • Has to update Windows Installer if necessary
  • Has to install .NET Framework if necessary
  • Has to facilitate a single file install (Has to embedd then extract the payload WPF installer)

There are plenty of solutions of creating bootstrappers with the above conditions. Here are a couple of other options you can explore:

Feel free to explore these options if the provided IMBootstrapper project does not cover your needs.

The bootstrapper project uses the same mechanisms as the sample available in the Windows SDK. After installing it you can find the sample setup.exe project here: “C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\sysmgmt\msi\setup.exe”
Continue reading ‘About the bootstrapper’

Using the InstallManager.Msi.MsiInstallerSession class

•August 14, 2012 • Leave a Comment
The InstallManager.Msi.MsiInstallerSession class manages the execution of the MSI.
Let’s start with the Constructor

public MsiInstallerSession(string msiFile)

The constructor accepts a string parameter that should be a path to your MSI file and returns an MsiInstallerSession object that can manage the execution of the MIS file.

Now let’s see how we can launch this msi file.

There are 3 methods that can do this:

public void Install(string arguments, MsiInstallLogMode logMode)
public void Install()
public void UnInstall()

All 3 methods are using the MsiInstallProduct method. MSDN says the following about the string szCommandLine parameter of this method.

”This should be a list of the format Property=Setting Property=Setting. For more information, see About Properties.

To perform an administrative installation, include ACTION=ADMIN in szCommandLine. For more information, see the ACTION property.”

This information applies to the arguments parameter of the Install method, since it is passed without change as szCommandLine .

Continue reading ‘Using the InstallManager.Msi.MsiInstallerSession class’