BatchPatch Tips and Shortcuts

  • Diplaying cell contents: The quickest and simplest way to view the content of any particular cell in a BatchPatch grid is to middle-click on the cell. The middle-click button is the same as the scroll-wheel on most mouses. If you didn’t already know, the wheel is also a button that can be clicked/pushed just like a regular left or right mouse button. Middle-click a cell to quickly view its contents.
    MiddleClickToolTip
  • Moving the cell contents tooltip/window: After you display the cell contents with middle-click, sometimes you might want or need to move the tooltip that is displayed to a new location. You can do this by right-clicking anywhere on that tooltip/window. Then just drag it to the desired location.
  • Expanding row contents: You can double-click on any row in the grid to display the entire row’s contents in an HTML formatted window. If you want to view the contents of more than one row at a time, then simply highlight the rows and press the ‘R’ key on your keyboard. Alternatively you may right-click on the selected rows and then click the option to ‘Expand row(s)’
    ExpandRowContents
  • Moving rows up/down in the grid: You might not have realized that you can move individual rows or groups of rows up and down in the grid without sorting the entire grid. Highlight the rows you want to move and then hold down the CTRL key and press the + or key to move the rows up or down.
    MovingRows
  • Adding/removing buttons on the ToolStrip/ToolBar: Select ‘Tools > Customize visible toolstrip buttons’, and then check or uncheck the items you want to add or remove. If you ever want or need to reset the ToolStrip back to its default configuration, you can do that by selecting ‘Tools > Reset toolstrip to default configuration.’
  • Re-arranging icons/buttons on the ToolStrip/ToolBar: Hold down the ALT key, and then select the button you want move with left-click. Drag it to a new location on the ToolStrip and it will stay there. If you ever want or need to reset the ToolStrip back to its default configuration, you can do that by selecting ‘Tools > Reset toolstrip to default configuration.’
  • Toggling the grid border style: Pressing CTRL-B will toggle through the 4 possible grid border style options. You can have no cell borders, horizontal borders only, vertical borders only, or both horizontal and vertical borders, which is the default configuration.
    BorderStyle
  • Modifying the row selection color: If you don’t like the default yellow row selection color, make it any color you want. Select ‘Tools > Row selection color’ or simply click on the color palette icon in the menu strip. You’ll be presented with a new window where you can either select one of the out-of-box colors or set your own color by clicking on the color palette.
    RowSelectionColor
  • Changing the intensity of the alternating row background color: There is a tiny little arrow icon in the lower-left corner of the BatchPatch window. Clicking this icon reveals a slider that lets you change the intensity of the gray row background color for alternating rows in the grid. You can disable it altogether by dragging the slider to the lowest possible position.
  • Transparency: Yes, it’s true that BatchPatch supports transparency, if you so desire. This is one of those features that we included for fun, simply because we could (not because we think it’s useful). 🙂 In the lower-right corner of the BatchPatch window there is a tiny arrow icon. If you click on this icon a slider will appear. Lower the slider if you want to make the BatchPatch window transparent.
  • LED images: The column that appears farthest to the left in the BatchPatch grid contains ‘LED’ images to indicate online/offline status of computers in the grid. While these LED images will change color when a row is rebooted or pinged, did you know that you can also control these images independently of what actions are executed for a given row? For example, if you load a list of hosts into a grid, you can simply left-click on the LED image row header to start (or stop) an online/offline check for all hosts in the grid. Furthermore, if you middle-click the LED image row header, all LED images in the grid will be reset to gray. Middle-clicking the LED image of a specific row will disable that particular row from being included in the online/offline status check. Shift-middle-clicking a specific row’s LED image will turn that image blue, which can be used to indicate ‘completion’ if you desire.
    LED_Demo
  • Importing hosts: Did you know that when importing computer names or IP addresses into the BatchPatch grid, you can simultaneously import MAC addresses and/or general notes? For example, when you select ‘File > Add Hosts’ you aren’t limited to just adding a list of computer names (EDIT 20150602: new/additional import options are available and explained here: Importing Hosts and Other Information Into a BatchPatch Grid) . If you want to add a MAC address with each computer, you can do so by formatting your list as follows:

    host1#1C6F65D56413
    host2#2D:5E:43:F2:21:24


    If you want to populate the ‘Notes’ column for a given host, then you can use the following syntax:

    host4|notes for host4
    host5|notes for host5


    If you want to populate both MAC and Notes for your hosts, then use this syntax:

    host1#1C6F65D56413
    host2#2D:5E:43:F2:21:24
    host3#1B3A65B54322|notes for host3
    host4|notes for host4


    Note, you can also create a text file using the above syntax, and then simply drag and drop the .txt file onto the BatchPatch window, or use ‘File > Open’ from within BatchPatch to browse to the .txt file.
