Thanks in advance for any help with this issue.

I'm trying to figure out how to customize the image so that I can pin shortcuts to the start menu or toolbar for all users profiles. They are all on the domain. The toolbar would be the most useful for what I'm trying to accomplish. I've looked around the Microsoft site and from what I have found it's a per user deal, but I know some awesome Kace user could help me out here.

Thanks,
Jeremy
Answer Summary:
I have used this in the past and quite like it. Just place the script in the startup so that the first time a user logs on it customizes the task bar with the icons you want then it removes itself. I havent tried but I am sure you could deploy the script using the K1000 scripting also. http://blogs.technet.com/b/deploymentguys/archive/2009/04/08/pin-items-to-the-start-menu-or-windows-7-taskbar-via-script.aspx
Cancel
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Community Chosen Answer

19
Try this,
I have used this in the past and quite like it. Just place the script in the startup so that the first time a user logs on it customizes the task bar with the icons you want then it removes itself.
I havent tried but I am sure you could deploy the script using the K1000 scripting also.
http://blogs.technet.com/b/deploymentguys/archive/2009/04/08/pin-items-to-the-start-menu-or-windows-7-taskbar-via-script.aspx
Answered 02/06/2012 by: JonathonV
Blue Belt

Please log in to comment

Answers

3

you need to specify this in your sysprep unattended file:

If you want to pin multiple items just increment the task link number. 

note: product key is a KMS key

    <settings pass="specialize">
               <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <CopyProfile>true</CopyProfile>
            <ShowWindowsLive>false</ShowWindowsLive>
            <TimeZone>Pacific Standard Time</TimeZone>
            <ProductKey>33PXH-7Y6KF-2VJC9-XBBR8-HVTHH</ProductKey>
            <TaskbarLinks>
                <Link0>%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Mozilla Firefox.lnk</Link0>
            </TaskbarLinks>
            <WindowsFeatures>
                <ShowInternetExplorer>true</ShowInternetExplorer>
                <ShowMediaCenter>false</ShowMediaCenter>
                <ShowWindowsMediaPlayer>false</ShowWindowsMediaPlayer>
            </WindowsFeatures>

Answered 05/30/2012 by: SMal.tmcc
Red Belt

Please log in to comment
2
This is the script we use. I have uncommented the pin because we choose not to pin anything. The script once placed in the C:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Startup folder does a couple of things.
1) When a new user logs in it will be copied to their profile startup folder
2) unpins then pins if required (what ever order they are pinned in the script is the order they will be on the start menu.)
2) Once the script runs it will delete itself.

I can't remember when I got the script from but kudos to who wrote it.

Hope this helps

-------------Script------------------
Option Explicit

Const CSIDL_COMMON_PROGRAMS = &H17
Const CSIDL_PROGRAMS = &H2
Const CSIDL_STARTMENU = &HB

Dim objShell, objFSO
Dim objCurrentUserStartFolder
Dim strCurrentUserStartFolderPath
Dim objAllUsersProgramsFolder
Dim strAllUsersProgramsPath
Dim objFolder
Dim objFolderItem
Dim colVerbs
Dim objVerb

