PowerShell Script to Remove Event receiver from Library

  1. #check to see  
  2. if the PowerShell Snapin is added  
  3. if ((Get - PSSnapin | Where  
  4.     {  
  5.         $_.Name - eq "Microsoft.SharePoint.PowerShell"  
  6.     }) - eq $null)  
  7. {  
  8.     Add - PSSnapin Microsoft.SharePoint.PowerShell;  
  9. }  
  10. ##SharePoint DLL  
  11.     [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")  
  12.   
  13. function RemoveEventReceiver($List, $EventReceiverId)  
  14. {  
  15.     $eventReceivers = $List.EventReceivers | Where  
  16.     {  
  17.         $_.Id - eq $EventReceiverId  
  18.     }  
  19.     if ($eventReceivers)  
  20.     {  
  21.         foreach($receiver in $eventReceivers)  
  22.         {  
  23.             Write - Host "Deleting Event Receiver from "  
  24.             $List.RootFolder.ServerRelativeUrl - ForegroundColor Yellow  
  25.             $receiver.Delete()  
  26.             Write - Host Deleted event receiver successfully. - ForegroundColor Green  
  27.         }  
  28.     }  
  29.     else  
  30.     {  
  31.         Write - Host No Event Receivers on List with id $EventReceiverId present - ForegroundColor Yellow  
  32.     }  
  33. }  
  34. write - host "Please Enter Site collection url" - foregroundcolor Yellow  
  35. $sourceSiteURL = Read - Host  
  36. write - host "Please Enter Event Receiver Id" - foregroundcolor Yellow  
  37. $Id = Read - Host  
  38. write - host "Please Enter Document Library Title" - foregroundcolor Yellow  
  39. $docLibrary = Read - Host  
  40. $siteColl = Get - SPSite $sourceSiteURL - ErrorAction silentlycontinue  
  41. if ($siteColl - ne $null)  
  42. {  
  43.     $spweb = $siteColl.OpenWeb()  
  44.     $TestList = $spweb.Lists[$docLibrary]  
  45.     if ($TestList - ne $null)  
  46.     {  
  47.         Write - Host List found. - foregroundcolor Yellow  
  48.         RemoveEventReceiver $TestList $Id  
  49.     }  
  50. }