Posted in Blog, General, Tutorials | Tagged , | Comments closed

Remotely Deploy a Standalone .MSU Update to Multiple Computers

You need to install a single .MSU update on many computers, but you don’t want to log on to each computer to initiate a manual installation, and you don’t want to deal with writing a script. I know how you feel. I’ve been there many times. The good news is that with BatchPatch you can take care of the entire process with just a few clicks and a couple of minutes. Here’s how it works…

In the example below we will remotely install update KB2965142 using a standalone .msu file obtained from Microsoft.

  1. In the BatchPatch grid, highlight the computers that you will be deploying the update to. In the screenshot below you’ll see that I’m only deploying the update to a single target computer. However, if you are working with many target computers you can simply highlight all of them instead of just one. All other steps are identical.
    2015-01-08 13_54_53-new 1 - BatchPatch X6
  2. With the host(s) selected, let’s now create the deployment by clicking ‘Actions > Deploy > Create/modify deployment.’ In the deployment window we’ll select the .msu file from our computer, and then we’ll select the ‘ install’ radio button as well as the ‘/norestart’ checkbox since I don’t want the target computer to restart on its own. We can optionally also give this deployment a title so that it can be saved for later use. In this example I’ve used the title ‘Install KB2965142.’ To save it simply click the >> button, which will add it to the list of ‘Saved Deployments.’
  3. 2015-01-08 14_12_34-Deploy .msi .msp .msu .exe .reg .vbs .bat .cmd .ps1 etc

  4. Once the deployment is created we can either execute it immediately for the highlighted rows by clicking the “Execute now” button, or we can close the deployment window and execute it later directly from the Actions menu. In this case let’s close the window so that you can see how it works when you save a deployment before executing it. After closing the deployment window, simply highlight the hosts, right click or use the actions menu, and select ‘Deploy > Execute saved deployment > Install KB2965142.’ We can see that as soon as the ‘Install KB2965142’ is selected, a tooltip appears showing us that particular saved deployment’s configuration. The configuration is, of course, the same configuration that we applied in the previous step before we saved the deployment.
    2015-01-08 14_12_48-Program Manager
  5. We are now presented with a confirmation dialog, which gives us another opportunity to verify the configuration of the deployment that we are about to execute. Click ‘OK’ to begin execution.
    2015-01-08 14_15_12-new 1 - BatchPatch X6
  6. When the installation completes we get exit code 3010, which indicates that the installation was successful but a reboot is required to complete it. We can use BatchPatch to initiate the reboot at our convenience.
    2015-01-08 14_38_11-new 1 - BatchPatch X6
Posted in Blog, General, Tutorials | Tagged , | Comments closed

Determine if a Particular Windows Update is Installed on Remote Computers

Windows administrators periodically need to check their systems to determine if a particular update has been installed. BatchPatch provides a simple way to scan for previously installed Windows Updates on numerous remote computers. You can use this facility to generate a consolidated report of the computers that have a particular update installed, or you can generate a report of all installed updates on all computers. It’s up to you.

