How to Disable "Open with Explorer" View in SharePoint 2013?
Requirement: Got a requirement to Hide "Open with Explorer" button from a particular library's ribbon menu due to some security reasons.
Solution: Open with Explorer button can be disabled in multiple approaches.
Add Custom Action to Hide Open with Explorer:
While any ribbon button, group, tab can be hidden by overriding the specific custom action using Visual Studio based solution as in How to Hide SharePoint 2010 Ribbon Button, Group, Menu, Tab, Here I'm using PowerShell to add/remove custom action to hide Open with Explorer view in SharePoint 2013.

Add custom action to disable Open with Explorer button in SharePoint 2013:
Delete the custom action from list:
Lets remove the custom action we've created to hide Open with Explorer button.
You can also remove a custom action from SharePoint list via SharePoint designer, as in below screen:
Solution: Open with Explorer button can be disabled in multiple approaches.
- Disable "Client Integration" from Web Application's Authentication Providers.
- Remove permissions "Use Remote Interfaces" which also removes "Use Client Integration Features" from permission levels.
- Edit the "CustomDefalutTemplates.ascx" file located at: C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\CONTROLTEMPLATES. Find and Replace PermissionString from "UseClientIntegration" to PermissionString="MangeWeb" of nodes with ID "OpenInExplorer"
- CSS/JavaScript-jQuery methods to Turn-Off explorer view.
- Create a custom action with EMPTY CommandUIDefinition, so that it overrides existing ribbon button.
Add Custom Action to Hide Open with Explorer:
While any ribbon button, group, tab can be hidden by overriding the specific custom action using Visual Studio based solution as in How to Hide SharePoint 2010 Ribbon Button, Group, Menu, Tab, Here I'm using PowerShell to add/remove custom action to hide Open with Explorer view in SharePoint 2013.

Add custom action to disable Open with Explorer button in SharePoint 2013:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue #Variables $SiteUrl="http://operations.crescent.com/Monitoring" $ListName = "2015 Documents" #Get Web and List objects $web = Get-SPWeb $SiteURL $list = $web.Lists[$ListName] #Add an empty Custom Action to Override default custom action $CustomAction = $list.UserCustomActions.Add() $CustomAction.Title = "Hide Explorer View" $CustomAction.Location = "CommandUI.Ribbon" $CustomAction.commandUIExtension = " <CommandUIExtension> <CommandUIDefinitions> <CommandUIDefinition Location='Ribbon.Library.Actions.OpenWithExplorer' /> </CommandUIDefinitions> </CommandUIExtension>" $CustomAction.Update(); write-host "Custom Action has been Added successfully!"and our Output!

Delete the custom action from list:
Lets remove the custom action we've created to hide Open with Explorer button.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue #Variables $SiteUrl="http://operations.crescent.com/Monitoring" $ListName = "2015 Documents" $CustomActionTitle = "Hide Explorer View" #Get Web and List objects $web = Get-SPWeb $SiteURL $list = $web.Lists[$ListName] #Get the custom action $CustomAction = $list.UserCustomActions | where {$_.title -eq $CustomActionTitle} #Delete the custom action from list if ($CustomAction) { $CustomAction.Delete() }
You can also remove a custom action from SharePoint list via SharePoint designer, as in below screen:

Thanks very much !
ReplyDeletemany thanks! it's working very good!!!
ReplyDeletecan it work for sharepoint online?
ReplyDelete