PDA

View Full Version : Shortcuts on Windows 8 pc



RayKode
09-11-2012, 02:55 PM
Howdy,

IS 2012 Sping.
Basic MSI.

When my MSI runs, I create a number of shortcuts.
And thing work great.

However, when I run this MSI on a Windows 8 professional pc. the shortcuts end up being "pinned" to the start screen for all users.

Is there a way (perhaps a shortcut shell property or some sort) to create these shortcuts on a Windows 8 box WITHOUT them being pinned to the Start screen ?

I need all the help I can get.

Thanks

Johannes John
09-13-2012, 02:50 AM
Hello RayKode,
I confirm the problems with the shortcuts on W8.
Perhaps we havn't found the right menu in the Installation Designer?
Regards
Johannes

MichaelU
09-13-2012, 10:27 AM
There's a Microsoft KB on some shortcut properties you can specify. Note that if you specify the ones that are new to Windows 8 by name they will cause errors on Windows 7.

http://support.microsoft.com/kb/2745126

In addition to those, the property
System.AppUserModel.StartPinOption (set to “1”) was recommended (http://social.msdn.microsoft.com/Forums/pl/windowsgeneraldevelopmentissues/thread/11fa666b-7b5c-4d38-b5c3-81e88528cfd3) as one that should not cause an error on Windows 7. However with any of these properties and values, I've seen modal error messages in unusual circumstances, so you'll have to pick your poison.

JohnCresswell
09-13-2012, 10:29 AM
Hi Ray,

You are right, this can be controlled by the shortcut property NoPinToStartOnInstall. Using this property on your shortcut should solve the problem on Windows 8.

However, this property is new to Windows 8 and so if you run this on say a Windows 7 machine you will receive a warning telling you that the property could not be set. Microsoft have recently released this KB (http://support.microsoft.com/kb/2745126) that describes the issue and information on how to work around it.

Another possible solution might be to have the shortcuts installed conditionally based on the target OS. That way the shortcut with the Win8 properties would only install on appropriate OSs and you avoid the warning message.

John

LanceRas
09-13-2012, 06:37 PM
I set the conditions on one group of shortcuts to VersionNT<602

I then copied the shortcuts and set condition to VersionNT>601
I set a property of System.AppUserModel.NoPinToStartOnInstall called Win8NoPin
I set the shortcut propertykey to [Win8NoPin] and value of 1 for each of the shortcuts.

Windows 8 gives errors on install, but completed.

Johannes John
09-14-2012, 04:42 AM
I'm getting the impression, that we have to clone all components, which include a shortcut.
Or seperate all shortcuts into two independant components with VersionNT condition.

Does someone has found a description for the other two properties, what's their impact:
System.AppUserModel.IsDualMode and System.ItemNameSortOverride

Johannes John
09-14-2012, 05:50 AM
Hello Lance,

I have given the PropertyKey the value (without quotes) "{9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3}, 12".

Regards
Johannes

RayKode
09-28-2012, 11:56 AM
Thanks for the replies folks.

I believe that I have things working perfectly now.

In that .........

When I install my applications, NOTHING is pinned to the "Start" screen.

And, My application group name and the related shortcut icons, all show up on the "All Apps" screen.

This was possible after setting the shortcuts "Shell" property to:
KeyName:
The actual value, doesn’t seem to matter, except that it needs to be unique if the app creates more than one shortcut. In my case the KeyName was generated by IS. So I didn't need to make one up.

Property:
{9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3}, 12

Value:
1

The applications that I have added the Shell property to, install perfectly on both 32 bit and 64 bit versions of XP, Vista and Windows 7 as well as Windows 8.
And they also work on my Windows 2003, 2008 and 2012 servers.
A GOOD thing as I was kinda worried that the Shell property might both the other OS's in some way.
Dosen't seem to be the case.

So, methinks the Shell property seemed to indeed, be the ticket to addressing my issue.

I DID learn that IS does not have a way to set the Shell property if one uses InstallScript to create shortcuts.

I have 2 apps that had InstallScript custom actions that create groups and shortcuts.
I opened an incident with the good folks at IS and they told me at present, InstallScript can't do it.

So I changed those apps so as to NOT use InstallScript to created program groups or shortcuts.
And they work great.

Thanks again everyone for your posts.

I’s always nice to learn that one is not alone.

jgresh
10-22-2012, 03:54 PM
I've tried the solution posted here (adding Shell Property "{9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3}, 12" with Value 1) with mixed results.

I have two very similar shortcuts which should not be pinned to the Start screen during installation, but oddly, this solution only works for one of them.

In desperation, I've also tried using "System.AppUserModel.StartPinOption" instead of the GUID, knowing that this might cause issues on Windows 7, but still no luck.

Any suggestions?

Thanks,
Joe

HookEm
12-03-2012, 06:32 PM
Make sure you 1st set the shell property "System.AppUserModel.ID" for the shortcut before you attempt to set any of the other properties ("System.AppUserModel.StartPinOption", "System.AppUserModel.ExcludeFromShowInNewInstall", etc.).