Automatically Elevating a PowerShell Script

Lately, I have had the pleasure to spend quite some time coding in PowerShell. I don’t think I need to tell you how much fun this is. Some things require a new approach in PowerShell but once you get the hang of it …

In the course of this coding project, I have been looking for a way to detect whether a script is running elevated. In this article I will present a script header checking for administrative rights and – if necessary – spawning a new instance of the script which asks for elevation by UAC.

New Example SQL Query for Custom EdgeSight Reports

In my series about custom report for Citrix EdgeSight, I introduced a lengthy example query for system performance including standard constructs for filtering by time and department as well as machine groups. Now that we know about additional parameters for process categories and user groups, let’s have a look at an example SQL query.

Inside EdgeSight Report Parameters

In part 3 of my series about custom reports for Citrix EdgeSight, I have listed some parameters that are automagically recognized by EdgeSight. Those parameters cause EdgeSight to display specialized picker or pre-populated dropdown lists. But Citrix does not provide a current documentation for report parameters processed by EdgeSight. Therefore, it’s back to reading existing reports to discover those parameters. In this article, I will introduce some more parameters for EdgeSight reports and publish a report to examing values passed from the EdgeSight web-based console to the report.

Updated: User Profiles Whitepaper

I have just released an updated version of the whitepaper about user profiles. In addition to a general overview of user profile and the challenges involved in managing them, it now includes a section about profile migration.

Online Statistical Analysis of Performance Data

Performance Monitor is usually used to record performance data of one or more systems and analyze the collected data at a later point in time. As this is useful for offline performance analysis and scalability tests, real-time access to performance data is cumbersome. The graphing node of PerfMon does not offer statistical data in a useful manner. In this article, I demonstrate how to retrieve performance data for a metric and analyze it on-the-fly using PowerShell.

Deploying Windows 7 with Remote Desktop Services

Microsoft has launched a new type of event called TechDay Online. It is targeted at customers with technical expertise. The first incarnation focuses on deploying Windows 7.

In today’s world, talk about virtualization and centralization is hot. Both have become proven technologies to reduce the total cost of ownership. In this article, I will show you how to achieve both virtualization and centralization while offering Windows 7 to your users at the same time using the Remote Desktop Services in Windows Server 2008 R2.

Slides (German): Performance Monitoring und Kapazitätsmanagement

On 10.09.2010 I held a session at ice:lingen about performance monitoring and capacity management of Windows Servers. Attached you’ll find my slides.

Please note that I had to remove most of the images because I am not allowed to show them publicly.

MVP for Remote Desktop Services

I am very proud to announce that I have been named Microsoft Most Valued Professional (MVP) for Remote Desktop Services (RDS). It is amazing to see that it is recognized how much passion I invest in the community through this blog and by giving talks.

Thanks a lot, Microsoft. I’ll make the most of it!

Slide Decks: IT-Administrator Tech Talk in Oberursel (German)

At the IT-Administrator Tech Talk in Oberursel, I held three talks which can be downloaded here:

  1. Keynote about Cloud Computing (download)
  2. Talk about common problems with Windows (download)
  3. Talk about the new features in XenApp 6 (download)

Have fun!

Building Custom EdgeSight Reports Part 4 - The Wedding

After the last two articles have demonstrated the schema of the EdgeSight database and the layout of a query, this posting brings together all the pieces to create a report for EdgeSight. A report is based on the query which pulls data from the EdgeSight database. Through the use of special variables, the EdgeSight user interfaces passes parameters to the query to customize the resulting output. This requires special methods to work with.