Note, we have an alternate method for checking if a particular update is installed posted here: An Alternate Way To Check If Computers Have A Particular Windows Update Installed

Add hosts to a grid in BatchPatch, and then highlight the desired hosts and right-click > Windows Updates > Generate consolidated report of update history. This will bring up the report settings window. Since the purpose of this tutorial is to search for a particular update, let’s examine our options for doing this.

BatchPatch_ConsolidatedUpdateHistoryReport

One option is we can use the “Filter by title:” section to specify which update we are looking for. Perhaps we need to find computers with KB2800095 installed. All we have to do is enter that particular ID into the ‘Filter by title’ field before we execute the search. In the screenshot below you can see I’ve set the search preferences to only include the last 300 days, and I’ve entered ‘2800095’ into the ‘Include’ section of the filter options. When I execute the search I expect to get a list of machines that had this update installed within the past 300 days.

2014-12-29 13_07_36-new 1 - BatchPatch X2

Click ‘Generate Report’ to begin the search process. When the search completes, we can see both of the machines that we searched had this update installed in the past 300 days.

2014-12-29 13_11_53-Consolidated Update History Report

Pretty simple, right? The other option we have for obtaining this information is very similar, but in this case we would leave the ‘Filter by title:’ section blank. In this case we’ll simply retrieve all updates that have been installed on the selected computers during the past 300 days. Once we have this complete list, we can then do a search for the particular update in question, or we can sort by update title. As you can see in the screenshot below, I simply typed ‘2800095’ into the “Find” field, and the first computer with that update installed was highlighted. Continually clicking the ‘Find’ button will rotate through every search hit, as you would expect.

2014-12-29 13_19_08-Consolidated Update History Report

That’s all there is to it. I told you it was simple!

Posted in Blog, General, Tutorials | Tagged , | Comments closed

Multi-Step Execution Using the Job Queue

Last week we published an update to the BatchPatch Job Queue that adds some nice new features, and I thought I’d take some time to show you what you can do with it.

BatchPatch Job Queue

In the new Job Queue interface you’ll find the following items that weren’t previously available:

  • Wait for host to go offline and come back online:
    In previous versions of BatchPatch if you executed a task that involved rebooting a computer, you didn’t have a way to start the next task in the queue as soon as the computer finished rebooting. Instead you’d have to set a “wait” period of something like 10 minutes, after which the next task would begin, regardless of whether or not the computer had actually finished rebooting.

    However, in the new Job Queue you now have the option to Wait for host to go offline and come back online. If you insert this special item after a reboot task, BatchPatch will automatically keep track of the target computer’s status, waiting for the machine to go offline and then come back online before proceeding with the next task. The next task will not begin until BatchPatch is able to confirm that the target computer is replying to pings *and* also responding to Windows Management Instrumentation (WMI) queries. If a ping is successful but the machine isn’t ready to respond to WMI queries, BatchPatch will wait a minute before it tries again. As soon as it gets a valid response from WMI, it will proceed with the next task in the queue.

    Note, there is an additional setting in the Job Queue that allows you to set the timeout threshold for this feature. See ‘Wait for host to go offline / come online’ global timeout (minutes). The default value is set to 60 minutes. If the host never goes offline (maybe it hangs while it’s shutting down) or if the host goes offline but never comes back online and/or never begins responding to WMI queries within the 60 minute window, BatchPatch will simply stop processing the job queue for that host.
  • Stop queue execution if previous action fails/errors
  • Inserting this new special item in a queue after a custom script gives you the ability to make sure that BatchPatch will not proceed with the queue execution if the custom script does not run successfully. When this Stop queue execution if previous action fails/errors item is reached in the queue, BatchPatch will check the previous action’s exit code. If the previous action’s exit code is non-zero, BatchPatch will terminate the queue.

  • Saved User-Defined Commands and Deployments
  • The new Job Queue interface now lets you add your own saved commands and deployments to a queue. We know that a lot of you have been waiting for this, and we’re pleased that it’s finally available for you.

  • Saved Queues
  • You can finally save your job queues for future execution! This is another item that many of you have been waiting for. The cool thing is that once you save a queue, it will then appear “hard-coded” into the BatchPatch actions menu for future execution. You can execute a saved queue by highlighting hosts in the grid and then selecting Actions > Job Queue > Execute saved job queues. See the screenshot below:
    2014-12-18 12_21_17-Program Manager

