“This package wasn’t built for the current version of Windows. Install the current version of Windows and build the package again.”


This post documents an issue I have been getting with the uploading of Apps to the Windows Store.

1. WACK process completes successfully:


Upload in progress:


Produces this error:


NB I am using the latest builds of Windows and Visual Studio available.

If anyone else is getting this issue please add a note in the comments below.



Microsoft BUILD 2012 – Tips

With the announcement of BUILD 2012 I thought I would put together a list of tips – mainly aimed at fellow developers from the UK but there may be something here for everyone!


If you are on a tight budget and can book early try the Homestead Suites.   It is next to the Microsoft Campus and very reasonably priced (especially if you can book for a week).

I have also stayed at the Extended Stay America – there are a couple within a short drive of the Campus, again cheaper if you stay for at least 7 days. 

Both the above are self catering and include a basic Kitchen complete with utensils/cutlery/fridge/hob & cooker (and WiFi access).

NB Don’t be tempted to go ‘real cheap’ and stay too far away from Redmond / BelleVue.  The traffic gets really bad around Seattle and you may live to regret it – especially if you are a little jet lagged! (I speak from experience!)

On Campus

February 2003 012Try and find a friendly Softee to show you around.  I have been lucky in the past and have seen a few ‘geek treasures’ that I would never have found (or had access to) myself.

(Work in Progress)

Unable to connect to the Windows Store


Just documenting an issue I have been having this morning when firing up the Windows 8 Store.

At first I get the familiar splash screen: “Getting the store ready for you”


But then after a few more seconds I am presented with “This might take a while longer”:


Before finally being hit with “We weren’t able to connect with the store”:


This looks to be some sort of connectivity issue but the rest of the internet seems to be behaving itself.

Is anyone else experiencing the same issue or have an explanation?

I am based in the UK.

(Needless to say I have already tried this several times this morning after ‘waiting a few minutes’)

WinRt / Metro ActivationKind


Gives an answer to the question: How / Why was your App launched?


Launch | launch [0]

The user launched the app or tapped a content tile.


Search | search [1]

The user wants to search with the app.

ShareTarget | shareTarget [2]

The app is activated as a target for share operations.

File | file [3]

An app launched a file whose file type this app is registered to handle.

Protocol | protocol [4]

An app launched a URL whose protocol this app is registered to handle.

FileOpenPicker | fileOpenPicker [5]

The user wants to pick files or folders that are provided by the app.

FileSavePicker | fileSavePicker [6]

The user wants to save a file and selected the app as the location.

CachedFileUpdater | cachedFileUpdater [7]

The user wants to save a file that the app provides content management for.

ContactPicker | contactPicker [8]

The user wants to pick contacts.

Device | device [9]

The app handles AutoPlay.

PrintTaskSettings | printTaskSettings [10]

The app handles print tasks.

CameraSettings | cameraSettings [11]

The app captures photos or video from an attached camera.

70-484: Essentials of Developing Windows Metro style Apps using C#

“High level breakdown of disciplines required for this exam”

Design Metro style Apps (19%)

Develop Metro style Apps by Using WinRT (19%)

  • Access and display contacts.
    • This objective may include but is not limited to: call the ContactsPicker class; filter which contacts to display; display a set number of contacts; create and modify contact information; select specific contact data
  • Design for charms and contracts.
    • This objective may include but is not limited to: choose the appropriate charm based on app requirements; design your app in a charm- and contract-aware manner; configure app manifest for correct permissions
  • Implement search.
    • This objective may include but is not limited to: provide search suggestions using the SearchPane class; search for and launch other apps; provide and constrain search within an app, including inside and outside of Search charm; provide search result previews; implement activation from within search
  • Implement Share in an app.
    • This objective may include but is not limited to: use the DataTransferManager class to share data with other apps; accept sharing requests by implementing activation from within Share; limit the scope of sharing using the DataPackage object; implement in-app Share outside of Share charm
  • Manage app settings and preferences.
    • This objective may include but is not limited to: choose which app features are accessed in AppSettings; add entry points for AppSettings in the Settings window; create settings flyouts using the Popup control; add settings to Popup; store and retrieve settings from the roaming app data store

Create the User Interface (21%)

  • Create layout aware apps to handle view states.
    • This objective may include but is not limited to: handle view state events from ViewStateManager; choose between style patterns for the different view states; set app orientation in the manifest
  • Implement layout controls.
    • This objective may include but is not limited to: implement the Grid control to structure your layout; set the number of rows/columns and size; enable zoom and scroll capabilities in layout controls; manage text flow and presentation
  • Design and implement the app bar.
    • This objective may include but is not limited to: determine what to put on the app bar based on app requirements; style and position app bar items; design the placement of controls on the app bar; handle AppBar events
  • Design and implement data presentation.
    • This objective may include but is not limited to: choose and implement data controls to meet app requirements (e.g., ListView, GridView, and FlipView); create data templates to meet app requirements
  • Create and manage XAML styles and templates.
    • This objective may include but is not limited to: implement and extend styles and templates; implement gradients; modify styles based on event and property triggers; create shared resources and themes

Program the User Interaction (21%)

  • Create and manage tiles.
    • This objective may include but is not limited to: create and update tiles and tile contents; create and update badges (TileUpdateManager class); respond to notification requests; choose an appropriate tile update schedule based on app requirements
  • Notify users by using toast.
    • This objective may include but is not limited to: enable an app for toast notifications; populate toast notifications with images and text using the ToastUpdateManager class; play sounds with toast notifications; respond to toast events; control toast duration
  • Manage input devices.
    • This objective may include but is not limited to: capture Gesture library events; create custom gesture recognizers; listen to mouse events or touch gestures; manage Stylus input and inking
  • Design and implement navigation in an app.
    • This objective may include but is not limited to: handle navigation events, check navigation properties, and call navigation functions by using the Navigation framework; design navigation to meet app requirements; Semantic Zoom

