Microsoft Command Shell CTP Release Notes

Copyright (c)2005 Microsoft Corporation. All rights reserved.

THIS INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.

MSH now comes with the "Getting Started Guide." This guide will answer your basic questions about MSH and help you get started.

# Installing the Microsoft Command Shell 8/1/05 Customer Preview Release

Perform the following steps to install the MSH Shell.

1. To install or un-install Monad you must have admin privileges.
2. If you have Beta 1 of Monad:
   1. Backup any custom profiles you have created if you want to reuse them.
   2. In Control Panel, go to Add/Remove Programs and remove any entry containing "Microsoft Command Shell"
3. If you have old installation, prior to Beta 1:
   1. In Control Panel, go to Add/Remove Programs and remove any entry containing "Windows Command Shell Preview".
   2. You may need to manually remove the directory “C:\Program Files\Microsoft Command Shell Preview” and/or “C:\Program Files\Windows Longhorn Command Shell Preview."
4. Ensure you are running on Windows XP Service Pack 2, Windows Server 2003 Service Pack 1, or Longhorn Beta 1.
5. Verify that you have the correct version of the .NET Framework, Beta2.050215-xxxx. To check whether you have the correct version perform the following:
   1. In your %windows%\Microsoft.NET\Framework directory, check to see if you have a v2.0.50215 sub-directory. If you do not have this directory you do not have Beta 2 of the .NET Framework.
   2. If you have this sub-directory, right click on a DLL in this directory and choose Properties. Click on the Version tab, then click File Version under Item Name. The value should be 2.0.50215.44 (beta2.050215-xxxx)
   3. If you do not have the right version of the .NET Framework then you need to install it from http://lab.msdn.microsoft.com/vs2005/get.
6. Run the MSI package.

# Known Issues

MSH crashes while get-content –wait is running on a file that is updated frequently.

VSTS July CTP drop does not uses v2.0.50215 of the .NET Framework. Monad installaion on such a sytem might not work.

UTF7 file encoding is not supported.

Set-item on an existing alias returns an error instead of writing a new value if –option ReadOnly is specified. Set-alias should be used instead.

Regardless of the file extension, the following reserved device names should not be used as the name of a file. If used, unpredictable behavior and data loss may occur.

`CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9`

Help content for write-warning and script-signing are missing.

Help content for new-object is incorrect.

# Important Changes

COM interop feature has been added in this release. Documentation on how to use this feature is included in the "Getting Started Guide."

The concept of separate shells has been introduced in this version of MSH. If you are developing Cmdlets, review the information about Shells in the "Getting Started Guide."

When you run setup, it will automatically register an MSHSIP.dll to support script signing. To learn how to sign a script type:

`MSH> Set-AuthenticodeSignature -?`

and follow the instructions.

The following cmdlets have been added:

`compare-object, convert-HTML, export-clixml, import-clixml, start-transcript, stop-transcript, update-FormatData, update-typeData, write-warning`

Script block delegates feature is enabled in this release. However, currently it only works when the delegates are called on the same thread.

# Changes from the Beta 1 release

A system-wide profile is installed at "All Users\Documents\MSH\profile.msh". User specific profile should go in at "users\My Document\MSH\profile.msh"

The registry entry for Monad now has shellId - `HKLM:\SOFTWARE\Microsoft\msh\shellId\`

The format.mshxml file allows the user to define what properties will be displayed and in what format for any type. Setup will install a read only format.mshxml file. You can add additional format data in a separate file with .mshxml extension for your formatting requirements. Documentation on how to use this file is included in the "Getting Started Guide."

The types.mshxml file allows the static extension of types with added properties (which can be used by format.mshxml). Setup will install a read only types.mshxml file. You can add additional types data in a separate file with .mshxml extension for your formatting requirements. Documentation on how to use this file is included in the "Getting Started Guide."

Now there are 3 execution policy - AllSigned, RemoteSigned, Unrestricted. The default execution policy is RemoteSigned. For more details on execution policy, refer to "Getting Started Guide."