Posted in Blog, General | Tagged , | Comments closed

Remotely Installing .NET 4.5.1 on Windows 7 and Windows Server 2008R2

This is an example of using BatchPatch to install .NET 4.5.1 remotely on Windows 7 and Windows 2008R2 computers.

Overview: The process is very straightforward. Add the target hosts to your BatchPatch grid, create the BatchPatch deployment, and then finally execute the deployment. It’s important to always test a new deployment on a single machine before you try to execute it across numerous computers. This way you can iron out any kinks in the process to make sure it’s working properly before you move forward with it on your entire network.

Important: Please try to remember that any remote deployment task in BatchPatch requires that the installation be executed silently / quietly. When I say “silent” or “quiet” installation, I mean that the installation process needs to be executed without requiring any user interaction whatsoever. As you know, many installer packages will prompt the logged on user to click OK or to select an installation directory or to specify some other installation-specific options. However, in the case of a remote installation, there won’t be any opportunity to click on various options that the installer presents. In fact, if the installer presents any options, the presentation of these options will actually be hidden from the view of any logged on users because it’s being executed in the background. In this case the installation will simply appear to hang indefinitely without ever completing. So, any time you’ve attempted a deployment and it appears to be hanging with no completion, then you can rest assured knowing that it’s simply waiting for user input. In that case, since the remote deployment is hidden from view, you would have to manually kill the installation process on the target computer and then start over again with the correct silent/quiet parameters.

  1. Determine the “silent” / “quiet” installation parameter:
    You can generally learn what the “silent” / “quiet” parameters are by executing the installation at the command line with the “/?” or “/help” parameter. For example, take a look at the screenshots below, where I have launched the .NET installer package with the “/?” parameter. Doing so displays a windows with all of the installation options.

    cmd_dotNetInstaller_Help
    dotNet451InstallerOptions

  2. Create the deployment:
    Highlight the host(s) and choose Actions > Deployment > Create/modify deployment. In the window that appears, you’ll select the location of the .NET installer file, and you’ll add the “/q” parameter to ensure that the installation executes without any interaction. In the screenshot below you can see I’ve also added the /log parameter, so that I can review the installation log in the event of a problem or failure. Note: The installation package that I’m using is the offline installer that Microsoft offers. You will not be able to use their online installer for this silent deployment because their online installer does not offer a silent/quiet installation parameter. The offline installer is available here: http://www.microsoft.com/en-us/download/details.aspx?id=40779
    dotNetOfflineInstallerDeployment4.5.1
  3. I’ve saved the Deployment, and now I can execute it using Actions > Deployments > Execute saved deployment
    ExecuteDotNet451Deployment
    Confirm the deployment configuration and click OK on the prompt that appears:
    2014-12-08 13_33_22-new 1 - BatchPatch X1
  4. .NET Installer Exit Codes:
    0: Installation completed successfully.
    1602: The user canceled installation.
    1603: A fatal error occurred during installation.
    1641: A restart is required to complete the installation. This message indicates success.
    3010: A restart is required to complete the installation. This message indicates success.
    5100: The user’s computer does not meet system requirements.

Posted in Blog, General, Tutorials | Tagged , , , | Comments closed

Troubleshooting Common Errors in BatchPatch

