How to unpin default apps from the Start Screen using vbscript
-
Wednesday, February 13, 2013 4:42 PM
Hi,
I am looking for a way to programmatically unpin apps using vbscript from the Windows 8 Start Screen. I need to unpin SkyDrive, People, Calendar and messaging. I have been searching for a couple of days but I'm coming up with nothing so far.
I know how to pin my own choices of installed apps using vbscript but I can't figure out how to unpin the default apps.
Thanks,
Rob
All Replies
-
Wednesday, February 13, 2013 6:43 PMModerator
I don't know the answer as I don't use Windows 8 (yet), but why do you need to?
Bill
-
Wednesday, February 13, 2013 9:31 PMOur organization has always custom configured Windows so this is no different. The main reason we want to unpin these is due to the fact that they require a Windows Live ID which ultimately connects people to their personal information. Most of our staff wouldn't go the extra mile to pin these again but for those that do, it is considered acceptable risk to allow a smaller number of people to use these apps but not the whole organization.
-
Wednesday, February 13, 2013 10:05 PMModerator
Sounds to me more like an issue with Windows deployment or group policy than scripting...
Bill
- Proposed As Answer by jrvMicrosoft Community Contributor Thursday, February 14, 2013 12:52 AM
- Unproposed As Answer by robwm1 Thursday, February 14, 2013 6:27 AM
-
Wednesday, February 13, 2013 10:12 PMOnce I have the answer to this question, it will be used during operating system deployment. I have always configured Windows via scripting during OS deployment but there is not much in any of the forums on Windows 8 from a technical perspective at this point. I can find tips on how to do this manually all day long though...
- Edited by robwm1 Wednesday, February 13, 2013 10:14 PM
-
Thursday, February 14, 2013 12:51 AM
Group Policy was designed for just this situation.
Scripting this adds unnecessary tasks to the login and is not recommended.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 3:19 AM
My script will only run during OS deployment, not upon login. A script that pins or unpins shortcuts will run in just a second or two, if that. I don't really consider a script of this nature to be intrusive. Very careful consideration is taken in how we use scripts. Anyone in IT knows a user's scorn so we avoid using scripts that are unneeded just because we can.
If we use GPO then nobody will be allowed to reverse any changes made. That is not the level of enforcement we are seeking for this task. GPO definitely has it's place and trust me, we are definitely leveraging it everywhere that it makes sense. Our organization made a decision to unpin rather than to unpin and not allow users to change it.
Finding out to accomplish this has not been an easy task.
-
Thursday, February 14, 2013 3:41 AM
Why don't you adjust the image to eliminate the start menu items you don't want pinned? This would seem to be the correct way to do it. AAfter all - that is what a deployment image is supposed to be used for. We customize it before deployment.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 3:44 AM
-
Thursday, February 14, 2013 4:29 AM
jrv,
The link you provided will work for anything except the default apps. You have to know the file path to where the shortcut is pointing to. This is what is so elusive about these default apps. Nobody seems to know where these applications live so I can obtain the file path.
I have completely scripted all of our customizations for Windows for about 10 years now and it's never been an issue until now. I prefer the customizations to be scripted because you get a consistent, repeatable result. Doing things manually leaves room for error although we are not customizing the OS that much.
The changes made in developing Windows 8 may no longer provide the means for certain tweaks to the OS programmatically anymore. This is what I need to find out. If I find out that none of my required changes can be scripted, I will have to resort to doing this manually as you mentioned. I do know a method of accomplishing this but I will try to avoid it until I can get a solid answer.
Rob
- Edited by robwm1 Thursday, February 14, 2013 4:30 AM
-
Thursday, February 14, 2013 4:38 AMWhat default apps are you referring to? I know of no app that cannot be unpinned. The apps are installed on the start ment in the Microsoft\Windows folders under the user and the All Users Profile.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 4:45 AM
Default start menu:
C:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu
All User Start menu:
C:\Users\All Users\Microsoft\Windows\Start Menu
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 4:45 AM
jrv,
I need to unpin SkyDrive, People, Calendar and Messaging. I know these can be unpinned manually but as I have been saying, I would like to use vbscript which is why I posted here. I have looked in all of the usual places but I just don't see where these apps are located in the file system. The path you are talking about is true for about 99% of the shortcuts but not these default apps.
rob
- Proposed As Answer by jrvMicrosoft Community Contributor Thursday, February 14, 2013 6:25 AM
- Unproposed As Answer by robwm1 Thursday, February 14, 2013 6:28 AM
-
Thursday, February 14, 2013 4:52 AM
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 4:54 AM
Do you see any of the other ones? I will go off of what you found to see if it works. I don't know why I didn't see this earlier...
Thanks a lot for the time you have invested in this!
-
Thursday, February 14, 2013 5:44 AM
Some thoughts:
I started to investigate the many ways to manage the Metro start menu. There are APIs but none are exposed to batch or VBScript.
1. Programs are installed into the 'All User' start menu, defult users profile start menu and a set of global links can be defined for metro. THis is almost identical to ll previous versions except for the linking process which sets up the defaults. If we install Office 20133 it will, if we choose, show up in all user start menu. Each user can then unpin this.
2. There is a file (binary) that keeps track of the Metro settings. It seems to only be changeable via the API or by using the shell 'pin/unpin' verbs.
3. This behavior I identical to XP and other systems with the exception of how it is stored and in that you cannot remove items from the sztart menu prior to Windows 8.
4. The default user profile can be customized and stored on the network so that it affects every system.
5. The "All Users" 'profile' can only be customized after a program is installed or by altering the programs installer.
What you are trying to do runs counter to all Windows design since the first version of Windows. We have NEVER been able to alter the start menu from script in such a way that a user could just add the item back in. Your request seems to be incongruous to the design of Windows.
Now don't get me wrong. What you are asking is partially possible but you need to alter the Windows image so that the All users profile does not propagate the shortcuts. You can do this by just deleting them. You need to delete them before a user account is generated on the box. Delete them in the image. You can do this with MDT. The shortcuts will not propagate to the user. The user can still search for an app and add it to the start menu.
There may be a better way to set this up but I cannot see how without using the API.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 5:58 AM
This is really great information! I will continue research as well and will add my findings to this post.
I understand your point of view and I know this all seems unconventional but it's what my organization wants me to accomplish. If it cannot be done via scripting, then I'll have no choice but to use another method.
Scripting against Windows 8 is definitely more challenging and without many IT shops adopting it, there isn't much technical data out there making it difficult to find answers to tough questions. Windows 7 was close to the same story when it first released as well.
One way or another, I know I can meet my organization's requirements. It likely won't be on my terms though. It looks very strongly as if Plan B is the only way to do this. It is what it is...
-
Thursday, February 14, 2013 6:10 AM
Hah! -
You stepped into that one. Have you seen the number of Windows 8 licenses sold as of 1/31/13. It is a phenomenal number and most were to corporations.
The problem here is you are being asked to do something in a way that makes little sense. Why not just use standard deployment customizations. Windows 8 is totally hooked up for that. It is infinitely configurable via MDT2012. Trying to use old fashioned and obsolete scripting methods seems counter-productive.
Windows is and has always been a layered deployment. Minimal desktop and a network based profile image that follows the user and is built of of a custom network based "default" profile template. Customize the default template including unpinning items and deploy it to the network SYSVOL/NETLOGON share. Of course you will have issues with already built profiles that have logged into Windows 8. If you set this up before you turn the users loose they will get the custom defaults. The only thing I am not sure of is what happens to application sets that are not part of the Windows system.
I would look closely at the GP templates fro Windows 8 to see how much is available. I have not done this yet but I am setting up a new site that I can test it on. Unfortunately I have too many users that are afraid of Windows 8 so we are deploying all Windows 7 for now. Personally I prefer Windows 8.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 6:17 AM
This link below is what I plan on trying out tomorrow. I spoke with the author over the phone and he was telling me that there currently isn't a way to script changes to the Start Screen although there are plans in the near future to add functionality to aid in scripting. He couldn't give me a timeline when this will be available. He also prefers to do as much as possible via scripting as well. So I'm not the only one ;)
- Marked As Answer by robwm1 Thursday, February 14, 2013 6:59 AM
-
Thursday, February 14, 2013 6:27 AM
This link below is what I plan on trying out tomorrow. I spoke with the author over the phone and he was telling me that there currently isn't a way to script changes to the Start Screen although there are plans in the near future to add functionality to aid in scripting. He couldn't give me a timeline when this will be available. He also prefers to do as much as possible via scripting as well. So I'm not the only one ;)
So you see - MDT to the rescue.
Yes - some scripting support would be useful although I am more in favor of a ore declarative method using a combination of MDT and GP.
You still need to define "default" apps. SkyDrive is not a default if you do not install all of the 'Live" support. "Live" support is good for home users and perhaps small nosiness systems but enterprises should not deploy that. An Enterprise would deploy a 'Cloud" storage system within the Enterprise. SkyDrive should never be allowed. Also, if you are using Outlook ther eis no need for all of that default messaging stuff for Windows Live. THis is only installed on Windows 8 Home. Windows 8 for the enterprise does not instll that by default an should not.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 6:32 AM
So you talked to Ben? I saw that article two weeks ago. I should have thought to pull it for you. It is not what you are asking but does explain much about the start menu and deployment. I thought it was a good article.
Ben notes the copy to default profile but fails to describe how to place this on the NETLOGON share so that it is used globally. He should write that up. I forget the exact steps so that we can have a pre-win8 and post win8 default.
To often Admins fail to take advantage of a domain wide set of default profiles just like they fail to fully leverage Group Policy. MDT, GP and other elements make managing Windows an ever easier task.
¯\_(ツ)_/¯
- Edited by jrvMicrosoft Community Contributor Thursday, February 14, 2013 6:36 AM
-
Thursday, February 14, 2013 6:34 AMI am working with Windows 8 Enterprise. The reasons you mentioned above are exactly why we want to unpin them. I have called those apps or tiles "default" because I'm not sure what else you would call them. We use Lync for messaging so this other messaging app isn't needed for the enterprise. Unpinning is being considered an acceptable risk by our information security team. Personally, I would prefer to remove these apps completely just as you mentioned but that I don't have the authority to make that decision. Who knows, maybe we'll end up removing them at some point and I have seen a powershell script that can do that.
-
Thursday, February 14, 2013 6:37 AMI know what I am asking doesn't match up with the link I provided but the author told me that it is currently the only way to accomplish what I want to do. If it could be scripted, I am sure Ben would have posted it and I'm sure he will if the capability ever becomes available. He's a strong advocate of scripting as much as possible.
-
Thursday, February 14, 2013 6:52 AM
I know what I am asking doesn't match up with the link I provided but the author told me that it is currently the only way to accomplish what I want to do. If it could be scripted, I am sure Ben would have posted it and I'm sure he will if the capability ever becomes available. He's a strong advocate of scripting as much as possible.
I doubt that. I bet he is in favor of being able to script things but I am pretty sure his engineering discipline points him towards declarative systems management. MDT is a declarative tool that allows scripting. Scripting, as in most cases, is a backup plan. Modern systems should be as declarative as possible. Microsoft unattended setup has always been a very nearly totally 'declarative' tool.
I am a big fan/user of programming and scripting but I still always look for a more passive and benign method for deploying anything. I have done this for over 30 years. In 1982 I built a forms system for ANSI terminals that was 100% declarative. Anyone could design a screen using a text file that took records that looked eerily like XAML looks today. OF course I never thought of using lite <> around key words so I had to do some fancy programming to be able to parse the files but it was human readable. Even non-technicians could generate great screens very quickly.
I am a big fan of 'declaritive'.
¯\_(ツ)_/¯
-
Thursday, February 14, 2013 6:58 AMWould you mind explaining declaritive? I have never heard of that term before. I know what it means to declare a variable but I don't fully understand your usage of the word declaritive.
-
Thursday, February 14, 2013 7:07 AM
Would you mind explaining declaritive? I have never heard of that term before. I know what it means to declare a variable but I don't fully understand your usage of the word declaritive.
Declarative as opposed to imperative or procedural....
http://en.wikipedia.org/wiki/Declarative_programming
¯\_(ツ)_/¯

