Wednesday, November 18, 2009

PowerShell – WMI presentation tonight

The things I agree to do…

A good MVP buddy of mine, Joel 'Jaykul' Bennett has asked me to speak tonight to the Upstate New York PowerShell user group. The title of the talk is WMI and  PowerShell. I’m aiming at the basics but will go into a bit of detail. Plus there’s demos. If you want to join into the Live Meeting, here’s the url: ">https://www.livemeeting.com/cc/mvp/join?id=UPNYPUG&role=attend

However, I’m not planning on starting till 11:30 PM (23:30) UK time – which is thankfully earlier for the audience in New York.

Hope to see you there…

[later]

Yes – I will post my slides and demos tomorrow…

Technorati Tags: ,,

Thursday, November 12, 2009

PowerGui.Org’s PowerPack Challenge – Closing Sooon

PowerGUI.org is holding the PowerPack Challenge contest. Basically,  the idea is that you create a PowerGUI add-on (admin console for a particular platform you manage based on PowerShell cmdlets/scrips), and then submit it to the site. By entering the contest, you can win one of the prizes (the top prizes are $1000 in Amazon certificates). This is easy and the site has tutorials on how to do this.

The contest will run for 3 more days, i.e. until the end of Nov 15 2009. You can get full details at PowerGUI.Org. Get coding and best of luck!

Technorati Tags: ,

Friday, November 06, 2009

Leaving Global Knowledge for Pastures New

Many of you will already know this, but I am shortly leaving Global Knowledge. After 3+ years of working for GK’s EMEA group, I have been made redundant and will be out of the company by the end of November or thereabouts. The redundancy process is swift, and pretty brutal – but that’s the nature of the beast. Global Knowledge are treating me pretty well, under the circumstances for which I am genuinely grateful.

In the short term, I’m going back to contracting – doing training, consultancy, or whatever turns up. I would hope to get enough work to tide me over until I can figure out the longer term plan. I am favouring returning to full time employment but we’ll see what happens over the next few months. I’ve already had some brilliant leads, which are great, so things are not totally bleak. I also have a lot of really good friends in the industry who are lending a helping hand. I could not ask for more.

It’s a sad day, on one hand, but a great opportunity on the other. From the people I’ve spoken to, the broad consensus is that I’ll make out just fine. I just hope those voices are right.

Monday, November 02, 2009

Disk to VHD – Another Cool Tool from the Sysinternals Guys

Mark Russinovich and Bryce Cogswell have released yet another cool tool – Disk2VHD (version 1.21) which you can download from here. As it turns out, I’m looking to convert one of my physical boxes to a VM – I use the system rarely but don’t want to chuck it. This tool would be just the business – I could easily run a VM of this system on my laptop when I actually need it. 

The VHD that this tool creates can be used as a VM for either Microsoft Virtual PC or Hyper-V. One important limitation – with Virtual PC, the largest volume is 127GB. And the tool is command line – but you could of course, run it from PowerShell!

Technorati Tags: ,,

OCS 2007 R2 Documentation

If you are working with Microsoft’s Office Communications Server 2007 product, you may know about the great documentation produced by the product team. This documentation has been updated to cover the R2 release that hit the streets earlier this year.

There are three ways you can get the documentation:

  • A single CHM file with all the other documents as a single file
  • A zip file containing all the other documents as Word docs
  • Individual Word documents.

Navigate to http://tinyurl.com/ocsdoc and  you can get all three of these formats!

If you get the .CHM file, you will need to remove the protection from the file (use Systinternal’s streams.exe) in order to see the contents. From the .CHM file, you can also send the writers email. They are highly responsive and are happy to incorporate any and all good ideas. This is a great job guys!

Technorati Tags: ,,

250,000 Visitors To This Blog!

I started this blog in May 2003. Just over 5 years ago, I added a traffic counter, and started keeping more detailed traffic counts. Over the weekend, the hit count got to 250,000 – or a quarter of a million visitors! Not as much traffic as some blogs get, but it’s been nice to see the traffic grow here. I am certainly pleased at the slow and steady readership growth.

Looking at my stats today, they sown an average of 377 visitors a day and 504 unique page hits a day. Traffic in October hit an all time record with over 10,00 visits (and over 13,000 page hits). Wow!

For long time visitors – thanks for reading this blog. And for new visitors – welcome and let me know what else I can post here that would keep you visiting.

Sunday, November 01, 2009

Connecting OCS To Other PIC Suppliers

Office Communications Server 2007 implements a feature called Public Internet Connectivity (PIC). Basically, PIC enables you to federate with AOL, Yahoo and MSN/Live Messenger. Thus a user using an AOL IM client can connect and use IM with someone inside your organisation. PIC was cool, but was limited to just the three suppliers (i.e. no Google Talk) and it was licensed separately.

In the past month Microsoft has released some important news. First, PIC licensing has changed. Secondly, Microsoft has announced the release of an XMPP Gateway which facilitates present and IM interoperability between OCS and both Jabber (now owned by Cisco) and Google’s Google Talk.

There are some key PIC Licensing changes. The additional PIC license will not longer be required for federation with AOL. Federation with AOL is free for customers with OCS R2 Standard CAL, or Software Assurance on their current OCS license. But if you wish to federate with Yahoo, you continue to need a PIC license, but the cost of this drops by 50% (effective 1 October 2009). Additionally, as from June 2009, you no longer need a PIC license to federate wit Windows Live (same requirements as noted above for AOL federation).

The release of an OCS 2007 XMPP Gateway means you can federate with both Google’s Google Talk, and with Jabber. And the licensing calls the gateway “Additional Software” meaning there is no additional Microsoft licensing costs associated with you deploying the Gateway.

The OCS Team have published a couple of articles to explain how to get the XMPP gateway up and running. The first blog post discusses Configuring XMPP connectivity to Google Talk. The second blog post looks at how to configure the XMPP Gateway with Jabber XCP 5.4. Both articles are detailed and well illustrated.

For OCS 2007 R2 users, PIC connectivity got a whole lot better!

What Happened To The Post Counts on the MSDN and TechNet Wikis?

I’m a fairly heavy contributor to the MSDN and TechNet Wikis - also known as MSDN and TechNet Community Content. I started posting there pretty much ever since Microsoft setup this feature a couple of years ago. My contribution has included over 10,000 posts (just over 7500 to MSDN and over 2800 to TechNet). I wrote about the MSDN wiki in August.

I do not know if it’s a short term glitch or a more major change – but the post counts have been updated in a significantly downward fashion. TechNet shows just 1297 posts, while on MSDN just 3927) – thus I’ve lost around half my post count. At the time I wrote the august post, I had over 6500 posts credited, but now it’s a LOT lower.