When BatchPatch was designed one of the fundamental tenets was to keep it as simple as possible while also being extremely functional and effective. It was and still is very important to us to make sure that BatchPatch is easy and intuitive to use. That said, as much as we’d like for there to never be any errors, it *is* still software after all, and we use errors to express when there was a problem. The intention of this posting is to cover the most common errors that users encounter, and to provide information to help rectify those errors.

  • The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)

    **The most common reason one encounters this error is due to a firewall. It could be a software firewall or a network level hardware firewall. In either case, BatchPatch needs access to the target machine’s RPC server, and if there is a firewall enabled on the target machine or in between the BatchPatch computer and the target computer, it will need to be configured to allow the appropriate traffic to pass through. For instructions on configuring BatchPatch to work with Windows Firewall, please see: Using BatchPatch with Windows Firewall. For more information on ports used by BatchPatch, please see: BatchPatch Ports.

    **Another possible reason for this error is because The Remote Procedure Call (RPC) service is not started/running on the target computer. Launch the services console on the target machine (Start > Run > services.msc) and make sure the service is set to Automatic and that it’s started.

    **Finally, if the BatchPatch computer is not able to resolve the name of the target computer (typically using NetBIOS or DNS), or if there is simply no response from the target computer or IP address, this is the error that we would expect to see. If, for example, you added a non-existent host or IP address into the BatchPatch grid, and then you tried to perform some action on that non-existent host, you would encounter this RPC error. So, if you are sure that the machine name or IP is correct and that the machine is powered on and connected to the network, then it means that the machine simply isn’t responding to RPC requests, likely due to one of the above-mentioned reasons. To ensure that the issue is not related to name resolution, we recommend testing both the IP address as well as the FQDN (fully qualified domain name) of the host in the BatchPatch grid instead of just the simple host name.

    **If you’ve gone through the above information and still get this error, then you’ve probably got something more significant happening with the target computer in question. You might consider looking through Microsoft’s posting and troubleshooting steps here: Windows Server Troubleshooting: “The RPC server is unavailable”

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

    **This error message is due to an issue with account permissions. The following link explains everything you need to know about authentication problems. Most ‘Access Denied’ issues can be resolved with the information at this link: BatchPatch Authentication in Domain and Workgroup (non-domain) Environments

    **In some rare cases you might get ‘Access Denied’ as a result of the remote execution context settings. These settings can be controlled/configured under ‘Tools > Settings > Remote Execution Context‘ and can have an impact on ‘Access Denied’ permissions issues under certain circumstances, depending on the nature of the command. We recommend trying all of the four following combinations for your command to see if one works better for your particular situation and particular command:
    SYSTEM
    SYSTEM + Interactive
    Elevated token
    Elevated token + Interactive

    **Another rare case of ‘Access is denied’ can occur if your BatchPatch instance is running on a Windows version that is patched to a date *prior* to November 2021 but your target computers are patched to a date of June 2022 or newer. See here for more details on that issue.

    **It’s possible that there might also be some very rare cases where ‘Access is denied’ could be caused by a software firewall or hardware/network firewall, anti-virus software, HIPS software, or some other similar security software suite.

    **Further troubleshooting for authentication problems that are specific to WMI:
    WMI troubleshooting article
    WMI Diagnosis Utility

    **Also you should review the Getting Started Guide to make sure you are all setup correctly for BatchPatch to work properly.

    **If you are still stuck the BatchPatch Troubleshooting Guide will help you step through to figure out where things are going wrong.

  • BatchPatch is stuck on ‘Windows Update: Attempting to initiate Windows Update’ or ‘Deployment: Initiating execution’

    Please review this link for an explanation and resolution steps.

  • -102: Failed to execute the search. HRESULT: [Some_HRESULT_value_here]

    For complete details on error -102, see BatchPatch Error: -102: Failed to execute the search. HRESULT -XXXXXXXXXX

    The -102 error occurs any time the target computer is unable to execute the search for updates. The HRESULT code that is reported with the -102 error is the key to determining the specific reason for the failure. If you closed BatchPatch without saving the HRESULT code, you can still view this in the target computer’s BatchPatch.log and/or BatchPatchError.log, which will both be stored in the remote working directory. The default location is C:\Program Files\BatchPatch unless you have modified the ‘Remote working directory’ location under ‘Tools > Settings > General.’ HRESULT codes will be in decimal format, but we usually need to convert them to hex in order to figure out what they mean. The easiest way to do that is with your Windows calculator. Launch calc.exe and switch to the ‘Programmer’ calculator by clicking the button in the upper left corner of the calculator window.

    In the Programmer calculator select DEC and paste in your HRESULT value. You can then see the HEX value. In this example I’ve pasted -2147012867, and we can see the HEX value is 80072EFD.

    Once you have the hex representation of the HRESULT, you can look it up here to see what it means: Windows Update Error Code List

    In almost all cases the cause of the -102 error is due to a connectivity issue where the target computer is unable to reach or communicate with the WSUS server, ‘Windows Update’ server or ‘Microsoft Update’ server. In the event that a local WSUS server is the location being searched, the most common cause for this error is simply due to the WSUS server being down or offline or unreachable due to some type of network problem. In the event that the location being searched is Windows Update or Microsoft Update, this error is usually the result of the target computer simply not having internet access and therefore not being able to reach Microsoft’s servers. In some cases, the cause of this error is due to a proxy configuration preventing the Windows Update Agent on the target computer from accessing the Windows Update server. For more information on proxies and Windows Update, please see the following links:
    How the Windows Update client determines which proxy server to use to connect to the Windows Update Web site
    Using BatchPatch with an Enterprise Web Proxy

