Collection of powershell scripts for the automatic configuration, management and control of lab PCs.
These tools have evolved and been developed independently over many years through our operational needs in our own facility
Each tool can be installed/used independently of the others in most cases, if they dont require PPMS to operate (indicated below)
However they can be automatically installed together (after first time configuration for your facility) with a double click on a single script
This has saved us tremedously in installation and configuration time on our microscope PCs and analysis servers
Backend script
autoconfigure the PC for laboratory use
disable: screensaver, user switching, lock PC and other common settings
set permissions for the automation script operation and deployment
install required powershell modules
create logoff button on desktop
Requires the Stratocore PPMS booking platform
Backend script
Autodetection and installation of PPMS system parameters based on PC name (with manual override)
Configuration settings for subsequent scripts
webpage based script enable/disable functionality
Can utilise Statocore PPMS booking platform for system name/type
Backend script
Install custom desktop wallpaper for all users
Automatic installation of custom desktop wallpapers based on instrument name/type
Facility announcements and questionaires
Front end script
Create customised one-off, repeating, random announcements from a webpage and display on instrument pcs
Back end script
Configurable Autodeletion of files by location, age and filetype to manage multiple HDD space
reporting to admin via email/slack/teams when storage cant be cleared
Front end script
Requires the Stratocore PPMS booking platform
PPMS control panel (report incidents, quick book, current and next session info, email alerts etc)
Backend Script
Track and report multiple simultaneous software use to google sheets
Track remote vs local logins
Gather PC hardware configuration and usage stats
configurable via webpage table
import this data into Microsoft PowerBI to generate dashboards
Front end script
Requires the Stratocore PPMS booking platform
Logoff user automatically based on configurable logoff parameters
Allow pre- and post booking usage
Email alerts
Quick extend bookings
report incidents
easy logoff buttons with contextual notifications based on system type
<br>
Back end script
Requires the Stratocore PPMS booking platform
Track and report user login to PPMS
Front end script
Requires the Stratocore PPMS booking platform
Validate user at logon
confirms the user is active and exists in PPMS, else notifies them and logoffs off
reports denied access to admin email/slack/teams
Stratocore PPMS booking software, including the following custom reports as used by IMB Microscopy facility (contact Stratocore PPMS to generate these reports for your facility)
List of systems with ID and tracker code
Currently running not booked session
Projects for User
The author wishes to acknowledge the contributions from all of the hardware and software library creators that are featured in this code, without whom this tool would not be possible. Please see individual license files of each library for terms and conditions specific to that library.
MIT License Copyright (c) [2025] [James Springfield, The University of Queensland]
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
















