SCOM Remote Maintenance Mode Scheduler 2.0

SCOM Remote Maintenance Mode Scheduler is a GUI based tool that lets administrators easily schedule maintenance mode for a server or group of servers inside System Center Operations Manager 2012

Download for 2012:

Instructions:  SCOMRemoteMaintenanceModeScheduler2.0.pdf

New Features in version 2.0 include

  • Ability to schedule a daily maintenance mode.
  • New Show Scheduled Tasks Dialog.
  • Added feature to see all details for scheduled jobs.
  • Added feature to delete scheduled jobs
  • Fixed Minor bugs

Here is what the new Show Scheduled Tasks Dialog looks like


136 Responses to SCOM Remote Maintenance Mode Scheduler 2.0

  1. Scott February 5, 2010 at 1:49 pm #

    Hello, after installing the scheduler, I ge the following error when creating a task,

    Access is Denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))

    Any ideas??


  2. OngBak February 8, 2010 at 10:02 pm #

    Bump for R2 support!

  3. Marty March 16, 2010 at 10:37 am #

    I’m on R2. Do I need to wait for the anxiously awaited “R2 version?”

  4. Rick Shover March 17, 2010 at 4:20 pm #

    Looks likeit would be a great tool, but when I try to run it from the Computer tab I am getting “Network address invalid.” Not sure what to do about that. I tried using teh FQDN for the RMS server – didn’t make a difference. Thanks for any help that you might be able to give.

  5. Dominique April 23, 2010 at 2:43 pm #


    I tried per computers and everything works well.
    When I try to use a group after browsing the list of group I am getting an error:
    “Object reference not set to an instance of an object.”

    What am I missing?

  6. Dominique April 23, 2010 at 3:08 pm #

    I reinstalled it and it works for groups except for nested Groups, is it normal?

  7. Dominique April 23, 2010 at 3:13 pm #

    Okay Tim I found your comments “Only groups in unsealed management packs will show up” the nested group is a sealed MP so it might be why the machines did not get the MM scheduled, isn’t it?
    Anyway your tool is fantastic… ane very helpful all times…


  8. Doug April 27, 2010 at 1:17 pm #

    It doesnt seem to like any groups with spaces in them which is nearly all of them. I get a Group ‘testing 123’ not found. Works fine for groups which dont have spaces.

  9. Tim April 27, 2010 at 6:56 pm #

    I have tested it many times. Groups with a space work fine.

  10. Jason April 28, 2010 at 5:42 pm #

    How about putting domain groups into maintenance in addition to the current SCOM groups?

  11. Tim April 28, 2010 at 5:57 pm #

    Not sure what you mean. Can you explain more?

  12. John Bradshaw April 28, 2010 at 9:00 pm #

    Beauty! Works a treat on R2.
    thx Tim,
    John Bradshaw

  13. Krazy May 3, 2010 at 8:33 am #

    works like a charm in R2 … U THA MAN !!!

  14. Mats Augustsson May 17, 2010 at 10:19 am #

    Hi! I have installed it as describe in the document but it don’t work when I scheduler it. It work when I run the command manually as it says in the “Show Scheduler Tasks” under “Program File” and “Command Line”. The task egine windows just flash with some red text, I don’t get time to see the message.

  15. Mats Augustsson May 18, 2010 at 9:07 am #

    Hi! Have solved my problem now. I needed to put some text in “Comment”.

    One other thing: Do you think that you will update this script/program to also have the possibility to just put one application into Maintenance Mode for one server.

  16. Frankg May 21, 2010 at 3:15 pm #

    Great tool ! Could you please add linux machine in the “get-computer” query of your next version ?



  17. New2scc August 9, 2010 at 9:38 am #

    Hi, this tool is great but can you schedule to maint mode on monthly basis aswell as the current once/daily/weekly option?

    As a workaround, could I use the tool to create the schedule and then use Task Scheduler to go in and edit the trigger to the monthly requirements?


  18. Steven August 16, 2010 at 12:35 pm #

    Hi Guys,
    I have a question in regard VMs on a cluster
    1.Can scom start maintance mode for the server in the cluster if a physical switch fail.
    2.How t trigger scom to move vm with scvmm.
    3.Is there script how to detect netwrok failures.

  19. Thomas Rae September 9, 2010 at 12:51 pm #

    I have tried to run this and I am running 2007 R2 of Ops manager. I am getting an informational stating the task stopping due to timeout reached. And it has never put the system into maintenance mode. I am using an account that is on a machine I am trying to run this against. Anyone have any suggestions.

  20. Murad September 23, 2010 at 12:36 pm #

    It is not practical for us to create combination of server groups in SCOM (i.e. few AD, SQL, Exchange, IIS etc) every time we need to put them in maintenance mode. There is a potential of performance hit by creating too many groups in SCOM so It would be really nice/helpful to allow us to use/import a server list (excel, txt, csv etc) instead of groups or single computer etc.

    Here is a use case for this requirement: We have about 600 Windows servers running different roles/applications and are being managed/administered by different application owners/groups. They are responsible for installing/uninstalling/configuring there apps and whenever they need to put their servers in MM they should be able to just use a list of servers as suppose to SCOM admin creating a group for each app/server owner.

  21. bernd October 7, 2010 at 4:50 am #

    I have tried to use a group with only SQL Server and SQL Agent members included.
    The reason for this to avoid alerts while running sql backup but to keep monitoring running for the rest of the maschine.
    Now I found out that your ps-sript for group only looks for class windows computers.
    Maybe you can add another tab like group for objects or change the ps script for include more than only windows computers.
    The idea from Frankg is good. We have too Linux maschines.

    Is there a Lifecycle plan for this tool ?


  22. RW October 28, 2010 at 12:14 pm #

    Application doesn’t work locally or remotely when the Security Policy “Network access: Do not allow storage of credentials or .NET Passports for network authentication ” is set to Enabled. This pretty much kills this applications value in our environment if there’s not a workaround for it.

    I too also get the Access Denied error trying to reach out to the target server, even if I’m running it locally as an Administrator account that as Admin level access to the target server.

  23. Mats Augustsson December 10, 2010 at 5:59 am #

    Hi! How can I use 24 hours time stamp in the start time options? We use 24 hours time stamp in our server in Sweden.

  24. Denyse January 5, 2011 at 3:30 pm #

    This tool seems to work great for server objects, but I can’t seem to get other objects (like icmp) to go into maintenance mode with this tool. If I add the icmp objects into a group, and schedule a task, the task will run, however, the icmp objects never seem go into maintenance mode. Am I missing something or is this not part of the functionality of this tool?
    Looking forward to your response. 🙂

  25. Nicolaj Rasmussen January 20, 2011 at 10:05 am #

    I have the same problem as MichaelW.

    We have a dynamic group that is populated withh all agents using “( Object is Agent AND True )”.
    In the OpsMgr Ops Console it is populated with members – but when running the command manually:

    C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe C:\MaintenanceModeV4\GroupMaintenanceModeV4.ps1 -rootMS: ‘omms-01’ -groupName: ‘All Agents’ -minutes:240 -comment: ‘Maintenance Window 01-05’ -reason: ‘PlannedOther’ -startMM:$true

    I get the message:
    0 computers found in the ‘ADP – All Agents’ group

    Will the script not work with dynamic groups?

    Thanks for any help!


  26. Kevin Rice January 27, 2011 at 4:52 am #


    The scripts should be able to pick up the members in the group. Although, I’m having the same problem others have mentioned regarding spaces in the group names in my case. However, I tracked that down as being due to running the script from Powershell 1.0 under Windows 2003 R2 directly as opposed to calling Powershell from the Windows command line which is what the scheduled task does.

  27. Sascha February 1, 2011 at 11:28 am #

    Is there any update avaialable to make this nice tool working on a Windows 7 computer?
    Thanks for your help.

  28. Tim McFadden February 1, 2011 at 11:30 am #

    It works fine on Windows 7. What is the issue?

  29. Steve February 2, 2011 at 11:18 am #

    Hi The problem is I when I use run as to run the application I am able to get through to the GET GROUPS or GET COMPUTERS button but as soon as I click on it I get the error

    ************** Loaded Assemblies **************
    Assembly Version:
    Win32 Version: 2.0.50727.4952 (win7RTMGDR.050727-4900)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
    Scom Scheduler
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/Users/myname/Desktop/Scom%20Scheduler.exe
    Assembly Version:
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/
    Assembly Version:
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/
    Assembly Version:
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/

    ************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the section.
    The application must also be compiled with debugging

    For example:

    When JIT debugging is enabled, any unhandled exception
    will be sent to the JIT debugger registered on the computer
    rather than be handled by this dialog box.

  30. Tim McFadden February 2, 2011 at 11:23 am #

    Try this. Remove the application. Update your .Net framework. Then re-install it.

  31. Keithk February 8, 2011 at 5:10 pm #

    When I tried putting a group after browsing the list of group I got the error:
    “Object reference not set to an instance of an object.”

    I found that in the comments section I was using a date that contained “/” (minus the quotes)which caused the problem. When I changed the date from “/” to use “-” it worked fine. For example a comment using 2/4/2011 would not work, but a comment using 2-4-2011 would work.

  32. PhilipL March 16, 2011 at 12:57 am #

    Great tool.. Found that the maintenance mode works but am unable to see the icon appear in SCOM. Also tasks dont appear to be ending in the duration requested. Often have to end the task manually. Thanks

  33. Anand V March 22, 2011 at 6:03 pm #

    Fantastic. Just what I looking for. Thanks for creating this awesome program.

  34. Sameer April 1, 2011 at 1:50 pm #

    This had always been a great working tool for me. Recently I changed jobs, and at this new venture I installed the tool for everyone to use. But unfortunately it does not work. Probably because this is win2k8 servers. I tried installing it on the server too, but when I click on create it errors out.
    Under Groups when I click on Create it errors out to – Object Reference not set to an instance of an object
    Under Computers tab When I click on Get computers it errors out – cannot connect to RMS.

    Last week I could schedule it for the groups and not individual computers, but from this week, even the groups i cannot schedule. Anyone experience anything similar?

  35. KevinW April 11, 2011 at 3:13 pm #

    I was also getting “Object reference not set to an instance of an object.”

    I was putting a time 7:15PM into my comment, once I removed this (I’m guessing the ‘:’ gave it problems) it works fine!

    Thanks for this tool, shame on MS for not including recurring maintenance capability.

  36. Jeff B April 21, 2011 at 11:38 am #

    I am having the same issues as PhilipL. The tool works great and the script kicks off MM for my specified server. When I look at the server under monitoring it even has the End Time correctly noted however MM doesn’t actually end. Any ideas Tim?

  37. rubin May 6, 2011 at 3:02 pm #

    Hi Tim, Great Tool..
    I tried to use it today to schedule some maintenance on servers but when I hit “Get computers” it did not discovered Unix servers but windows servers shows up.
    Is the tool can get Unix servers appeared as well ?

  38. Mark May 9, 2011 at 7:24 am #

    Got the problem with 0 computers found in the group too. Anyone got a solution? I am sure that there are members in the group. When i schedule a task for only 1 computer it works fine.

  39. Jason D May 9, 2011 at 12:48 pm #

    **Feature Request: The ability to include “Sealed MP Groups” in the app.

    – All my custom MPs are sealed. Due to this I am not able to see any of my groups in the app. Generally I have to just pick one of the groups, go to Task Scheduler and edit the parameters to include the groups from the sealed MP that I want. Otherwise, loving this tool.

  40. Dominique June 15, 2011 at 4:29 pm #

    Hello Tim,

    I am trying to use the Groups but the machine does not show the for “Maintenance Mode” I checked the Task Scheduler it is in and ran okay… I checked the SCOM Scheduler it is listed as done…

    Any over troubleshooting steps to see why I do not see the maintenance Mode Symbol listed!!!

  41. Priscilla July 5, 2011 at 1:36 am #

    The task is created in task scheduler, however it will not run from the task scheduler. I click run, it appears to sucessfully complete but nothing happens.
    If run in Windows PowerShell:
    C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe C:\MaintenanceModeV4\AgentMaintenanceModeV4.ps1 –rootMS: ‘RMS Server’ -computerPrincipalName: ‘ServerName’ -minutes:6 -comment: ‘Job Name’ -reason: ‘PlannedOther’
    It works fine and the server is put into maintenance mode.
    Both Agent and Server have ExecutionPolicy set to unrestricted.
    Why won’t it run for task scheduler? Please help! Thanks.

  42. Bryan heath August 15, 2011 at 11:12 am #

    Will you design this for SCOM 2012? I have a lab and it does not seem to be working. Also can I create any sort of group of items and put them in MM? IE. Put this APP Pool, IIS server and Sites into MM.

  43. Helen August 22, 2011 at 10:22 pm #

    Agent/GroupMaintenanceModeV4.ps1 script works for servers into maintenance in our environment. I have also found more script for web application maitenance and it works without any problem.

    I’m not powershell guru, is it possible to combine those two scripts into one?

  44. SorenDK September 9, 2011 at 4:21 am #

    I have mix a litte bit + Automatically Starting Maintenance Mode When Servers are Rebooted for Patching « Operating-Quadrant:

    I have made a solutions that works on 500 server and quick.

    A Subscription / monitor

    EVENT ID 1074


    A have made a Channel command (Powershell)

    D:\auto\xxxx.ps1 –rootMS: ‘xxx-rms01’ -computerPrincipalName: ‘$Data/Context/DataItem/ManagedEntityDisplayName$’ -minutes:5 -comment: ‘Server is being restarted, and will be in maintenance mode for 5 minutes from $Data/Context/DataItem/TimeRaisedLocal$ ‘ -reason: ‘PlannedOther’


    Script (xxxx.ps1)


    Add-PSSnapin “Microsoft.EnterpriseManagement.OperationsManager.Client” -ErrorVariable errSnapin;
    Set-Location “OperationsManagerMonitoring::” -ErrorVariable errSnapin;
    new-managementGroupConnection -ConnectionString:$rootMS -ErrorVariable errSnapin;
    set-location $rootMS -ErrorVariable errSnapin;

    $computerClass = get-monitoringclass -name:Microsoft.Windows.Computer

    $computerCriteria = “PrincipalName=’” + $computerPrincipalName + “‘”
    $computer = get-monitoringobject -monitoringclass:$computerClass -criteria:$computerCriteria

    $startTime = [System.DateTime]::Now
    $endTime = $startTime.AddMinutes($minutes)

    if($computer.InMaintenanceMode -eq $false)
    “Putting ” + $computerPrincipalName + ” into maintenance mode”
    New-MaintenanceWindow -startTime:$startTime -endTime:$endTime -comment:$comment -Reason:$reason -monitoringObject:$computer


  1. Everything System Center Operations Manager 2007 » Blog Archive » SCOM Remote Maintenance Mode Scheduler 2.0 R2 Scripts - April 28, 2010

    […] Maintenance Mode Scheduler 2.0 […]

  2. Cameron Fuller - November 8, 2010

    So, I installed OpsMgr. What’s next?…

    I have had a recent experience of working with a recently bu ……

  3. Just Another Maintanance Mode Script for SCOM 2007 | windowspowered - January 25, 2011

    […] […]

  4. Ramp Up Guide: System Center Operations Manager 2007 R2 - Microsoft Premier Support UK - Site Home - TechNet Blogs - August 3, 2011

    […] Maintenance Mode Scheduler […]

  5. Dude – unseal my MP! - Kevin Holman's System Center Blog - Site Home - TechNet Blogs - October 21, 2011

    […] it again.  He continually writes handy tools and solutions to help the OpsMgr admin.  His Scheduled Maintenance Mode solution is wildly famous.  His latest tool published is something I will use all the […]

  6. Cameron Fuller - November 9, 2011

    Dallas System Center 2012 Event–Q…

    There were several great questions asked during or directly ……

Leave a Reply