Posted in Blog, General, Tutorials | Tagged , | Comments closed

Using ‘Offline Mode’ to Install Windows Updates on Computers That Do Not Have Internet Access or WSUS Access – Video Tutorial

This video demonstrates the process for installing Windows Updates to an entire network of computers when that network is completely segregated with no internet access and no WSUS access.

Note, there are multiple ways to utilize ‘offline mode’ and this video demonstrates only one method. All methods are described in more detail, with tutorials, here: Cached Mode and Offline Updates

Using ‘Offline Mode’ to Install Windows Updates on Computers That Do Not Have Internet Access or WSUS Access:

 

The written tutorial for this process is available here: Using Batchpatch In Offline Mode to Deploy Windows Updates to Computers that Do Not Have Internet Access

Posted in Blog, General, Tutorials, Videos | Tagged , , , , | Comments closed

Importing Notes or MAC Addresses into BatchPatch

Generally speaking there usually isn’t a need to import MAC addresses into BatchPatch because you can use Actions > Get Information > Get MAC address to retrieve the MAC addresses for hosts that are in the grid. However, there are still times where you might need or want to import MAC addresses. For example, maybe your machines are not on the network at the time that you want to add the MACs to BatchPatch, or it’s possible that using the ‘Get MAC address’ action is retrieving the MAC address for a different network adapter than you want to use for Wake On LAN.

With regard to notes, you may very well want to populate the ‘Notes’ column in BatchPatch with instructions or notes about computers in the grid. There are a couple of different ways to accomplish this task.

Import Notes or MACs When You Import Hosts

The process for adding MAC addresses or notes is very simple. You can import directly from a text file or by simply typing directly into the ‘Add hosts’ dialog, which is accessed under File > Add hosts

The format that you need to use is as follows:

host1|Notes for host1
host2|Notes for host2
host3#1CF6565D4631
host4#C16F342E3521
host5#D2FF245C1432|Notes for host5
host6#D2DC425C1432|Notes for host6

If you copy the above text exactly as it is written and then paste it into the File > Add hosts dialog, you’ll see that the hosts, MACs, and notes are all entered at once into the BatchPatch grid. The following screenshot illustrates this:
ImportingHostsMacsNotes

