How to Distribute Compiled Windows 8 Metro Applications without Windows Store? - windows-8

I am just curious if there is a way to package up a Windows 8 Metro application to distribute it to others with the Windows 8 Developer Preview installed? It would be nice to be able to allow someone to just download and install, rather than requiring them to install VS'11 Preview and compile the code themselves in order to test out / use a Windows 8 Metro application that I've built.
Is there a way to distribute a compiled Windows 8 Metro application for others to test/use since the Windows Store is not yet live?
This would likely be useful for testing Metro apps on non-development machines even after the Windows Store is live.

Each machine that wants to install the application will need a developer license. See this page for some details.
When you have your app ready:
select Store->Create App Package
Select Build a package to use locally only
Follow the prompts
This will create a package in whatever folder you specified. You should be able to copy that to another developer-licensed machine and install it.
There will be a batch file called Add-AppxDevPackage in the directory. Running it will install the app. It must be run as an admininistrator.

Distributing apps outside store is possible after complying to the prerequisites listed in this MSDN article. It also covers the process of application installation using PowerShell. Though it appears quite complicated, note that MSIs work fine for Windows 8 metro apps so you can probably enclose the installation process into one small instalator.
From the article
Requires Windows 8 Enterprise Edition, and must be joined to a domain, and the domain must have the Allow all trusted applications to install Group Policy setting.
for Windows 8 Professional, and Windows RT, or a non-domain joined machine, you must buy a sideloading product activation key from Microsoft
the application must be signed by a key that is trusted by the computer
Once you've purchased your sideloading product key from Microsoft, add the sideloading product key:
>Slmgr /ipk <sideloading product key>
To enable side-loading, enable the following guid:
>slmgr /ato ec67814b-30e6-4a50-bf7b-d55daf729d1e
To add an application, from a powershell prompt:
>add-appxpackage C:\app1.appx –DependencyPath C:\winjs.appx
Windows 8.1 Update
According to the latest announcements by Microsoft the next update to Windows 8.1 will allow all the devices running the Pro version to sideload applications without sideloading activation key. So far this has been the case only for the Enterprise version. Bare in mind that the machine will still need to be a part of the AD domain. Additionally, if you still run a previous version but you're part of any of the below programs:
Enterprise Agreement
Enterprise Subscription Agreement
Enrollment for Education Solutions (under a Campus and School Agreement)
School Enrollment
Select and Select Plus
You'll be granted the enterprise sideloading rights starting on the 1st of May 2014. Otherwise you'll still be able to sideload but will need to buy a sideloading activation key for 100$ (that's a one-time charge for an unlimited number of devices).

If I recall correctly from the white paper, then a Windows 8 Metro application can only be installed by consumers from the App Store.
However there will be a way provider for developers (as explain by Stave Rowe) and a way for corporations to installed Windows 8 Metro application directly, I expect the corporation method will be by using Active Directory (group policy), but may be limited to some editions of Windows 8.

You can distribute the Windows 8 App package and deploy the same using the Side loading process
Refer this link for more details about side loading
http://technet.microsoft.com/en-us/library/hh852635.aspx

Related

Do I need to test applications for Windows 10 support on both LTSB and CBB?

I have a set of applications for which we want to add Windows 10 support. I expect some users to run them on Windows 10 Enterprise LTSB (Long Term Servicing Branch) and others on Windows Pro CBB (Current Business Branch). Sometimes our users keep machines off LANs for security reasons, so we can't assume much about when updates will be applied. We also can't dictate that our users get all Windows updates as a first step to troubleshooting. (It's a case-by-case basis.)
We have not historically needed to consider special editions of Windows. In the past we have tested these apps on Pro versions of Windows and Standard versions of Windows Server.
I'd like to relate this question to precedents, but I don't see an obvious correlation. For example, would an LTSB vs CBB machine comparison be more like Windows XP SP1 vs Windows XP SP2 (which was a breaking difference for us) or is it more like Windows 7 Pro vs Windows 7 Ultimate (which is insignificant for us)?
I did not see any distinctions between LTSB and CBB in Windows SDK googling and we don't expect to depend on any of the Windows apps currently excluded from LTSB. I think the main issue is whether there might be windows behavior that is changed in a "Feature Upgrade" that a CBB machine might get and an LTSB machine might not yet have. (As opposed to a "Service Update" that I hope they would both get, if receiving updates automatically.)

Native WCF client for Windows XP

I have created program using MSVC++ that besides it's main task calls WCF server functions. Under Windows 7 and Windows 8 everything works fine and I got several problems with Windows XP:
On some machines I have error that webservice.dll is missing and program doesn't starts. Why some Windows XP installations contain webservice.dll while others - not? How to install required dll?
On Win XP computers that has webservice.dll sometimes programm just crashes without any reporting. After recompiling program without WCF client code program runs fine. What might be starting point to look for the problem?
Windows Web Services API (WWSAPI) is an operating-system component of Windows 7 and Windows Server 2008 R2 or later versions of Microsoft Windows.
On Windows XP you need to package it with your app. The reason it works on some boxes is probably caused by one other installed application that uses that the WWSAPI as well.
The final version of the Windows Web Services API for Windows XP, Windows Vista, Windows Server 2003 and Windows Server 2008 is now available
In contrast to the past pre-released version of this API, this final version release can be used in production code and redistributed with the final versions of the product. Because of this, the final version is only available to companies who agree to terms of Windows Master Redistribution License Agreement (MRLA). To acquire the redistributable installers for this release and a copy of the Windows MRLA for review, please email a formal request.
Partially copied and adapted from Windows Core Networking blog, from Ari Pernick, dated Oct 9th, 2009.

WCF test client redistribution

I am working on a product which provides WebServices and clients often need some simple client to test them. WCFTestClient Tool is really good for that purpose.
Is it legal to include WCFTestClient Tool from Visual Studio as a part of you product's installation ?
Go to the MS user terms:
Search for Visual Studio (version you own), and check it's EULA (available in pdf).
EDIT: for my VS2012 Pro found this:
ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.
...
b. Utilities. The software contains certain components that are identified in the Utilities List located at go.microsoft.com/fwlink/?LinkId=247624. Depending on the specific edition of the software, the number of Utility files you receive with the software may not be equal to the number of Utilities listed in the Utilities List. You may copy and install the Utilities you receive with the software on to other third party machines. These Utilities may only be used to debug
and deploy your programs and databases you have developed with the software. You must delete all the Utilities installed onto a third party machine within the earlier of (i) when you have finished debugging or deploying your programs; or (ii) thirty (30) days after installation of the Utilities onto that machine.
BUT,
there is no WcfSvcHost/TestClient in that list (go.microsoft.com/fwlink/?LinkId=247624).
I assume you can distribute both without any restrictions

How To Query A Remote Index From Windows 8

I have a machine running Windows 2008 Server using the built-in Windows Indexing functionality. I have a separate machine running Windows 8. I need to query the Windows 2008 index from the Windows 8 machine. I used to be able to do this using the MSIDXS provider but this is no longer in option in Windows 8.
Is there a new way to deal with this scenario? My internet searches haven't turned up much.
Windows Store apps use contracts and extensions to enable communications between apps and between an app and Windows. More info on the subject here. I haven't worked with MSIDXS provider, but from what you described, you will not be able to access the data residing on a server directly as you would before.
One option is to expose the index data as a service to your Windows Store app. This is probably not optimized for your case, but it is a general approach to consider when you need to communicate with resources outside of your Windows Store app.

Legal aspects of virtual machines

My normal pc is currently under 'repair' due to me uninstalling a bunch of apps in an attempt to fix an old app that failed in certain situations and causing a looping screen of blue death.
Now I've been asking for the ability to have virtual machines so I can do testing of legacy software in a safe and controlled manner and not worry about currently installed apps/services hiding the symptoms since I joined here and this incident is ammo for my cause.
However I get shot down saying that I would need a license of XP for every copy I have installed on my machine. I think this is wrong (Scott Hanselman freely admits to using multiple Win7 installs - or is this just a Win7 license thing?) but have no evidence to back up my claims.
What is the legalities of running virtual machines - XP in particular - for the purpose of testing?
As you can get VM's on the Microsoft site which have XP and IE on them (the operating system often 'expires' after a few weeks/months) I guess that covers the legalities.
These VPC images are designed for testing and expire on 1 July 2010 - there can be no issue using them.
Overview
This download page contains
different VPC images, depending on
what you want to test.
IE6-on-XP-SP3.exe contains a Windows
XP SP3 with IE6 VHD file. Expires July
1, 2010
IE7-on-XP-SP3.exe contains a Windows
XP SP3 with IE7 VHD file. Expires July
1, 2010
IE8-on-XP-SP3.exe contains a Windows
XP SP3 with IE8 VHD file. Expires July
1, 2010
IE7-VIS1.exe+IE7-VIS2.rar+IE7-VIS3.rar
contain a Vista Image with IE7 VHD
file. Expires 120 days after first
run.
IE8-VIS1.exe+IE8-VIS2.rar+IE8-VIS3.rar+IE8-VIS4.rar
contain a Vista Image with IE8 VHD
file. Expires 120 days after first
run.
Note: For The Vista image, you will
need files in that set, downloaded and
in the same directory, then run the
EXE in the root directory.
You need to purchase a Microsoft Technet subscription, you get (nearly unlimited) licenses of almost all Microsoft applications and operating systems for testing and development (i.e. non-Production) use only. You just log in to the website, click a button labeled "get license" each time you need another license for a new VM.
There's an expensive subscription (which includes Visual Studio licenses) for developers, and the cheaper version which we use for each member in the test/support/QA teams.
Note that while you have access to plenty of licenses, according to the Microsoft rep I spoke with each person that accesses or uses the installed software is also required to have a technet subscription.