MSDN/TechNet: what’s happened??

Wednesday, October 21, 2009

MSDN Has A New Look and Feel

I spend time on the MDSN Site, particularly the MSDN Library sub-site where I’ve added a few PowerShell scripts as well as editing the content that is added. Just recently, the site has had a bit of a make over. The “MSDN-RED” logo is replaced wiht a more stylish blue colour, along with the opportunity to change your view of the site.

From FireFox, I have a new pop up at the bottom right hand corner of my browser window:

image

The “old” view, Classic is what you are used to, although with new colours. It is the view I will use going forward. Lightweight beta provides what it says, a much more lightweight feel. ScriptFree is even nicer (IMHO) to look at.  And being smaller pages, download times are much snappier.

But what both these two new views omit is all the community contnet (i.e. Community Content) as contained in Classic View. From the Script page, community added page tags are R/O, and there appears to be no way to see or edit Community Content (from both LightWeight and Script Free skins). And the big orange Switch View button from Classic view is pretty ugly and distracting – worse, there appears to be no way to tell it: I’m happy with what I see and please go away.  Or at least a more subtle control perhaps in the title bars like in the other views.

For casual users, or those on lightweight (aka celluar) networks, it’s a nice touch. Shame about losing the community content.

Wednesday, October 07, 2009

Ensuring PowerShell Is Loaded Onto a System

I saw a cool tip over at PowerShell.com for working out if PowerShell is available on a system. This tip points out that if PowerShell is installed on a machine, then the registry key HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\PowerShell\1 will exist and will contain key configuration information.

From my main workstation, I see:

PSH [C:\]: cd hklm:\\SOFTWARE\MICROSOFT\PowerShell\1\
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\PowerShell\1
PSH [HKLM:\SOFTWARE\MICROSOFT\PowerShell\1]: ls

    Hive: HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\PowerShell\1

SKC  VC Name                           Property
---  -- ----                           --------
  0   1 1033                           {Install}
  0   6 PowerShellEngine               {ApplicationBase, ConsoleHostAssemblyName,PowerShellVersion,
                                        RuntimeVersion...}
  3   0 PowerShellSnapIns              {}
  1   1 PSConfigurationProviders       {(default)}
  1   0 ShellIds                       {}

PSH [HKLM:\SOFTWARE\MICROSOFT\PowerShell\1]: ls .\PowerShellSnapIns

    Hive: HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\PowerShell\1\PowerShellSnapIns

SKC  VC Name                           Property
---  -- ----                           --------
  0   7 PowerGUI                       {Version, PowerShellVersion, AssemblyName,ApplicationBase...}
  0   9 Pscx                           {PowerShellVersion, Vendor, Description, Version...}
  0  11 Quest.ActiveRoles.ADManagement {AssemblyName, Description, ModuleName, PowerShellVersion...}

This is pretty cool. And looking at the PowerShellSnapIns – this information is useful for managing snap-ins on clients and servers. You could test the existence of this Registry key as follows:

PSH [C:\foo]: Test-Path hklm:\SOFTWARE\MICROSOFT\PowerShell\1
True
PSH [C:\foo]: $PSVersionTable

Name                           Value
----                           -----
CLRVersion                     2.0.50727.3074
BuildVersion                   6.1.6949.0
PSVersion                      2.0
PSCompatibleVersions           {1.0, 2.0}

But testing the existance of this registry path from within PowerShell is somewhat meaningless. If PowerShell exists on a given system, then the key will exist so the test will of course succeed. But if PowerShell does NOT exist, you’d never be able to run the script in the first place so being able to test from within the PowerShell script is unhelpful. I suppose you could write a C# program or a VBScript script to do the detection.

But wouldn’t a better way be to just get PowerShell deployed? I’d base the wide deployment to down level systems on the RTM version of The Windows Management Framework. The WMF Release Candidate was posted to the web on Aug 13th, so is getting very close to release. I do not have any specific knowledge, but given past experience by the PowerShell team, I’e expect to see this by the end of the year, maybe at TechEd Berlin.

Technorati Tags:

Tuesday, September 08, 2009

Sharkfest 2009 – The videos

I’m setting up a few new machines, and needed to check out some networking issues – so I went off to Wireshark.Org to download a copy when I discovered a treasure trove of videos and slides from the recent SharkFest conference held in June in Palo Alto.  It sounds like it was an interesting conference – the videos I’ve watched look OK.

Technorati Tags:

Saturday, August 29, 2009

The MSDN Wiki – a look after nearly 6500 edits

Last summer, I posted a blog article about the MSDN wiki, better known as MSDN Community Content (there’s also an equivalent set of content around IT Pro type information, namely Technet  Community Content. This morning I got a comment on that entry which complained about a) not being able to find stuff and b) that the community content idea had been killed. I posted a response to that comment – the Community content is still alive and kicking. In the past year, I’ve added over 6000 updates, the latest of which was a few minutes ago! I’ve also added around 2500 edits to the TechNet equivalent, or nearly 9000 edits in total – and I’m not even an MVP!

The Community Content represents some really great information – and not a few criticisms where the content (or the product!) is at fault. Sadly, as I noted last year, there is a degree of vandalism on this site, which has grown somewhat over the past year. I am fairly ruthless (although as not up to date as I’d want!) with reviewing new comments and removing what I call “non-content”, as well as duplicate posts which some times get made. I also try to ensure good tags. One trend that has accelerated is for posters to see the MSDN community content as a place to ask questions – a couple of posters including my self, point them to the community forums and the Microsoft newsgroups. I also try to ensure the tags on the each community content are relevant.

As ever in publishing, the MSDN content contains errors – usually minor typos, etc. While these are regatable, given the sheer scale of the MSDN (and TechNet) library, these are probably inevitable. Thanks to the sharp eyes in the community, these are found, and have been tagged “Contentbug”. Microsoft are slowly working through these and updating the content proving that the community review process is working, albeit much slower than I’d like.

All in all, the MSDN and TechNet Community Content  are fantastic resources, and are growing daily. Thanks to the MSDN/Technet content teams for providing the platform and working with the community to improve the content

Monday, August 24, 2009

Installing Windows 7 From USB Drive

Surfing around this morning, I found an interesting blog article: Installing Windows 7 From USB Drive 3 Steps Easy Process. Basically, this article shows how to prepare a USB stick from which you can install Windows 7. This is specifically useful for Netbooks or other systems that come without a DVD drive.  This method uses the UltraISO trial package. You do need a big USB stick, 4gb or more and make sure you have the latest version of UntrlISO.

Technorati Tags: ,