Set objShell = CreateObject("Shell.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objCurrentUserStartFolder = objShell.NameSpace (CSIDL_STARTMENU)
strCurrentUserStartFolderPath = objCurrentUserStartFolder.Self.Path
Set objAllUsersProgramsFolder = objShell.NameSpace(CSIDL_COMMON_PROGRAMS)
strAllUsersProgramsPath = objAllUsersProgramsFolder.Self.Path

' - Remove pinned items -

'Internet Explorer
If objFSO.FileExists(strCurrentUserStartFolderPath & "\Programs\Internet Explorer.lnk") Then
Set objFolder = objShell.Namespace(strCurrentUserStartFolderPath & "\Programs")
Set objFolderItem = objFolder.ParseName("Internet Explorer.lnk")
Set colVerbs = objFolderItem.Verbs
For Each objVerb in colVerbs
If Replace(objVerb.name, "&", "") = "Unpin from Taskbar" Then objVerb.DoIt
Next
End If

'Windows Explorer
If objFSO.FileExists(strCurrentUserStartFolderPath & "\Programs\Accessories\Windows Explorer.lnk") Then
Set objFolder = objShell.Namespace(strCurrentUserStartFolderPath & "\Programs\Accessories")
Set objFolderItem = objFolder.ParseName("Windows Explorer.lnk")
Set colVerbs = objFolderItem.Verbs
For Each objVerb in colVerbs
If Replace(objVerb.name, "&", "") = "Unpin from Taskbar" Then objVerb.DoIt
Next
End If
'Windows Media Player
If objFSO.FileExists(strAllUsersProgramsPath & "\Windows Media Player.lnk") Then
Set objFolder = objShell.Namespace(strAllUsersProgramsPath)
Set objFolderItem = objFolder.ParseName("Windows Media Player.lnk")
Set colVerbs = objFolderItem.Verbs
For Each objVerb in colVerbs
If Replace(objVerb.name, "&", "") = "Unpin from Taskbar" Then objVerb.DoIt
Next
End If

' - Pin to Taskbar -

'Windows Explorer
'If objFSO.FileExists(strCurrentUserStartFolderPath & "\Programs\Accessories\Windows Explorer.lnk") Then
' Set objFolder = objShell.Namespace(strCurrentUserStartFolderPath & "\Programs\Accessories")
' Set objFolderItem = objFolder.ParseName("Windows Explorer.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Internet Explorer
'If objFSO.FileExists(strCurrentUserStartFolderPath & "\Programs\Internet Explorer.lnk") Then
' Set objFolder = objShell.Namespace(strCurrentUserStartFolderPath & "\Programs")
' Set objFolderItem = objFolder.ParseName("Internet Explorer.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Mozilla Firefox
'If objFSO.FileExists(strAllUsersProgramsPath & "\Mozilla Firefox\Mozilla Firefox.lnk") Then
' Set objFolder = objShell.Namespace(strAllUsersProgramsPath & "\Mozilla Firefox")
' Set objFolderItem = objFolder.ParseName("Mozilla Firefox.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Microsoft Word 2010
'If objFSO.FileExists(strAllUsersProgramsPath & "\Microsoft Office\Microsoft Word 2010.lnk") Then
' Set objFolder = objShell.Namespace(strAllUsersProgramsPath & "\Microsoft Office")
' Set objFolderItem = objFolder.ParseName("Microsoft Word 2010.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Microsoft Excel 2010
'If objFSO.FileExists(strAllUsersProgramsPath & "\Microsoft Office\Microsoft Excel 2010.lnk") Then
' Set objFolder = objShell.Namespace(strAllUsersProgramsPath & "\Microsoft Office")
' Set objFolderItem = objFolder.ParseName("Microsoft Excel 2010.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Microsoft Outlook 2010
'If objFSO.FileExists(strAllUsersProgramsPath & "\Microsoft Office\Microsoft Outlook 2010.lnk") Then
' Set objFolder = objShell.Namespace(strAllUsersProgramsPath & "\Microsoft Office")
' Set objFolderItem = objFolder.ParseName("Microsoft Outlook 2010.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Windows Media Player
'If objFSO.FileExists(strAllUsersProgramsPath & "\Windows Media Player.lnk") Then
' Set objFolder = objShell.Namespace(strAllUsersProgramsPath)
' Set objFolderItem = objFolder.ParseName("Windows Media Player.lnk")
' Set colVerbs = objFolderItem.Verbs
' For Each objVerb in colVerbs
' If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
' Next
'End If

'Delete the script
DeleteSelf

Sub DeleteSelf()
Dim objFSO
'Create a File System Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Delete the currently executing script
objFSO.DeleteFile WScript.ScriptFullName
Set objFSO = Nothing
End Sub
Answered 03/22/2012 by: d_firlotte
Orange Belt

Please log in to comment
1

Option Explicit

Const CSIDL_COMMON_PROGRAMS = &H17
Const CSIDL_PROGRAMS = &H2
Const CSIDL_STARTMENU = &HB

Dim objShell, objFSO
Dim objCurrentUserStartFolder
Dim strCurrentUserStartFolderPath
Dim objAllUsersProgramsFolder
Dim strAllUsersProgramsPath
Dim objFolder
Dim objFolderItem
Dim colVerbs
Dim objVerb

Set objShell = CreateObject("Shell.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objCurrentUserStartFolder = objShell.NameSpace (CSIDL_STARTMENU)
strCurrentUserStartFolderPath = objCurrentUserStartFolder.Self.Path
Set objAllUsersProgramsFolder = objShell.NameSpace(CSIDL_COMMON_PROGRAMS)
strAllUsersProgramsPath = objAllUsersProgramsFolder.Self.Path

' - Pin to Taskbar -

If objFSO.FileExists(strAllUsersProgramsPath & "\Notes 8.5.lnk") Then             'path of the shortcut in start menu
 Set objFolder = objShell.Namespace(strAllUsersProgramsPath &"\Applications")                   'name of the folder in which the shortcut is placed in start menu
 Set objFolderItem = objFolder.ParseName("Notes 8.5.lnk")                           'Short cut name
 Set colVerbs = objFolderItem.Verbs
 For Each objVerb in colVerbs
  If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then objVerb.DoIt
 Next
End If

"modify the above vbscript according to your requirement"

Answered 10/18/2012 by: phanigudivada
Purple Belt

Please log in to comment
1

Thanks for the replies guys. Haven't been on here in a while. 

 

 

Answered 12/13/2012 by: Memphis University School
Yellow Belt

Please log in to comment
This content is currently hidden from public view.
Reason: spam
For more information, visit our FAQ's.

0
you can achieve this by customizing the local admin account before capturing the image. Once your have the admin account with the set of pinned icons on the start menu, sysprep the system with an unattended xml file that contains the "Copyprofile" option set to true. This will copy the local admin account settings to the default account for all new users. I was only able to get icons pinned in the start menu but not in the toolbar.
There's also another way that you can try by just modifying your existing image or a test machine and add the shortcuts of programs to C:\Users\Default\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar, then try to login with a domain user and see if the new profile created has the icons pinned to the taskbar.
Answered 03/22/2012 by: kenux
Senior Yellow Belt

Please log in to comment
-1

I don't use the answerfile but rather ntuser file. but again I'm using a .wim image too. Scripted install take too long.

Answered 02/27/2013 by: mikesharp1
Second Degree Black Belt

Please log in to comment
Answer this question or Comment on this question for clarity