Manage Security and Data (20%)

  • Choose an appropriate data access strategy.
    • This objective may include but is not limited to: choose the appropriate data access strategy (file based, web service, remote storage, including Windows Azure storage) based on requirements
  • Retrieve data remotely.

    • This objective may include but is not limited to: use HttpClient to retrieve web services; set the appropriate HTTP verb for REST; consume SOAP/WCF services; use WebSockets for bi-directional communication; handle the progress of data requests
  • Implement data binding.
    • This objective may include but is not limited to: choose and implement data-bound controls; bind collections to items controls; implement the IValueConverter interface; create and set dependency properties; validate user input; enable filtering, grouping, and sorting data in the user interface
  • Manage Windows Authentication.
    • This objective may include but is not limited to: retrieve a user’s roles or claims; store and retrieve credentials by using the PasswordVault class; implement the CredentialPicker class
  • Manage Web Authentication.
    • This objective may include but is not limited to: use the Windows.Security.Authentication.Web namespace; set up oAuth2 for authentication; implement the CredentialPicker class; set up single sign-on (SSO); implement credential roaming; implement the WebAuthenticationBroker class

(work in progress)

Tip – Marketing Your Windows 8 Apps


When it comes to submitting your Windows 8 Apps there is quite a list of marketing graphics that you can submit:

Click the image to Enlarge

The only mandatory one is the 416×180. It occurred to me that this size would be great on a T-Shirt.  Happily Vistaprint in the UK are currently doing an offer to get a T printed for 99p Plus P&P (So if nothing else check out the virtual T-Shirt design for free! )


The next step involves being seen with your T Shirt.  I was lucky enough to be offered the chance to go on the ‘Gadget Show Tech tour of London’ yesterday and the crew were a really friendly bunch (Polly Woodward & Jason Bradbury)


(Look out for me wearing the shirt on the Gadget Show later this Summer*)


The Tile Browser App for windows 8 can be downloaded here (it is a free app)


* Or at the very least the back of my head …


“They did a Ryan Air on me”

So much for the 99p T-Shirt:


Live Tile Sport–Windows 8




One of the most popular Apps on Windows phone now comes to Windows 8 …

Making striking use of the unique opportunities of the Windows 8 interface one of this Apps nicest features is enabling users to choose not only the style of their Live Tiles but also the sporting content :

Top Sports
Rugby Union
Rugby League

Whats Next?

The next release of “Live Tile Sport” will be a free upgrade enabling an additional 8  sporting categories along with the option to choose which categories are of interest as well as also where they are positioned in the panorama.).

Windows 8 App Privacy Policy


This App does not collect, store or share any personal information, or anything related to your device.  We do not collect any statistics, trends or track user movements.

Sharing Data

The app provides share functionality that allows you to share newsworthy information with any third party application. The App allows you to open Web URLs from the application.  The internet urls might be saved by the web browser on your device.  For further information on this consult your web browsers own documentation.


NB This Privacy policy covers your use any app  from “Web Surfaces” or “JEDI Walker”.

The Native Image Generator failed

When submitting an App to the Windows 8 store I am repeatedly getting an error that relates to the failure of the native image generator.

There are a number of suggestions around this issue in this article which having worked through, and submitted an issue via  Connect (see here) I have finally implemented the suggested workaround:

As a last resort, you can disable automatic native image generation for your app by including a file that is named "nongen.txt" in your app package. Be aware that doing this may adversely affect startup and execution times for your app. Make sure that you file a Connect bug before you take this step.

This then resulted in an overall WACK pass:


NB The full failure report looks like this:


Windows App Certification Kit – Test Results

App name:
App version:
App publisher:
Web Surfaces
OS Version:
Microsoft Windows 8 Release Preview (6.2.8400.0)
Report time:
10/07/2012 13:26:24

Overall result: FAILED

Crashes and hangs test


App launch tests


Crashes and hangs

App manifest compliance test


App manifest

Windows security features test


Binary analyzer

Supported Metro style API test


Supported APIs

Performance test


Bytecode generation


Performance launch

  • Error Found: The performance launch test collected the following results:.

    • The Native Image Generator failed
  • Impact if not fixed: Application launch time is important for creating a fast and fluid experience for the user. This app will not be accepted by the Windows Store.

  • How to fix: You should ensure that your app’s performance is consistent across different machine configurations and does not exceed the minimum requirements or it will potentially fail during Windows store onboarding. The informational metrics can provide insight into areas that could help improve your app’s performance, but do not impact your apps acceptance by the Windows Store. See link below for more information:
    Performance Best Practices


Performance suspend

App manifest resources test


App resources validation

Debug configuration test


Debug configuration

File encoding


UTF-8 file encoding

Windows 8 Store Certification Failure

After around 10 days in the submission process my first Windows 8 App has failed with the following report:


6.11 The app’s category and subcategory must correspond to the character or purpose of your app

Presently the Apps’ category and sub-category are:


Which is as I intended (there is no sub category for ‘Productivity’ Apps).

My thinking was that this App helps you be more productive with your Windows Phone and I must admit, looking at the other options this still looks to be the best in my opinion.  It is a shame that there was not a sentence indicating the thinking behind the reason for failure or perhaps a suggestion as to where Microsoft thinks my App should live?

I found it a little disappointing that any other ‘issues’ with the App are not listed (or alternatively there is a section that states that ‘no other issues were found’) as this would be useful as well as giving us an indication of whether this process is  ‘fail at the first hurdle’ or is more comprehensive.