Sunday, August 09, 2009

Windows 7 and Virtual Server

With Windows 7 now at RTM and in my hands, the time has come to start to migrate over. I got the ISO images I needed last week, and immediately started to get things running. One specific thing I needed is to get Virtual Server running on Win 7. I am teaching a class on Aug 13/14 and need to prepare – the class is a Windows 7 upgrade class for Microsoft Partners.

I thought, given we’d achieved RTM, that it would be cool to have the Labs running under Windows 7 RTM. To do that, I just needed to get Virtual Server running and install the course files on my laptop. Now I know it’s not officially supported, but I wanted to see if I could make it work. If so, I can then run and demo the labs with Win7 as the host.

There were only two problems with that. The first is that the labs that come from Microsoft Learning require Virtual Server. But Virtual Server is not supported under Win 7, and is actively blocked. And even if I did get VS running, MSL assume that you will be using earlier OSs to run the labs – and installing these on Windows 7 is specifically blocked by the MSI installer.

After a bit of Googling using my favourite search engine and perusing the MCT private newsgroups, it appears that there are two solutions. However, both involve some hacking (and are probably NOT supported).  The solutions were either to get the labs working under Virtual PC 7, or install VS into Win7 and get it running. While both are possible, I chose to do the latter since this seemed to provide an easier to use solution (if it worked of course!!!).

Naturally, a third (and preferable!) option would be to wait for Microsoft Learning to come up with a supported solution. But that is not likely to happen any time soon and I have a course to teach now. So down the road I went with two main tasks: first, installing Virtual Server on Windows 7 and then installing the Microsoft Learning labs on Windows 7.

Installing Virtual Server under Windows 7

To install Virtual Server under Windows 7 is straightforward, although it involved registry editing (and is NOT supported). The steps are as follows:

  1. Disable the application compatibility fixes. You first need to disable all the application compatibility fixes that would stop you from installing Virtual Server. In Windows 7, bring up the local Group Policy editor and Computer Configuration\Administrative Templates\Windows Components\Application Compatibility\ and enable all of the “Turn off” entries. As here;image
  2. Then go to the Computer Configuration\Administrative Templates\System\Troubleshooting and Diagnostics\Application Compatibility Diagnostics\ folder and disable all of the entries there. Like here:
    image
  3. Reboot to ensure the settings take effect. You could, I suppose, just do a gpupdate /force, but I prefer to reboot.
  4. Install Virtual Server. Download the binaries from Microsoft .com and install it.
  5. Install VS SP1 – depending on what download you get, you may may need to install SP1. NB: Installing SP1 is more difficult once you have completed this process, so why not do it now?
  6. Change Application File Name. To enable the next step to work properly, you need to rename the Virtual Server application file name, by going to the Virtual Server directory (typically C:\Program Files\Microsoft Virtual Server\ ) and rename Vssrvc.Exe – I used Vssrvc_Win7.exe.
  7. Change the registry settings for this new file name.  Run regedit, then find and replace all occurrences of "vssrvc.exe" to vssrvc_Win7.exe. There are around 5 or 6 entries to fix.
  8. Undo the group policy changes you made at step 1 above. This turns all those application compatibility fixes back on (which is probably what you want!).
  9. Reboot.

Once the reboot is completed, you should have (the renamed) Virtual Server running on your Windows 7 box. If you want to just run VMs, off you go. you can create and use VS just as you did on XP or Server 2003. Hoevere, if you want to install a MSL Lab onto the system, you have just a bit more work (hacking) to do.

Install course files for Lab Launcher into Win7

Once you have Virtual Server running, you need to fix the installation file for the lab you want to install, e.g. 6291.MSI. Normally, you just run this MSI file on your master system (and use Ghost et al to then blast it to the rest of the systems in the classroom). The only problem with this approach is that Microsoft Learning have put in an installation block on Win7. That means when you try to run the installation MSI, it fails with an error message (”the operating system version does not meet the minimum version required”). Turns out this is really easy to fix – but you do need an MSI editor.

There are two MSI editors you can use (and both are free):

  • ORCA – this is a free MSI editor from Microsoft and comes as part of the Windows Installer SDK. It’s a bit of a pain to get as you first have to download and install the SDK, and then install Orca.Msi. You can find copies of orca.msi out on the internet, but downloading it from Microsoft is probably safest even if it is a bit tedious.
  • InstEd - you can also use InstEd, a free tool you can get at http://www.instedit.com/. I like Instead and blogged about it a while ago. It’s still cool!

Once you your MSI editor loaded, you need to remove one line from the Launch Condition table. If you are using Orca, you’ll see something like this:

image

Just delete the first line of this table, then save the MSI (File/Save As) to a separate MSI (just in case). Then exit out of Orca and you can run your newly saved MSI. You should be good to go.

Minor issues

I found that, after playing around a bit, Virtual Server was complaining about access permissions of VHDs on the host. I just gave all users full access to the C: on the host and the problem went away.

An important issue to consider is that this is not supported. Yes, it works and works reasonably well. It also involved editing registry entries, and using a MSI editor. From personal esperience, both can be dangerous. So use this information at your own risk.

Kudos

Thanks to a couple of posters for helping me to do all this. First, the details of how to get VS running were obtained from a TechNet  forum post. Hacking the MSI to get around version limitiations is an old trick, but thanks to MCT Super-Star Michael Buchardt who pointed me to InstEd! And finally a thanks to Chris Randall for the motivation to write this up.

Thursday, August 06, 2009

The Flood Gates are Open – Windows 7 has hit TechNet and MSDN

Well, after a long wait, it’s finally there – Windows 7 RTM release is on TechNet Plus for download. As I type this, I’m getting speeds varying between 100kbps and bursting to 200kbps. Not stunning but OK. Hopefully the download will finish tonight and I can spend tomorrow with installing Win7 onto my Laptop. Horray!

Technorati Tags:

Static vs Dynamic WMI Methods with PowerShell

In yesterday’s  PowerShell and .NET Framework – Similarities and Differences! article, I wrote about how there was stuff you have to know in order to use PowerShell efficiently. In a recent Hey, Scripting Guy! Blog article, The Scripting guys talk about the differences between a static method on a class and an instance-based method. They use the WMI Win32_Process class as an example. In this WMI class, there is an instance based method, Terminate, that lets you terminate a specific process. As the Scripting Guys point out, there’s no Create method. That’s because the  Create method is a static method which you invoke a slightly different way.

To create a process, you’d do the following:

PSH [C:\foo]: ([wmiclass]"Win32_Process").Create("NotePad")

