Ich versuche, Microsoft Edge an meine Taskleiste mit einer Batch-Datei zu pinnen/pinnen. Ich habe mehrere hundert Computer, um dies zu tun, also habe ich versucht, ein Batch/Powershell/VBScript, das alle Instanzen von Edge aus der Taskleiste lösen wird, und dann eine einzelne Instanz wieder an die Taskleiste, so dass ich sicher sein kann wird nur einmal gepinnt. Kann mir jemand in die richtige Richtung zeigen?Wie PIN MSEdge zu Taskleiste mit Batch-Datei PIN
0
A
Antwort
0
Diese Antwort ist aus: http://rolfsnotepad.blogspot.com.au/2016/06/unpin-edge-and-pin-internet-explorer.html
ich den Stift IE getestet und es funktioniert:
# The apps array holds hash tables with information about each app that should be pinned.
# Each hash table has the name of the app, two byte arrays and some strings with various settings
# for the app's shortcut. The registryEntry byte array contains all the bytes that need to be
# inserted into the Favorites registry key, while the matchString byte array is used to check
# if the app is already pinned. # # If you accidentally end up pinning an app that was already pinned, the existing taskbar
# entry will likely break. For that reason, matchString should be a subset of registryEntry # that you are certain will not change between computers or versions of the app.
Cls
$apps = @(@{ "appName" = "Microsoft Internet Explorer"
"registryEntry" = @(0,170,1,0,0,58,0,31,128,200,39,52,31,16,92,16,66,170,3,46,228,82,135,214,104,38,0,1,0,37,0,239,190,18,0,0,0,118,241,189,129,21,120,209,1,16,214,92,131,21,120,209,1,16,214,92,131,21,120,209,1,20,0,86,0,49,0,0,0,0,0,182,72,114,151,17,0,84,97,115,107,66,97,114,0,64,0,9,0,4,0,239,190,103,72,105,16,182,72,114,151,46,0,0,0,147,77,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,101,231,0,84,0,97,0,115,0,107,0,66,0,97,0,114,0,0,0,22,0,24,1,50,0,43,5,0,0,103,72,103,16,32,0,73,78,84,69,82,78,126,49,46,76,78,75,0,0,170,0,9,0,4,0,239,190,176,72,131,85,182,72,114,151,46,0,0,0,143,221,1,0,0,0,7,0,0,0,0,0,0,0,0,0,90,0,0,0,0,0,156,250,31,0,73,0,110,0,116,0,101,0,114,0,110,0,101,0,116,0,32,0,69,0,120,0,112,0,108,0,111,0,114,0,101,0,114,0,46,0,108,0,110,0,107,0,0,0,64,0,67,0,58,0,92,0,87,0,105,0,110,0,100,0,111,0,119,0,115,0,92,0,83,0,121,0,115,0,116,0,101,0,109,0,51,0,50,0,92,0,105,0,101,0,52,0,117,0,105,0,110,0,105,0,116,0,46,0,101,0,120,0,101,0,44,0,45,0,55,0,51,0,49,0,0,0,28,0,82,0,0,0,29,0,239,190,2,0,77,0,105,0,99,0,114,0,111,0,115,0,111,0,102,0,116,0,46,0,73,0,110,0,116,0,101,0,114,0,110,0,101,0,116,0,69,0,120,0,112,0,108,0,111,0,114,0,101,0,114,0,46,0,68,0,101,0,102,0,97,0,117,0,108,0,116,0,0,0,28,0,0,0)
"matchString" = @(77,0,105,0,99,0,114,0,111,0,115,0,111,0,102,0,116,0,46,0,73,0,110,0,116,0,101,0,114,0,110,0,101,0,116,0,69,0,120,0,112,0,108,0,111,0,114,0,101,0,114,0,46,0,68,0,101,0,102,0,97,0,117,0,108,0,116)
"shortcutPath" = "\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\Internet Explorer.lnk"
"shortcutWildcardPath" = "\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\Internet Explorer*.lnk"
"shortcutTargetPath" = "C:\Program Files\Internet Explorer\iexplore.exe"
"shortcutWorkingDirectory" = "%HOMEDRIVE%%HOMEPATH%"
})
# Start with the assumption that no apps are pinned.
$atLeastOneAppWasNotPinned = $false
foreach ($app in $apps)
{
$currentAppWasNotPinned = $true
# Save the current value of the taskbar registry key as a byte array
$currentTaskBar = (Get-ItemProperty -Path "hkcu:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband" -Name "Favorites").Favorites # Save the last index for the current taskbar array and the matchString array.
$currentTaskBarLastIndex = ($currentTaskBar.Length - 1)
$matchStringLastIndex = ($app["matchString"].Length - 1)
# Used to keep track of the current location in the byte arrays
$matchStringCurrentIndex = 0
$currentTaskBarCurrentIndex = 0
# Loop through the current taskbar array
while ($currentTaskBarCurrentIndex -lt $currentTaskBarLastIndex)
{
if ($currentTaskBar[$currentTaskBarCurrentIndex] -eq $app["matchString"][$matchStringCurrentIndex])
{
# If the current value of the registry byte array matches the first value of the app byte array,
# we save the current registry byte array index.
$startIndex = $currentTaskBarCurrentIndex
# We then proceed to compare the next item in the registry byte array with the next value in the
# matchString byte array until we no longer get a match, like a greedy regex.
while ($currentTaskBar[$currentTaskBarCurrentIndex] -eq $app["matchString"][$matchStringCurrentIndex])
{
# If we got a match on the entire matchString, the current app is pinned.
if ($matchStringCurrentIndex -eq $matchStringLastIndex)
{
$currentAppWasNotPinned = $false
}
$matchStringCurrentIndex += 1
$currentTaskBarCurrentIndex += 1
}
# Reset the app byte array index counter
$matchStringCurrentIndex = 0
# Move the registry byte array index back to the location of the match that caused us to enter this # if block.
$currentTaskBarCurrentIndex = $startIndex
}
# Step to the next byte in the registry array
$currentTaskBarCurrentIndex += 1
}
if ($currentAppWasNotPinned -or ($currentTaskBarLastIndex -eq 0))
{
$atLeastOneAppWasNotPinned = $true
# For various reasons you could end up having a shortcut in the taskbar directory even if the app # the shortcut points to isn't pinned.
#To make sure that any such shortcuts won't cause us any # issues, remove them.
Remove-Item ((Get-ChildItem Env:APPDATA).Value + $app["shortcutWildcardPath"]) # Create the app's shortcut in the taskbar directory.
$taskbarShortcutPath = (Get-ChildItem Env:APPDATA).Value + $app["shortcutPath"]
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut($taskbarShortcutPath)
$Shortcut.TargetPath = $app["shortcutTargetPath"]
$Shortcut.WorkingDirectory = $app["shortcutWildcardPath"]
$Shortcut.Save()
# Add the app's byte array to the current taskbar registry entry.
$taskBar = $app["registryEntry"] + $currentTaskBar
# Overwrite the existing taskbar registry key with the version that has the current app pinned.
New-ItemProperty -Path "hkcu:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband" -Name "Favorites" -Value $taskBar -PropertyType Binary -Force | Out-Null
}
}
if ($atLeastOneAppWasNotPinned)
{
Write-Output "At least one app was not pinned, pinning and restarting explorer.exe to refresh taskbar."
# Restart Explorer to refresh the taskbar
Invoke-Expression "taskkill /f /im explorer.exe"
Invoke-Expression "start explorer.exe"
}
else
{
Write-Output "All apps are pinned."
}
Verwandte Themen
- 1. Pin mit EventToCommand
- 2. ScrollMagic Pin Spacer zu groß
- 3. PIN-Tool mit Abhängigkeiten kompilieren
- 4. Authentifizieren mit Pin TweetSharp C#
- 5. Benutzerdefinierte Pin-Animation - MKMapView
- 6. Pin einen Funktionszeiger
- 7. Javascript hex_md5 Pin-Nummer
- 8. Ändern MKAnnotation Pin Farbe
- 9. Twitter Authentifizierung ohne Pin
- 10. Die Pin funktioniert nicht
- 11. Größe Bild Pin Annotation
- 12. Schnell einen einzelnen Pin zu MKMapView hinzufügen?
- 13. Pin Emacs Puffern zu Windows (für Cscope)
- 14. Versuchen, Karte auf Pin zu zentrieren (MKMapView)
- 15. Pin dieses Programm zu Taskleiste Option fehlt in meiner C# -Anwendung
- 16. Intel Pin Get Funktion Argumentnummer
- 17. PIN-Tool unbekannt ABI-Fehler
- 18. Erstellen eines PIN-Code-Dialogs
- 19. Pin-Speicherzugriffsart in der Ausnahmebehandlung
- 20. Login Benutzer in Laravel mit Pin
- 21. Kartenansicht Anmerkungen mit verschiedenen Pin Farben
- 22. Bing Maps v8 PIN-Tooltip
- 23. C#: Wie öffne ich den Pin Dialog?
- 24. C# LinqToTwitter-Verbindung OAuth-PIN
- 25. wiringPi funktioniert nur mit Pin 7
- 26. Verify Pin mit Java Returns 6a86
- 27. Hinzufügen einer Push-Pin zu einer Karte mit Javascript
- 28. pin UiTableView zu (View-Controller) View mit Layout-Anker
- 29. Wie bekomme ich den Pin, um das Bild zu ändern?
- 30. Mobile Broadband API: "Pin ist erforderlich" Ausnahme, aber Pin ist gesetzt
ich PIN Rand gefragt, NICHT Internet Explorer. –
Meine Builds sind LTSB, daher kann ich Edge nicht testen, aber die Quellverknüpfung verfügt über Code zum Ausschneiden von Edge. –
Nein, es hat Unpinging-Kante. –