If you instead paste the above text into a .txt file, you can simply use the File > Open to browse to the .txt file and import it. The results will be identical to the screenshot above.

Import Notes or MACs for Hosts that Already Exist in the Grid

If you already have a grid that’s populated with hosts but you want to add MACs or Notes to that existing grid, the process is almost identical to the steps outlined above. The only difference in this case is that instead of using File > Open or File > Add hosts, you’ll need to first highlight the hosts that you want to import notes or MACs for, and then use Actions > Import notes or MAC addresses.

The format of the .txt file for importing notes should be:

host1|Notes for host1
host2|Notes for host2
host3|Notes for host3
host4|Notes for host4

The format of the .txt file for importing MACs should be:

host1#1CF6565D4631
host2#D2FF245C1432
host3#D2DC425C1432
host4#C16F342E3521

That’s all there is to it. Some admins like to keep one big master .txt file list of all Hosts|Notes, and then when it’s time to start patching they simply setup their BatchPatch instances and import the notes. This is preferable in some instances to manually editing cells.

Posted in Blog, General, Tutorials | Tagged , , , | Comments closed

Remotely Deploy Windows Updates To Computers With No Internet Access

We recently added two new features to BatchPatch: Cached Mode and Offline Mode. The use of these two features together enables administrators to deploy windows updates to remote computers when the computers do not have internet access.

For those of you who are working with highly secure networks that are completely detached from the world, or if you simply have a network that doesn’t have internet access or a WSUS server, you can use Offline Mode to install windows updates on all of your computers, simultaneously, in just a few steps.

The general outline is as follows:

  1. Enable both Cached Mode and Offline Mode in BatchPatch.
  2. Run BatchPatch in the offline network to determine which updates are needed by the target computers.
  3. Run BatchPatch on a computer that *does* have internet access, so that it can download the updates needed by the offline computers.
  4. Copy all of the downloaded update files on an external hard drive to the offline network.
  5. Run BatchPatch on the offline network to deploy the repository of updates that were copied in the previous step.

The detailed tutorials are below:

Offline Mode When BatchPatch Has Internet Access But Target Computers Do Not

If you’re using BatchPatch on a network where BatchPatch has access to the internet but the target computers that you’re deploying updates on do not have internet access, then please follow this tutorial:
Using BatchPatch In ‘Offline Mode’ When BatchPatch Has Internet Access

Offline Mode When BatchPatch And Target Computer Do Not Have Internet Access

If you’re using BatchPatch on a network where neither the BatchPatch computer nor the target computers have internet access, please follow this tutorial:
Using BatchPatch In Offline Mode When BatchPatch Does Not Have Internet Access
BatchPatchCachedModeOfflineModeEnabled

Posted in Blog, General, Tutorials | Tagged , , | Comments closed

Getting The Most Out Of BatchPatch

We’ve been doing our best to get new features and functionality added to BatchPatch as quickly as possible, and there’s still a lot more to come. However, today I wanted to take some time to discuss how to get the most out of what’s currently available. Below are some tips for general BatchPatch usage to help an administrator work as efficiently as possible.

Organization:

Using BatchPatch Project (BPP) Files
When you’re managing a large number of hosts it’s likely that you’ll have them divided into groups. For example, you might have production SQL servers in one group, testing SQL servers in another, email servers in another, and so on. Aside from being able to load different groups of computers into different BatchPatch tabs, you might find that creating .bpp files helps you streamline your process. A .bpp file is simply a text file with a .bpp extension that contains a list of filepaths, with each filepath pointing to a different .bps or .bpt file. The nice thing about .bpp files is it gives you another level of organization. So, let’s say you have 5 tabs of database servers… DatabaseGroup1, DatabaseGroup2, DatabaseGroup3… DatabaseGroup5. And let’s also assume you have saved each tab to its own .bps file. Well, if you create a .bpp file either through ‘File > Generate project file’ or by manually editing a text file, you can easily group all of your database servers into a single project. If you launch the single .bpp file in BatchPatch, it will automatically populate the 5 grids with each database server group. You can take this a step further and create one .bpp file for each instance of BatchPatch that you want to run. Then if you launch multiple .bpp files at once, each .bpp file will create a brand new instance of BatchPatch. Each instance will contain one tab for each filepath specfied in the corresponding .bpp file. So, if you have 5 .bpp files, and each .bpp file contains 5 filepaths to different .bps or .bpt files, then when you launch all 5 .bpp files you’ll end up with 5 separate instances of BatchPatch. Each instance will contain 5 tabs.