__GENUS          : 2
__CLASS          : __PARAMETERS
__SUPERCLASS     :
__DYNASTY        : __PARAMETERS
__RELPATH        :
__PROPERTY_COUNT : 2
__DERIVATION     : {}
__SERVER         :
__NAMESPACE      :
__PATH           :
ProcessId        : 8828
ReturnValue      : 0

This is yet another one of those things you need to know about using WMI with PowerShell: how to access static vs. instance based methods.

Technorati Tags: ,,

Wednesday, August 05, 2009

PowerShell and .NET Framework – Similarities and Differences!

When I teach PowerShell, I point out the consistency within and across the product. When you learn something, it can be broadly used in other circumstances. This is the power of knowledge transfer – learning things once and using that knowleldge to solve other problems.

Of course, despite the consistency that’s there, there is a level of in-consistency to manage. There are things that are just not particularly intuitive – and you just have to learn those differences. There is definitely a learning curve when it comes to learning PowerShell! I’ve published what I learn as I go along – I posted an article about .NET and Powershell last December where I looked at how you access .NET from PowerShell.

With a bit of learning, via posts like mine or from Newsgroup.Forum posts, most PowerShell users can look at a bit of documentation on .NET or  WMI, and work out how to access the relevant class,  method, etc. But every so often, stuff that looks obvious isn’t! This fact (feature???) bit me over the weekend when I was working on the Get-System.Environment script that I published over on my PowerShell Scripts blog.

I was playing around with the System.Environment class, and in particular the Environment.SpecialFolder enum. Just looking at it, I felt if I can use one enum like this,

PSH [C:\foo]: [system.Enum]::GetValues([system.dayofweek])
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday

Then I should be able to to do something like this (which as you see I can’t):

PSH [C:\foo]: [system.Enum]::GetValues([System.Environment.SpecialFolder])
Unable to find type [system.Environment.SpecialFolder]: make sure that the assembly containing this type is loaded.
At line:1 char:60
+ [system.Enum]::GetValues([system.Environment.SpecialFolder] <<<< )
    + CategoryInfo          : InvalidOperation: (system.Environment.SpecialFolder:String) [], RuntimeException
    + FullyQualifiedErrorId : TypeNotFound

Then, after some searching, I discovered may mistake!  Instead of [System.Environment.SpecialFolder], I needed to specify [System.Environment+SpecialFolder]. As shown here:

PSH [C:\foo]: [system.Enum]::GetValues([system.Environment+SpecialFolder])
Desktop
Programs
Personal
Personal
Favorites
Startup
Recent
SendTo
StartMenu
MyMusic
DesktopDirectory
MyComputer
Templates
ApplicationData
LocalApplicationData
InternetCache
Cookies
History
CommonApplicationData
System
ProgramFiles
MyPictures
CommonProgramFiles

Sure – that was obvious, NOT! But another hurdle on my learning curve!

PowerGui Version 1.9 is Released

As Dmitry discusses over on his blog: The most popular PowerShell freeware tool has just got an update. He and his team have reached into the “I want” list and they’ve produced a stunning new version, just in time for the release of PowerShell V2 (effectively tomorrow or thereabouts). You can download the new version from the PowerGUI Website at: http://powergui.org/downloads.jspa.

If you are already running an older version of PowerGui, you should be able to check for updates (Help/Check for Updates).  But on my main workstation, that gives an error. So I am downloading the new version manually. The download (PowerGUI.1.9.0.900.msi) is 8.1 mb – so not a massive download! In my case, I also needed to install the Active Roles cmdlets (another 8.45MB) before I could finish off installing PowerGui.

While I prefer PowerShell Plus for my day to day editing and development tasks, I have to say PowerGui is a nice product – especially as it’s free. The new version has a number of neat new features, including: Version 2 Module Support, and more intellisense. Perhaps the biggest feature is full Windows 7 and Server 2008 R2 support. It might be tempting fate to release 1.9 the day before Microsoft opens the floodgates that will be the waves of Windows 7 and Server 2008 R2. I suspect like many people, I have a browser window open at the TechNet Plus download site just waiting for the downloads to begin!!

Technorati Tags: ,,

Sunday, June 07, 2009

Bing is making a spash!

