What you need to know about the PSX 

What you need to know about the PSX?

Interactive Shell („DOS Command-Prompt“)

    • Successor of COMMAND.COM and CMD.EXE
    • Significantly more powerful than the predecessor (like a Unix-Shells)

Scripting environment

    • On the one hand it is an execution environment like Windows Script Host,
    • on the other hand – since Windows PowerShell 2.0 – a development environment (IDE)
    • State-of-the-Art Commandline- and automation-interface. Also the strategic platform of the coming years in the Microsoft environment

What are the highlights of Windows PowerShell?

 Significantly more powerful than the predecessor

    • Much more "build-in commands" (Cmdlets), e.g. for looping constructs („For-Each“, „Do-While“, „Do-Until“, „For“), decision („If-Then-Else“, „Switch“), functions („Function“), Debugging („Write-Debug“), etc.
    • Normally no more need for "tools" and "utilities" like „sleep“, „ntrights“, „msgbox“, etc.
    • PowerShell 1.0 and 2.0 available as Windows Update for Windows XP, Windows Vista and Windows Server 2003 and 2008
    • Integrated with Windows Server 2008 R2 and Windows 7 and newer

Management and automation not only for Windows

    • Management of Microsoft Server-Systems like Exchange 2013, SQL Server, Internet Information Services, Hyper-V, Virtual Machine Manager, Data Protection Manager etc.
    • Management of 3rd-Party systems like VMware, Citrix, Lotus Notes and much more
    • Citrix Workflow Studio (Orchestration-Tool) is using PowerShell as basis


    • Error-prone and language-dependent parsing of output omitted (e.g. „Answer from_“ / „Reply from…“ from parsing of PING-Output)
    • All methods and properties of the objects are available and can be called respectively accessed for read and write

Entire .NET-Framework available

    • (Nearly) everything that you can do with .NET-Programmierung, you can do interactively or in scripts
    • With Windows Forms you can easily create your own user-interfaces.
    • The disadvantage: You need at least a basic understanding of object oriented programming


    • Results of an operation can be passed to the next cmdlet using the pipe symbol („|“)
    • It is not text output that is forwarded but the full .NET objects. For these all methods and properties are available and can be used
    • Even complex operations can be build as so called one-liner if you want


    • If „build-in“ commands are not enough and ".NET-programming“ is too complex, you can build your own cmdlets
    • Even Microsoft itself does it, e.g. for the above mentioned server applications
    • Extensions are available in so-called snap-ins or (since PowerShell 2.0) in modules, that can dynamically be loaded in the console or in scripts
    • Already many 3rd Party snap-ins are available, both commercially and freely available, eg. the PowerShell Community-Extensions(http://pscx.codeplex.com), Quest Cmdlets for AD-Management (http://www.quest.com/powershell/activeroles-server.aspx), /Net-Cmdlets (http://www.nsoftware.com/powershell/default.aspx) etc.
    • This enables the management of the entire infrastructure – ie Active Directory, virtualization infrastructure, ERP-system etc. – via PowerShell Scripts. I you want, you can do everything in one script



What offers the PowerShell Extensions for HEAT Software DSM?

 Snap-In/module provides navigation for DSM

    • Navigation-Providers produce structured hierarchical daten structure that can be navigated as in the file system („cd“, „mkdir“, „del“ etc.)
    • „Managed Users & Computers“, „Global Software Library“ and „Virtual Environments“ are available as PowerShell-drives („PSDrive“)

  102 Cmdlets for the Management of DSM - environments

    • Management Organizational Directory (domains, OUs, computer and users, internal and external groups)
    • Management Global Software Library (folder, software-categories, packages)
    • Management Virtual Environments
    • Management Policies and Policy-Instances (Create policies, get policies, delete policies , get policy-instances and compliance-status, new installation etc.)
    • Management Roles and Rights as well as Schemas
    • OSD-specific cmdlets (Computer-Reinstallation, Wake-On-LAN for computer)
    • and much more


What are applications of PowerShell Extensions?


    • „Control“ HEAT Software DSM „from the outside“
    • Automate import processes (e.g. AD-Sync)
    • Assignment of patch packages
    • Activation of policy at specific times

Integration in 3rd Party systems

    • Create work-flows for provisioning and „Dynamic Data Center“ (e.g. with Citrix Workflow Studio)
    • Integration in systems like help-desk, ERP, meta-directories etc.
    • Integration in customer specific software (Inhouse-Applications for getting or setting data)


    • Automatic import of an OSD 3.x database in DSM
    • Automatic setting of the "IsInstalled“ condition for imported NetInstall 5.x packages
    • Assumption of an Assign&Delegate structure incl. computers and users
    • Import of objects from systems that will be detached like ZenWorks


    • Automatic synchronization between test-, integration- and production-environment

Workflows and Processes

    • Mappings of workflows and user specific processes
    • Implementation of dual principles for releases
    • Controlling of roll-outs: staggered activation of policy instances, where necessary depending on the previous success rate

Reporting and Documentation

    • Creation of reports for assignment, compliance status, roll-out progress etc. in CSV-, HTML- or other format
    • Publishing of reports e.g. in intra-networks, SharePoint etc.
    • Documentation of the system status, available packages, the assignment etc.

User Help Desk

    • Creation of customer defined user interfaces for special tasks like „Reinstall computer“
    • Call of defined functions or processes from outside of the eMMC / DSMC (e.g. create new computer, activate computer and assign operating system)
    • Management group memberships
    • ...


Who are the target customers of PowerShell Extensions?

  • Customers running a HEAT Software DSM environment of bigger size and requirements for:

    • Automating administration due to the amount of the (otherwise manually) actions to be performed
    • Synchronization between test-, integration- and production-environment
    • Regulary recurring import (synchronization) of external directories like Active Directory, Windows Domains, LDAP-Directories (OpenLDAP), SQL-databases etc.
  • Every HEAT Software DSM customer with the following requirements:

    • Mapping roll-out controls (e.g. automatic activation of policies at specific times, „Patch-Day“, )
    • Creation of individual UIs for specific or dedicated tasks (e.g. „Reinstall my computer“, „show computer compliance State“, „manage computer group-memberships“ etc.)
    • Reports for which are no opportunities in DSM
  • Customers with requirements for the integration of 3rd party tools

    • Integration of the Client Life-cycle Management in Help-Desk- and IT Service Management-systems
    • Mapping of processes and controlling workflows via PowerShell Scripts or Citrix Workflow Studio