Using BatchPatch Template (BPT) Files
.bpt files are another convenient way for staying organized when it comes to setting up your BatchPatch instances. A .bpt file is identical to a .bps file in every way except for the file extension which is .bpt instead of .bps, of course. You can create a .bpt file by either manually renaming a .bps file or by using the ‘File > Generate template file’ option in BatchPatch. .bpt files are nice because they allow you to create a template grid that BatchPatch will never overwrite. So, let’s say you want to start your patching run this week/month/quarter, and you load several .bpt files into BatchPatch. Each file might contain entries in the ‘host’ column and the ‘notes’ column. If you execute actions on the hosts in the grid and then go to save the grid, you will be prompted to save a new .bps file rather than overwriting the existing .bpt file. There’s nothing more to it, but this simple task can make it easier to repeat tasks each week or month without having to copy and paste, and without having to worry about accidentally overwriting a .bps file that you were using as a template.

Row Separators
What if you have a need/desire to have only a single tab of computers, but you want to create some visual separate between the servers in that single grid? You can create a “spacer” row using the “Enable/disable” feature. Create a “dummy” row and then use ‘Actions > Enable/disable’ to disable the row, which will color it dark gray. Voila! Now it functions as a visual separator.
BPSpacerRows

Efficiency:

Customizing Toolstrip Buttons:
Did you know that you can customize the buttons that are displayed on the toolstrip, thereby enabling you to have almost any BatchPatch action be available with a single click. Click on ‘Tools > Customize visible toolstrip buttons.’ From there you can simply select any action that you want to appear on the toolstrip.

Hard-coding User-defined Commands Into the BatchPatch Menu:
A lot of BatchPatch users have a set of remote commands that they regularly run on target hosts, either to collect information or to execute remote processes. BatchPatch allows you to “hard-code” any command into the BatchPatch menu so that commands you use frequently that aren’t built-in to BatchPatch are just as easily accessible to you as commands that are pre-built-in to the application. For example, BatchPatch has a built-in action for killing remote processes. You can select ‘Actions > Services / Processes > Kill specific running process,’ which lets you input a process name or PID to kill on target systems. This is great, but what if for some reason you always find yourself having to kill the same rogue process repeatedly on your systems? Wouldn’t it be nice to not always have to type in the process name? Well, you can create a user-defined command under ‘Actions > Remote process/command > Create / modify user-defined commands.’ You could then enter the following command into the window provided.

WMIC PROCESS where name='rogueProcess.exe' call terminate

Once you’ve entered a command, it will now be automatically saved so that it appears hard-coded in the ‘Actions > Remote process/command > Execute user-defined commands’ menu! Pretty neat. Now any time you need to kill that rogue process, you can simply click on the menu item that you just created, and that process will be killed without prompting you to enter a process name.

Middle-click Cells to View Cell Contents:
Any time you need to see the entire contents of a cell in a BatchPatch grid, the easiest way to do this is to just middle-click (scroll-wheel-click) on the cell. The cell contents are displayed in a custom tooltip window.

Right-click-drag on Cell Contents Tooltip to Move it to a New Location:
You can move the cell contents tooltip window around on your screen by right-clicking anywhere on it, and then dragging it to a new location.

Posted in Blog, General, Tutorials | Tagged | Comments closed