In more ways than one! By Bing, I mean Microsoft’s new search engine (http://www.bing.com or http://www.bing.co.uk). I’ve been playing with it a little (and love the nice scenery pictures on the landing page). The results seem OK so far, but it seems a lot better than the old Live Search engine. And there are a lot of references to Wikipedia.

One interesting thing though, I’m starting to see referrals in my blog hits. Looking at the most recent 20 hits, 5 are from Bing.com! And if I’m seeing hits like this, then that means other folks are using Bing.

One other related bing thing, I notice that there’s already a PowerShell project on CodePlex (http://poshbing.codeplex.com). This project has created a number of Bing-related PowerShell script library. So you can do things like Get-BingSpell (to query alternative spellings for a word) or Get-BingTranslation. LIke so:

PSH [C:\foo]: Get-BingTranslation "Beer is good, free beer is better" en de

Query                               SourceType     TranslatedTerm
-----                               ----------     --------------
Beer is good, free beer is better   Translation    Bier ist gut, freie Bier ist besser

I could get to like Bing.

Technorati Tags:

Sunday, May 24, 2009

Useful Yet Little Known Features in PowerShell

Over on the Stack Overflow site, there’s a fascinating question and answer(s) about little known features of PowerShell. See What are some of the most useful yet little known features in the PowerShell language for this article. If you are a PowerShell geek, you probably know these, but there are one or two that you might have missed!

Technorati Tags: ,

Saturday, May 23, 2009

TechNet Virtual Conference 2009

Where are you going to be on June 19th? If you are a techie and into Microsoft technology, then perhaps you should be attending TechNet’s free Online Conference. This is an all day, free, on-line event aimed at delivering technical information that the community requested. And did I mention, unlike other events you have to pay for, this conference is free!

The conference is divided up into two tracks: Technology and IT Manager, with content to match. See the web page: TechNet Virtual Conference 2009 for more details on the agenda.

This is an excellent idea and I am definitely looking forward to hearing Richard Siddaway and Brent Johnson in particular. I’m sure glad the sessions are recorded so I can view later the sessions I missed!

See you on-line.

Technorati Tags:

Friday, May 22, 2009

PowerShell and WMI Namespaces

Over on Tim Benninghoff blog – he has an interesting post:: PowerShell and WMI namespaces. With WMI, the classes and intances are organised under a hierarchal namespace starting at the appropriately named “root”.  Individual nodes can have children which can in turn have children and so on. To some degree, namespaces are just defined by a product team and there is little consistency across software products (such is life!). But where to start?

Despite what Tim says about using the GUI, MOW’s most excellent WMI Explorer script is one fantastic tool. Not only is it a really good browser, but as Tim notes, it’s written in PowerShell which is even more cool. I use this script in most of my training courses to add value!

His post then goes on to describe two methods of obtaining the namespaces within WMI. There are two small problems with his examples. In his first example he has a minor typo – this should read as follows:

gwmi -namespace "root" -class "__Namespace" | Select Name

In Tim’s post, he spelt the class with just a single underline (“_Namespace”) not two (“__Namespace”). WMI is sadly very picky!  Tim’s other method works fine and as he says produces the same output as his first (well once corrected!). On my system, this produces the following output:

PSH [C:\foo]: gwmi -namespace "root" -class "__Namespace" | Select Name

Name
----
subscription
DEFAULT
MicrosoftDfs
CIMV2
Cli
nap
MicrosoftIISv2
SECURITY
RSOP
MicrosoftDNS
WebAdministration
WMI
directory
Policy
virtualization
Hardware
ServiceModel
MSAPPS12
Microsoft
aspnet

The second point is that his two methods just produce a list of namespaces under the root. Since each node in the namespace can have children, his two methods do not list all the namespaces in which you can find classes. This, IMHO, is once case where the GUI is a better tool – visualising the hierarchy in a tree control is a whole lot easier than trying to do it from the command line. And you get the names spaces in alphabetical order (although you could do pipe the output above to Sort-Object easily enough). On my workstation I see a number of subsidiary namespaces below root as you can see here:

image

 

WMI Namespaces are a good thing to understand, since many of the classes you might want to access using Get-WMIObject (et al) rely on the –NameSpace paramater (and the appropriate namespace name!).

Technorati Tags: ,,,

Thursday, May 21, 2009

Windows Vista for XP Professionals

I’ve been carrying this book (see http://www.amazon.co.uk/Windows-Vista-XP-Professionals-Updating/dp/9072389018 to buy this book!) . It’s written by Dutch MCT superstar Raymond Comvalius. In summary, this is a great book – simple  and to the point. Unlike some books, there’s very few screen shots – just lots of good straightforward text!

The book contains 8 chapters:

  • Chapter 1 – Introduction
  • Chapter 2 – What’s new in Vista and is not discused in the book – a nice touch!
  • Chapter 3 – Deploying Vista – a good look at the deployment tools which are all new in Vista.
  • Chapter 4 – Managing Vista- includes details on group policies and a look at WInRM.
  • Chapter 5 – Securing Vista – explains the key new security features of VIsta including UAC, file/registry virtualization and BitLocker.
  • Chapter 6 – Networking – Vista includes a bunch of new networking features, in effect a new TCP/IP stack, which are described in this chapter.
  • Chapter 7 – Mobility – a look at the mobile features of Vista.
  • Chapter 8 – Migration to Vista – this final chapter examines how to plan your Vista migration.

This is an excellent summary of what an IT Pro needs to know moving forward to Vista. I hope Raymond writes an update for Windows 7!

Technorati Tags: ,

Wednesday, May 20, 2009

Pscx 1.2 Beta Released

The beta of the next version of the PowerShell Community extensions has been released (see Nivot Ink - Pscx 1.2 Beta Released for more details). The code itself can be downloaded from: http://pscx.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=1615.

For me, the cool thing is that this is released as a module so I can import the module when I want it – or not. Nice touch. If you are using Win 7, note this beta requires Win 7 RC!

Tuesday, May 19, 2009

2009 Summer Scripting Games

As in years past, Microsoft is hosting the 2009 Summer Scripting Games. This year, the games are co-promoted by The Microsoft Script Guys and PosCode.Org. The games will run from June 15-26 and should be a lot of fun. As happened last year, I’ve been asked to submit a sample script and am hard at work on it already!

If you are a novice, an expert, or anywhere inbetween with scripting (PowerShell or even VB Script) then visit the site, sign-up and take part.

 

Wednesday, May 06, 2009

Updates for Communications Server 2007 R2 (almost SP1!)

Microsoft has released a set of 13 patches for OCS 2007 R2. You might think of this as SP1 for OCS 2007 R2 (but that’s not the say MS is marketing it). Irrespective of what they call it, this set of patches is probably worth adding if you are deploying R2. As ever with patches, check the details to see if your systems are affected by each of these patches and which ones.

Due to the complex nature of OCS Deployments, patching is hard as there’s not just a single patch you can apply to all systems – you have to apply some patches on some systems and other patches on other systems. For example, an OCS 2007 R2 SE system needs 9 patches, while the Edge Server needs three. So plan this carefully as, at the least, you’ll need some service outages to apply the fixes.

The KB article: List of available updates for Communications Server 2007 R2: April 2, 2009, lists all 13 patches and describes which patch needs to be installed on which server role. You can drill down into each of the 13 individual patches – each has its own KB article. Most of these KB articles explain the issues resolved by the patch. KB 967675 that describes the fix to the Mediation server does not contain details of the fixes, but that’s probably just a doc error that will get fixed soon. For each individual issue, there’s a link to (another!) KB article describing the specific issue in more detail which include the symptoms of the (resolved) issue.

All in all, this is a useful update and well packaged. Next time though, couldn’t we have a mondo-patch (R2PatchAug09.exe for example) that you must apply to every related OCS system. That would help with the deployment and could reduce support calls especially from organisations deploying distributed Enterprise pools.

Technorati Tags: ,,

Friday, April 24, 2009

Windows Management Infrastructure Blog

The WMI team are now blogging in the Windows Management Infrastructure Blog. A most useful blog for those wanting to understand WMI (and BITS, and WINRM) especially those coming to this from a PowerShell point of view. One interesting post examines the WMI story, pre Windows 7 (with lots of great links to more background). Another post looks at what is coming with WMI in Windows 7 (i.e. with PowerShell V2).

This blog is well written! And any blog that can mix PowerShell, reindeers, Jedis, ands and grasshoppers can’t be all bad!

Technorati Tags: ,,

PowerShell and CMDlet design guidelines.

Dan Harman, a PM in the Windows PowerShell team has published an excellent blog article: Increasing visibility of cmdlet design guidelines. The article talks about cmdlet naming conventions and the importance of good naming around the verbs and nouns used in the names of cmdlets (and by implication advanced functions too). The article also talks about the problems of a proliferation of uses of PowerShell that deviate from the standards currently being set by the PowerShell team.

With the increasing adoption of PowerShell across MS and non-MS products, standards are vital and enforcement probably mandatory. PowerShell aims help organisations break down their knowledge silos. To achieve this, there needs to be a standard set of verbs and nouns you can use and some good way of enforcing it.

Microsoft proposes some changes to V2 to resolve the issue. Specifically, when you call Import-Module to import cmdlets, Powershell evaluates the module and warns against violations of the standards. The end use sees a warning message but the cmdlets are still imported. Thus, by default, when you load a module with badly named cmdlets, you get a warning message but everything works (i.e. the module is imported!). For scripts where you want to suppress the Warning, just use the –DisableNameChecking on the call to Import-Module.

This is a pretty neat solution. We’ve already seen a number of interesting approaches to the use of PowerShell by various teams, and MS is right to want to stop the problem from being a real problem.

One addition I’d like to see: a GPO setting to set a default value to enable disabling name checking. The scenario I envisage is an organisation that has, for whatever reason, invested in cmdlets that end up being badly named. Rather than have their admins constantly be reminded, or worse possibly confused, I’d like to see a GPO setting to always just not show the message for my organisation (or part of an organisation).

Technorati Tags:

Wednesday, April 22, 2009

Saying Thanks

I’ve been posting here to this blog for a few years – and on occasion, I get a nice comment either here on the blog or in email. In September 2006, I published an article entitled Vista Shortcut keys where I described the new short cut keys you can use with Vista.  Well today, I got a comment on the blog – it wasn’t much, just a short “thanks” but it sure made my day!

Technorati Tags:

Hey Scripting Guy! Windows Powershell and Pipelining

Just saw a new article from The Scripting Guys (aka  Ed Wilson and Craig Liebendorfer). Entitled “Hey Scripting Guy! Windows Powershell and Pipelining”, this article looks at the PowerShell pipeline. It’s a 100-200 level article, but may be helpful to learn more about the pipeline.This article is one of many that The Scripting Guys pump out – for a complete list, by date, see: http://www.microsoft.com/technet/scriptcenter/resources/qanda/all.mspx. There are 18 articles already for April.

The Scripting Guys Rock! You can also follow them on Twitter: http://twitter.com/scriptingGuys

Tuesday, April 21, 2009

PowerShellASP - Build dynamic web content with PowerShell!

This is pretty cool – integration of ASP.NET and PowerShell.  PowerShellASP is an ASP-like template language for Web Applications. You create templates that contain a mixture of mark-up i.e. (HTML, XML or whatever) plus inline PowerShell code. At runtime, your templates/pages are translated to PowerShell code and executed as a single unit inside a PowerShell pipeline. The results are then sent to the client browser.

Setting it up is easy too: see http://www.powershelltoys.com/configuration.aspx. Simple!

Technorati Tags: ,

Fun and Games with WMI and PowerShell

As I continue to dive deeper into PowerShell WMI, I continue to be surprised by new things I discover. I’ve been playing today with the WMI Class WIN32_printer. Sometime ago, I posted a code sample over on MSDN using this class with Powershell (see the original sample here).

The original sample produced a test page on a specific printer – but I thought it would be interesting to see what happened if I ran the script against ALL the printers define on my workstation. And that got interesting.

On my system, I have two ‘real’ printers installed (a colour Inkjet and a colour  laser) and two additional printers: an XPS Document Writer “printer” and a SnagIt 9 “printer”. As expected, the real printers printed their test pages just fine. But the virtual printers did not fare so well. The SnagIt printer failed to print a test page. It generated two “Unable to open message queue” error messages (in a pop-up window), then failed with a message “Unable to send a message to SnagIt” (and another pop-up). But at least it failed gracefully although the Result code was 0. Attempting to print to the XPS document writer just hung.

This result shows that, at least with WMI (and probably ALL other classes), when you start writing scripts based on base objects (i.e. WMI, COM, .NET and home grown), you need to know what you are doing. And in writing production scripts, you need to be extra careful with testing, and coding around the problem issues.

This last point is illustrated in the updated script that I published to my scripts blog: http://pshscripts.blogspot.com/2009/04/get-printertestpageps1.html. Look at lines 63-65 – these avoid calling the PrintTestPage on those printers you know to not work. This is another interesting reference to the fact that production scripting is more about “error” handling (you might call it “reality handling” too"!) than anything else. And a lot of wide testing.

Technorati Tags: ,,

Wednesday, April 15, 2009

Master-PowerShell by Dr. Tobias Weltner

As a PowerShell addict, I love sharing information about the product. I’ve just seen that Dr Tobias Weltner has finished off an e-book, entitled Master-PowerShell. This book is a free, 20-chapter work covering all aspects of PowerShell and is targeted at PowerShell Version 1. Thus, no details on Modules, remoting, etc, but nevertheless containing lots of useful information. I especially enjoyed reading Chapter 18 and learning more about PowerShell and WMI!

I recommend this book!

Master-PowerShell | With Dr. Tobias Weltner - PowerShell.com

Tuesday, April 14, 2009

Rich Copy – A Must Have Application

A very long time ago, when I was contracting for Microsoft, I got a copy of a cool internal application called Rich Copy – sort of a RoboCopy on steroids. The Internally obtained version of Rich Copy timed out after a while which was a shame.But today, I’ve just read that Rich Copy is available for download from the TechNet site: http://technet.microsoft.com/en-us/magazine/2009.04.utilityspotlight.aspx. This is a very seriously cool app – and it’s free and freely available.

Technorati Tags: ,,

Monday, April 13, 2009

Microsoft Office Protocol Documents – Geek Heaven

I’m just back to the UK after a month on the road, topped off by a week in Redmond attending an OCS Voice Ignite Train-The-Trainer session. Last week was a week in geek heaven. We spent a lot of time exploring the inner workings of OCS. In particular, how OCS operates on the wire – both between servers and between client and server. Fascinating stuff – sheer geek bliss.

Both last week and in my Voice Ignite classes, I see huge interest around how MS has implemented SIP on the Wire within OCS.  When looking at OCS wire captures, or SIP logs, you can see a huge number of Microsoft extensions to older style SIP traffic, in addition to the updates to both SDP and RTP. In preparing for my upcoming TechEd talk (SIP – Naked in all it’s Glory), understanding these better has taken on a new importance.

Whilst in Redmond, superstar VI Trainer Dennie Klama pointed me towards updates to the Microsoft Office Protocol Documents.  I first came across these last summer, as noted in a blog entitled: Open Geek Goodness From Microsoft.  It was cool to get access to this level of detail – although I was disappointed that the documents themselves were not open to Community Content on the MSDN site. Thus there was no way for the community to clarify or perhaps better document the details of the protocol. I’d love to see more real-world examples to illustrate the text better.

Thanks to the pointer from Dennis, I was very exited to see not only more documents than I recall seeing last July, but much more importantly, there have been updates to these documents. The most recent set of updates to the OCS related documents I’ve read so far occurred in March 2009.

You can browse the index to the OPDs on the TechNet site at: http://tfl09.blogspot.com/search?q=protocols. You can also download a zip file of all 61 documents from: http://go.microsoft.com/fwlink/?LinkId=112500.

If you want to understand what OCS is doing on the wire, these documents are a must read.

Wednesday, April 01, 2009

Microsoft accepts defeat to Wikipedia and kills off Encarta

Today’s news that Microsoft accepts defeat to Wikipedia and kills off Encarta, which I read in the on-line version of The Times, is quite sad. But it’s one data point in the huge shift we’re seeing from the older style printed material (and that includes CD/DVDs) to online only.

We’ve seen a number of newspapers stop publishing their print editions, and a magazine I wrote for (Server Management Magazine), I contributed for over 10 years, has also gone web only. Although Encarta was an on-line product too, the death of print media is continuing at a pretty frantic pace.

One could argue the battle was more about the content than online vs offline. For me at least, the content on Wikipedia is very good. Thinking  back over the past year, when I needed information, I’ve tended to use Google and Wikipedia. In a few cases, I found Wikipedia entries wanting – so I added some content. Maybe if MS had opened Encarta up more, it’s popularity might have been higher.

As it turns out, Encarta was a very distant 2nd place to Wikipedia. With Wikipedia having 97% market share and Encara being second with 1.27% (and “print” not being significant0, the decision was only a matter of when, not whether.

So farewell Encarta.

Technorati Tags: ,

Thursday, March 05, 2009

Server Management Magazine- $50 off Idera’s PowerShell Plus deal

I write for Server Management magazine – and over on their web site, there’s a cool offer on PowerShell Plus. For a limited time, Server Management web site readers can take advantage of the offer of $50 off PowerShell Plus, thanks to those very nice people at Idea.  With this offer you can download the current version OR the latest beta from the Idera website. You don’t need not wait until the new version comes out to purchase.  If you like what you see in the beta, you can purchase the current version and get a free upgrade when the beta becomes GA. Either way – it’s a good deal!

Wednesday, February 25, 2009

SLMgr Commands and Options

I’ve been dealing a lot lately with activation of Server 2008. It’s not been as easy as I’d like. In searching for some help, I came across a great article on SLMgr: SLMgr Commands and Options with Windows Vista Product Key Activation. This article provides a good look at the options with this SLMgr.ext tool.

Technorati Tags:

Tuesday, February 24, 2009

OCS, WMI and PowerShell

This past week, I was teaching OCS Voice Ignite in Munich and a colleague (superstar Robin Edwards). During the week, we chatted about how to configure OCS’s Address Book service. This is a topic that comes up a lot in our OCS training, especially as the Address Book seems to be one of the key troubleshooting issues our delegates encounter.

As it turns out, you cannot do much with the GUI. There’s nothing there to enable you to do much more than view SOME of the settings. For example, by default, OCS ABS keeps 30 days worth of delta address books. If you login to Office Communicator, OC will download only the deltas since the last time you logged in, up to a certainly value – by default 30 days. This is a great feature for very large address books that don’t change a lot week to week.

The problem is, you can’t see this value in the GUI, nor can you set it. To view or change this, you need to use WMI in a direct way. Which leaves you three options: WBEMTest, VBS, or PowerShell. For most admins, WBEMTest is way too ugly and unfriendly and that probably is true for VBS. But PowerShell makes it very, very easy (assuming you know PowerShell of course).

The key settings for the Address Book Server are found in the WMI Class MSFT_SIPAddressBookSettings. This class is defined in MSDN at http://msdn.microsoft.com/en-us/library/bb632067.aspx.

This class has some useful properties, including:

DaysToKeep – specifies the number of days to keep the delta data files. The default is 30.

ExternalURL - An HTTPS URL that specifies the external location for address book file downloads

InternalURL - An HTTPS URL that specifies the internal location for address book file downloads.

MaxDeltaFileSizePercentage - The maximum percent of change for which a delta file is created. A delta file is not created if the percent of change is greater than this number. Multiply the value by 0.01 to derive the percentage. The minimum value for this property is 0 and the maximum value is 9999 (99.99%). The default value is 1250 (12.5%).

OutputLocation - Specifies the directory in which the files are stored.
PartitionOutputByOU - Controls whether data is partitioned by organization unit (OU).
RunTime - Specifies the service start time. The minimum value for this property is 0 and the maximum value is 2359. The default value is 130.

SynchronizeNow - When true, triggers the Address Book Server to perform a synchronization pass.

SynchronizePollingIntervalSecs - Specifies the number of seconds between checks for synchronization. The minimum value for this property is 5 and the maximum value is 9999.

UseNormalizationRules - Controls whether normalization is performed.

So much for what it does, now to how to do it with OCS R2. To get this class, using Standard Edition, you just use:

Get-WMIObject –Class MSFT_SipAddressbookSetting

However, using EE, it’s a bit more complex and you have to use a slightly different variation on the Get-WMIObject sytax, as follows:

PS C:\foo> gwmi -query "select * from MSFT_SipAddressBookSetting where backend='dc1'" -computer ocs-ee

Backend : dc1
DaysToKeep : 30
ExternalURL :
IgnoreGenericRules : False
InstanceID : {D265A402-BD08-4BCB-BEB3-CC7AFBD47C08}
InternalURL :
https://Cookham.gktrain.net/Abs/Int/Handler
MaxDeltaFileSizePercentage : 1250
OutputLocation : \\ocs-ee\absfiles
PartitionOutputByOU : False
RunTime : 130
SynchronizeNow : False
SynchronizePollingIntervalSecs : 300
UseNormalizationRules : True
WebServiceEnabled : True

So to make some changes, you could do something like this:

PS C:\foo> $abs = gwmi -query "select * from MSFT_SipAddressBookSetting where backend='dc1'" -computer ocs-ee
PS C:\foo> $abs.daystokeep = 45
PS C:\foo> $abs.runtime = 0230
PS C:\foo> $result = $abs.put()

PS C:\foo> gwmi -query "select * from MSFT_SipAddressBookSetting where backend='dc1'" -computer ocs-ee

Backend : dc1
DaysToKeep : 45
ExternalURL :
IgnoreGenericRules : False
InstanceID : {D265A402-BD08-4BCB-BEB3-CC7AFBD47C08}
InternalURL : https://Cookham.gktrain.net/Abs/Int/Handler
MaxDeltaFileSizePercentage : 1250
OutputLocation : \\ocs-ee\absfiles
PartitionOutputByOU : False
RunTime : 230
SynchronizeNow : False
SynchronizePollingIntervalSecs : 300
UseNormalizationRules : True
WebServiceEnabled : True

And finally – a bit tip of the hat to superstar Robin Edwards who showed me this class last week. Thanks Rob – you rock!

Technorati Tags: ,,

Thursday, February 19, 2009

Hotkey Keyboard Shortcuts in Windows 7 beta 1

Some time ago, I posted a blog article describing the short cut keys for Vista.  Looking at the statistics for this site, I see that this article is still being accessed (via Google). While many of those keys still work in Vista, there are some new hotkeys too, as described in a TechNet article.

These new  hot keys are as follows:

  • Win+Home: Clear all but the active window
  • Win+Space: All windows become transparent so you can see through to the desktop
  • Win+Up arrow: Maximize the active window
  • Win+Down arrow: Minimize the active window or restore the window if it's maximized
  • Win+Left/Right arrows: Dock the active window to each side of the monitor
  • Win+Shift+Left/Right arrows: If you've got dual monitors, this will move the active window to the adjacent monitor
  • Win+T: Shift focus to and scroll through items on the taskbar
  • Win+P: Adjust presentation settings for your display
  • Win+(+/-): Zoom in/out
  • Shift+Click a taskbar item: Open a new instance of that particular application

I’ve been using Win7 exclusively on my new laptop for a couple of weeks and am convinced! There are a couple of defencies, but these are driver related issues (and driver makers who do the “we do not support beta OSs” excuse.  But despite that, I’m sufficiently happy with Win7 beta to not want to reboot back to XP.

Technorati Tags: ,,,

Tuesday, February 17, 2009

Swapping variables with PowerShell

I’ve often had cases with programming where I want to swap the contents of two variables. For example, suppose I have two variables $a, and $b, and what we want is to have $a contain the value of $b and $b contain the value of $a.

As an old fashioned programmer, I’d do it this way:

# Assign some values
$a = 1
$b = 2
# now switch
$temp = $a
$a = $b
$b = $temp

Now that works, but it requires the use of a third variable ($temp). If $a and/or $b were large arrays (e.g. all the file objects on a system for example) this would waste a lot of RAM and cause a GC collection.

As it turns out, with PowerShell, there’s another way:

# Assign some values
$a = 1
$b = 2
# now switch
$a,$b = $b, $a

In this case, PowerShell treats the two sides of the “=” as arrays and does the necessary transposition of values.

Thanks to Tobias Weltner for pointing this out.

Technorati Tags: ,,

Tuesday, February 10, 2009

PowerShellPlus v2.1 Beta – A Cool Feature

As I noted in in a recent blog post, Idera has released a new beta for PowerShell Plus 2.1. I’ve  been using it a bit lately and I can’t wait for it to go final!

One really neat feature I discovered today is the Shft+Enter feature. If like me, you find CMD.EXE still has the occasional feature that PowerShell doesn’t quite meat (dir /s and dir /ad are two that are much harder in PowerShell), then you can enter the command and instead of hitting Enter, hit Shift+Enter and the cmd will be run by CMD.EXE. So inside PowerShell Plus, it looks like this:

 

PSH [C:\]: dir foo*.* /s         <--- plus Shift+Enter
Volume in drive C is XP_32bit
Volume Serial Number is 44B8-CFED

Directory of C:\

10/02/2009  16:59    <DIR>          foo
               0 File(s)              0 bytes

Directory of C:\foo

10/02/2009  16:59                 7 foo.foo
16/05/2008  13:18           121,306 foo.txt
               2 File(s)        121,313 bytes

Directory of C:\WINDOWS\Help\Tours\htmlTour

04/08/2004  12:00             1,777 footer.htm
               1 File(s)          1,777 bytes

     Total Files Listed:
               3 File(s)        123,090 bytes
               1 Dir(s)   8,188,985,344 bytes free
PSH [C:\]:

Super cool!  Yet another reason for serious scripters to buy PowerShell Plus!

Technorati Tags: ,

Saturday, February 07, 2009

/n software inc. Sponsors PowerShell.com Community Site

Tobias Weltner this week announced that /n software, a provider of software components for Internet, security, and E-Business development, has become the latest sponsor for the PowerShell.Com community site. This is a great thing as it can improve the visibility, viability and hopefully the usefulness of the PowerShell.com site.

Friday, February 06, 2009

InstEd – A Replacement For Orca

As many of you know, Orca is an MSI editor. I wrote about it a long time ago (here), but have used it ever since! I find Orca particulary useful to fix the many MSIs that stop code running on, for example Server 2003 that runs fine on XP (e.g. drivers from OEMs). Often, there’s just a line in the MSI that needs to be taken out and the MSI functions fine.

Tonight I found a neat replacement – and it’s free. Called InstEd – you can get it from the web site (http://www.instedit.com). What can I say – it does what it says. For more information, see the Online Help.

Technorati Tags: ,,

Wednesday, February 04, 2009

PowerShellPlus v2.1 Beta

This is sort of exciting - PowerShellPlus v2.1 Beta is live! I’ve used PowerShell Plus for some time and love it. But there are things that I’d like to see, in particular the CTP3 support. Well, now we have that – and I’m downloading it as I write this post. The features in 2.1 that catch my eye are: VBS support, STA MOde, Code Sharing and of course, CTP3 support. I’ll be posting more once I have the code running and have a chance to give it a good test!

Technorati Tags: ,,

Tuesday, February 03, 2009

The Official Scripting Guys Forum

Just a heads-up that those cool Scripting Guys from Microsoft now have a on-line web forum for help on scripting. Just launched, The Official Scripting Guys Forum is a part of the overall TechNet forum and is a web-only forum (sadly no NNTP).

The forum is a one stop shop for all scripting questions, including questions on Perl, VBScript and of course PowerShell. There are a number of scripting gurus there already and I’ve agreed to be one of the moderators!

Saturday, January 31, 2009

Likening to Dave Edmunds

Many, many years ago, I spent a bank holiday in Amsterdam with a life friend. We had a pretty outrageous time. The highlight was seeing Dave Edmunds in the Paradiso. We had outstanding seats and the evening was magic. It was the early 1980’s and Dave was in his prime. The sound was outstanding. The environment was even better!

I was reminded of this when I came across a bootleg concert featuring Dave and The Refreshments (a Swedish band). The show features Billy Bremner. It’s so wonderful to hear tunes like “I Knew The Bride”, “Here comes the Weekend” and “Standing at the Crossroads”. It’s a real shame Debra is not on their set list. If you can find this show (it’s on a few popular torrent sites) it’s worth the download.

Let it Roll!