Friday, August 15, 2008

PowerShell Team Blog : ErrorLevel equivalent


PSMDTAG:FAQ: ErrorLevel - what is the PowerShell equivalent?

In Cmd.exe, %ErrorLevel% is a builtin variable which indicates the success or failure of the last executable run.

In PowerShell, we support:

       Contains True if last operation succeeded and False otherwise.

       Contains the exit code of the last Win32 executable execution.

PowerShell Team Blog : ErrorLevel equivalent

Wednesday, August 13, 2008

Jaime Rodriguez : dabbling around the new WPF datagrid (part 1)


dabbling around the new WPF datagrid (part 1)

On Monday, the WPF team released the CTP of their new datagrid control.  
You can download it from here.  [Note that it requires .NET 3.5 SP1, released monday too]

I have been playing with it so I created this 3 part series.

  • Part 1 (this write-up) is about the features in the grid and the ones missing from it.
  • Part 2 is a hands-on exercise to apply the features to customize the presentation of data (aka view) of the datagrid.
  • Part 3 includes a few tips & tricks on customizing/styling the datagrid.

The source for this sample is here.




Jaime Rodriguez : dabbling around the new WPF datagrid (part 1)

Stall Status: Know before you go


Stall Status: Know before you go

Published 13 August 08 11:03 AM | Coding4Fun

Stall Status is a Silverlight-based Vista Sidebar Gadget that uses the Z-Wave wireless protocol and door sensors to notify you of the occupied/available state of the bathroom stalls.

    Stall Status

    Every now and then someone throws out an idea for a completely off-the-wall application that just has to be built. When Jon Rauschenberger, Clarity’s CTO, came into my office with his “brilliant idea” for a monitoring system to track the “occupied/available” state of our washroom stalls, I immediately recognized it as one of those moments. I had been doing some research on the Z-Wave wireless protocol for a client project earlier that week, and I thought “Stall Status” would be a fun way to get some hands on experience using Z-Wave.

    In this article I will walk you through how to write managed code that interacts with Z-Wave devices. I’ll also show how to use Silverlight 2.0’s access policies to write “connected clients”: client applications that establish a persistent TCP connection to a remote server and thereby avoid having to poll the server for status changes. Finally, I’ll walk through the steps necessary to deploy a Silverlight 2.0 application as a Windows Vista Sidebar Gadget.


    Follow link for full post with details on implementation


    Coding4Fun : Stall Status: Know before you go

    Tuesday, August 12, 2008

    Logic puzzle: Russian Roulette


    Logic puzzle: Russian Roulette

    Here is another logic puzzle, see what you think:

    You are tied to your chair and can't get up. Here's a gun. Here's the barrel of the gun, six chambers, all empty. Now watch me as I put two bullets in the gun. See how I put them in two adjacent chambers? I close the barrel and spin it. I put the gun to your head and pull the trigger. Click. You're still alive. Lucky you! I'm going to pull the trigger one more time. Which would you prefer, that I spin the barrel first, or that I just pull the trigger?

    ASP.NET Debugging : Logic puzzle: Russian Roulette

    Microsoft Sync Framework : 2 New Sync Samples - Download Only & Adapter Builder


    2 New Sync Samples - Download Only & Adapter Builder

    We have just posted the following two new samples to the Sync Code Gallery today for Sync Services for ADO.NET v2:

    Download Only Sync
    This sample demonstrates two-tier download-only synchronization using Microsoft Sync Services for ADO.NET v2.0. The sample solution is composed of two projects: Client, which includes the UI form, data access code, and synchronization agent code for Sync Services; and SampleServerSyncProvider, which includes server synchronization provider code for Sync Services. For more information, see the code comments that are included in each file.

    Sync Adapter Builder
    This sample utility demonstrates how to create synchronization commands by using the SqlSyncAdapterBuilder in Microsoft Sync Services for ADO.NET v2. The sample solution is composed of one project that includes the UI form, data access code, and SqlSyncAdapterBuilder code. The SqlSyncAdapterBuilder is typically used at run time to generate synchronization commands, which are in the form of SQL queries. This provides an alternative to writing these commands manually at design time. In this sample, we use the SqlSyncAdapterBuilder to output synchronization commands. You can output commands that work with SQL Server change tracking (available in SQL Server 2008) or a custom change tracking system. Running this application enables you to see how the commands are structured, and to copy those commands for use in applicatons where you will specify commands manually.


    Microsoft Sync Framework : 2 New Sync Samples - Download Only & Adapter Builder

    Operations Manager Product Team Blog : Infrastructure Planning Guide for OpsMgr 2007 SP1


    Infrastructure Planning Guide for OpsMgr 2007 SP1

    A few of us have been working with the Solutions Accelerator team and Pete Zerger to come up with an Infrastructure Planning Guide for OpsMgr 2007 which got published a couple of weeks ago. This document will lead readers through a sequence of core decision points to design an infrastructure for OpsMgr 2007. It also provides a means to validate design decisions with the business to ensure that the solution meets the requirements of both business and infrastructure stakeholders. This guide will help our customers with…

    - Infrastructure design process

    - Optimizing OpsMgr 2007 components to meet customer needs

    - Designing the databases taking into account requirement of performance, capacity and fault tolerance

    - Designing Notification Systems

    - And much, much more…

    Please share this document with your customers and partners as I am sure they will find this very useful. You can download the guide by scrolling to the bottom of the webpage and clicking the download link for Operations Manager LINK

    Operations Manager Product Team Blog : Infrastructure Planning Guide for OpsMgr 2007 SP1

    Spat's WebLog (Steve Patrick) : LDAP client tracing...


    LDAP client tracing...

    ADinsight from the sysinternals toolset is a great tool , but I seem to have problems with it at times. Specifically on Server 2008 & Vista (maybe due to the way it hooks wldap32.dll)

    On Vista OS and beyond, there is built in client ldap tracing which can give you similar results ( with a wee bitmore effort )

    In order to start the trace you use tracelog.exe ( may be able to use logman.exe as well but I have not tried it )

    First , create a new key under HKLM\System\CurrentControlSet\Services\ldap\tracing\

    The key name should be the name of the .exe you want to trace , mmc.exe for example.

    C:\tools>Tracelog.exe -start ldap -guid #099614a5-5dd7-4788-8bc9-e29f43db28fc -f ldap.etl -flag x1FFFDFF3

    Logger Started...

    Enabling trace to logger 23

    Operation Status: 0L The operation completed successfully.

    Logger Name: ldap

    Logger Id: 0x17

    Logger Thread Id: 00000EDC

    Guid: 4a9f73a0-649c-11dd-84e5-0003ff1ee008

    Buffer Size: 16 Kb

    Maximum Buffers: 25

    Minimum Buffers: 3

    Number of Buffers: 3

    Free Buffers: 2

    Buffers Written: 1

    Events Lost: 0

    Log Buffers Lost: 0

    Real Time Buffers Lost: 0

    AgeLimit: 0

    Real Time Consumers: 0

    ClockType: PerfCounter

    Log Mode: Sequential

    Maximum File Size: not set

    Buffer Flush Timer: not set

    Log Filename: C:\tools\ldap.etl

    After your repro or whatnot, when you want to stop the trace use the following command:

    C:\tools>tracelog -stop ldap

    Operation Status: 0L The operation completed successfully.

    Logger Name: ldap

    Logger Id: 0x17

    Logger Thread Id: 00000EDC

    Guid: 4a9f73a0-649c-11dd-84e5-0003ff1ee008

    Buffer Size: 16 Kb

    Maximum Buffers: 25

    Minimum Buffers: 3

    Number of Buffers: 4

    Free Buffers: 4

    Buffers Written: 1

    Events Lost: 0

    Log Buffers Lost: 0

    Real Time Buffers Lost: 0

    AgeLimit: 0

    Real Time Consumers: 0

    ClockType: PerfCounter

    Log Mode: Sequential

    Maximum File Size: not set

    Buffer Flush Timer: not set

    Log Filename: C:\tools\ldap.etl

    In order to format the trace to a readable format use tracerpt.exe

    C:\tools>tracerpt.exe ldap.etl -o ldap2.csv -of CSV








    DumpFile: ldap2.csv

    The command completed successfully.

    Now, open the CSV in excel . There is a whole gob of information, but I have found that if I filter the Event ID column I can easily get what I want from it.

    Below I filter on ID = 20


    Have fun with it... works nicely in a pinch when you don't have any other tools at your disposal except for the built in ones. Also works nice for the detailed returns and code flow, as well as how much time it took to perform.

    Spat's WebLog (Steve Patrick) : LDAP client tracing...

    .NET 3.5 Enhancements Training Kit


    .NET Framework 3.5 Enhancements Training Kit containing Labs, Demos and PPTs

    File Name: .NET Framework 3.5 Enhancements Training Kit-20080811.exe

    Version: 1.0

    Date Published: 8/11/2008

    Language: English

    Download Size: 33.1 MB

    Overview: The .NET Framework 3.5 Enhancements Training Kit includes presentations, hands-on labs, demos, and event materials. This content is designed to help you learn how to utilize the .NET 3.5 Enhancement features including: ASP.NET MVC, ASP.NET Dynamic Data, ASP.NET AJAX History, ASP.NET Routing, ADO.NET Data Services, ADO.NET Entity Framework, WCF 3.5 SP1, and the .NET Framework Client Profile.

    Download details: .NET 3.5 Enhancements Training Kit

    Rexiology@MSDN : Slipstream / Servicing Windows 2008 Server iso image with Hyper-V RTM bits...


    Just finished slipstream / servicing the windows 2008 server x64 iso image for using in my HPC server 2008 computing node provisioning (I would like my computing nodes to use Hyper-V Native network driver on Enterprise and MPI NIC to have high-speed access while bare-metal provisioning.) and like to write down the resource I found on net also the steps how I done it here for reference later.

    (1) you need WAIK (Windows Automated Installation Kit) for Windows Vista SP1 and Windows Server 2008

    download here and install it on your working machine. (it's a 1375.9mb iso file to download...)

    (2) you need Windows 2008 Server iso images (x86 or x64, depends on your needs)

    download the image from TechNet or MSDN downloads.

    (3) you need Hyper-V RTM bits (KB950050)

    x64 bits download here

    (4) Some useful information to read

    John Howard's Hyper-V RTM slipstream posts - part 1 ( part.2 and part.3 for reference if you are going to setup your own WDS server for PXE boot network installation, or want to service the Vista SP1 image with Hyper-V RTM bits)

    The great tutorial post from Ramesh MVP on WinVistaClub forum about Merging Vista x86 and Vista x64 images into a single DVD. key point here is the usage of oscdimg.exe provided from WAIK to create the iso image from serviced bits.

    (5) All set! let's get hands dirty!!

    (A) Install WAIK to your working machine or working VM

    (B) Open "Windows PE Tools Command Prompt" from WAIK start menu group. the rest of commands all happen here.

    (C) create some working folder. I created [c:\aik-mount] for mount folder, [c:\aik-temp] for temp folder and [c:\aik-all4iso] for source folder to create serviced iso image.

    (D) Extract KB950050 msu file to get the cab file for servicing / slipstreaming.

          cmd> expand –F:* <pathtomsu> <folder>

    (E) mount the windows server 2008 iso image and copy all the files to [c:\aik-all4iso] folder.

    (F) servicing hyper-v rtm bits to [install.wim] file under [c:\aik-all4iso\sources\]. the install.wim file should contain 6 index for various editions of server installations (Standard, Enterprise, DataCenter editions, with Server and Server-Core installations). do the servicing / slipstream for all the editions and installations. (to see the package content for a wim file, using cmd> imagex /info path-to-wim-file)

          cmd> imagex /mountrw c:\aik-all4iso\sources\install.wim 1 c:\aik-mount
          cmd> start /w pkgmgr /ip /m:c:\path-to-kb950050-cab-file\ /o:c:\aik-mount;c:\aik-mount\windows /s:c:\aik-temp
          cmd> imagex /unmount /commit c:\aik-mount

          cmd> imagex /mountrw c:\aik-all4iso\sources\install.wim 2 c:\aik-mount
          cmd> start /w pkgmgr /ip /m:c:\path-to-kb950050-cab-file\ /o:c:\aik-mount;c:\aik-mount\windows /s:c:\aik-temp
          cmd> imagex /unmount /commit c:\aik-mount

          cmd> imagex /mountrw c:\aik-all4iso\sources\install.wim 3 c:\aik-mount
          cmd> start /w pkgmgr /ip /m:c:\path-to-kb950050-cab-file\ /o:c:\aik-mount;c:\aik-mount\windows /s:c:\aik-temp
          cmd> imagex /unmount /commit c:\aik-mount

          cmd> imagex /mountrw c:\aik-all4iso\sources\install.wim 4 c:\aik-mount
          cmd> start /w pkgmgr /ip /m:c:\path-to-kb950050-cab-file\ /o:c:\aik-mount;c:\aik-mount\windows /s:c:\aik-temp
          cmd> imagex /unmount /commit c:\aik-mount

          cmd> imagex /mountrw c:\aik-all4iso\sources\install.wim 5 c:\aik-mount
          cmd> start /w pkgmgr /ip /m:c:\path-to-kb950050-cab-file\ /o:c:\aik-mount;c:\aik-mount\windows /s:c:\aik-temp
          cmd> imagex /unmount /commit c:\aik-mount

          cmd> imagex /mountrw c:\aik-all4iso\sources\install.wim 6 c:\aik-mount
          cmd> start /w pkgmgr /ip /m:c:\path-to-kb950050-cab-file\ /o:c:\aik-mount;c:\aik-mount\windows /s:c:\aik-temp
          cmd> imagex /unmount /commit c:\aik-mount

    (G) now the install.wim is all serviced with hyper-v rtm bits. next to create the new serviced iso using oscdimg.exe

    cmd> oscdimg.exe –u2 –bc:\aik-all4iso\Boot\ –lKRMSXVOL_EN_DVD –g –t08/12/2008,23:30:00 –h c:\aik-all4iso c:\win2k8-x64-hyperv-rtm-serviced.iso

    And until here, you got the hyper-v rtm serviced windows 2008 server x64 install iso image to use!! LOL!

    already tested this iso while installing my HPC computing nodes without problems. all in the Hyper-V virtual environment and during a 8 computing nodes installation (simutaniously), computing nodes successfully found the AD server using the Hyper-V native network card as Enterprise network NIC and complete the bare node installation without human interference!! nice!!! this could expend if I want to simutaniously install 1000 computing nodes in the same time. the latest Windows HPC Server 2008 RC1 bits is really stable and cool on installing and managing nodes! can focus more time on writing codes for HPC now!


    Rexiology@MSDN : Slipstream / Servicing Windows 2008 Server iso image with Hyper-V RTM bits...

    Monday, August 11, 2008

    Vincent Sibal's Blog : .NET 3.5 SP1 and WPF DataGrid CTP are out now!


    NET 3.5 SP1 and WPF DataGrid CTP are out now!

    As you might have heard, .NET Framework 3.5 SP1 and Visual Studio 2008 SP1 are out today! There are a ton of blogs that point to the download links so I’ll just point you over to one of them, Lester’s blog. In addition to the SP1 release, the WPF DataGrid CTP is also out today! Check it out here for the list of DataGrid features as well as 3.5 SP1 features in the Controls area that has enabled the DataGrid. Our awesome PM, Samantha, has a nice video introducing the basic usage of the DataGrid. Oh yea, and you can download the binaries and source code here! 3.5 SP1 is required to use the DataGrid binaries so be sure to download that goodness.


    Does DataGrid need an introduction? Well, maybe I’ll just point out some of the WPF specifics to get you started. DataGrid subclasses from MultiSelector which subclasses from Selector which subclasses from ItemsControl. So like ListBox or ComboBox, DataGrid is an extention of an ItemsControl. With that in mind, the DataGrid has the concept of rows and cells but to match the pattern of ItemsControl, the collection of rows is the Items property. Cells are sub-items of a particular item and are defined by the DataGrid.

    How do I use it?

    There are a ton of sub-features and ways to customize and tweak the DataGrid. For this first post I just want to start with the very basics. Ok, here we go. DataGrid derives from ItemsControl, so just like we’ve done in the past with ListBox, bind the DataGrid.ItemsSource to your data source.

    <dg:DataGrid ItemsSource="{Binding Source={StaticResource people}}">

    In this example people represents a collection that derives from ObservableCollection<Person> where Person has some properties that represent a general person (first name, last name, id, etc). Ok, that’s it. If you run a project with that you will get a full set of rows and columns with each cell bound to each property on the Person item. By default the DataGrid will auto-generate columns for you and the generated columns will be a specific type of column based on the type of properties you have in your data source. It also automatically creates the necessary bindings for each data source property on each column. It does appear very magical but hopefully I will be able to demystify a lot of its behavior over a series of posts. Here are some other things you get or can do right out of the box as an end-user for CTP:

    · Resize columns: hover over the end of a header, then click and drag.

    · Reorder columns: click on a column header and drag over a different area.

    · Auto-sort data in a column: click on a column header and the items in the column will toggle from ascending to descending

    · Multi-column sorting: SHIFT + click on multiple column headers

    · Selection: Default mode is FullRow and multi-row selection

    · Navigation: all the basic navigation you expect in a spreadsheet

    · Edit cells and rows: select a column and press F2 or double-click to open the cell for edit. Press ‘ESC’ to cancel and/or ‘Enter’ to commit the changes.

    · Delete rows: select a row and press ‘Delete’.

    · Add new rows: navigate to the bottom row and double click a cell to open it for edit.

    · Clipboard Copy

    · Freeze columns

    Of course there is a bunch more you can do to customize these default features as well as the internals of the DataGrid. I’m going to do a series of posts introducing many of the sub-areas of DataGrid. In the meantime, I made a sample where I bind many of the DataGrid DPs to CheckBoxes and ComboBoxes so you can tweak things in real-time and play around with it. Enjoy!


    Vincent Sibal's Blog : .NET 3.5 SP1 and WPF DataGrid CTP are out now!

    Kevin Holman's OpsMgr Blog : Updated Dell MP released 3.1 A01


    Updated Dell MP released 3.1 A01

    Just a few musings on the new Dell hardware MP.

    Download Now

    1.  The MP comes in three files.... - for Servers and Printers - for Business Computers - for MD3000™ and MD3000i™ Storage Arrays

    So most of you will just need to import the Server MP.  No need or benefit to import the storage array MP unless you support and monitor those specific array models above.  I recommend deleting any Dell MP's you had previously imported.. along with any overrides, and starting from scratch on this one, but in place upgrade from 3.0 is supported on OpsMgr SP1.


    More Details in full post..


    Kevin Holman's OpsMgr Blog : Updated Dell MP released 3.1 A01

    Richard's Weblog : Programming Hyper-V with WMI and C# - Getting Started


    Programming Hyper-V with WMI and C# - Getting Started

    You may have seen from a recent post that I received a new laptop that was capable of running Hyper-V.  Well, it's all fully installed and working, so I thought I might blog about it a bit.  There are plenty of existing blogs on Hyper-V, so I thought I might take a slightly different tack and look at coding for Hyper-V in C#. 

    This suits me fine as I like to get to know new software technologies via their API - I think it really helps to understand the features and what you can do with a technology if you have to write some code using it.  You may think differently, depending on how much coding you do - if you are more of a scripter, then check out my colleague, Ben Pearce's blog, where he does a similar thing to what I'm doing here, but using PowerShell.

    Anyway, Hyper-V provides a nice interface for scripting and programming.  The interface is usable from any scripting/coding language that can access WMI.  For example: VBScript, C++, PowerShell, C#, etc.  In this short tutorial I'll look at connecting and querying via C#, but the techniques can be easily adapted to the language of your choice.


    See full post for details and code examples.


    Richard's Weblog : Programming Hyper-V with WMI and C# - Getting Started

    Windows Server Customer Engineering (Customer Advisory Team) : Quick and Dirty Large Scale Eventing for Windows


    Quick and Dirty Large Scale Eventing for Windows

    Published 11 August 08 02:34 PM | ottoh

    One of the least known yet most powerful management features to ship with Windows Vista and Windows Server 2008 is built-in Event Forwarding which enables large scale health and state monitoring of a Windows environment (assuming health and state can be determined from Windows Events - which they usually can). Not only is this feature built into the latest versions of Windows, but it's also available for down-level OSs like Windows XP SP2+ and Windows Server 2003 SP1+ (here).

    Note: True enterprise class Windows eventing is included with enterprise monitoring solutions like System Center Operations Manager.

    This new Windows Event Forwarding (also known as Windows Eventing 6.0) is exceptional for the following reasons:

    1. Standards Based: No really! It leverages the DMTF WS-Eventing standard which allows it to interoperate with other WS-Man implementations (see OpenWSMAN at SourceForge).
    2. Agentless: Event Forwarding and Event Collection are included in the OS by default
    3. Down-Level Support: Event Forwarding is available for Windows XP SP2+ and Windows Server 2003 SP1+
    4. Multi-Tier: Forwarding architecture is very scalable where a "Source Computer" may forward to a large number of collectors and collectors may forward to collectors
    5. Scalable: Event Collection is very scalable (available in Windows Vista as well) where the collector can maintain subscriptions with a large number of "Source Computers" as well as process a large number of events per second
    6. Group Policy Aware: The entire model is configurable by Group Policy
    7. Schematized Events: Windows Events are now schematized and rendered in XML which enables many scripting and export scenarios
    8. Pre-Rendering: Forwarded Windows Events can now be pre-rendered on the Source Computer negating the need for local applications to render Windows Events
    9. Resiliency: Designed to enable mobile scenarios where laptops may be disconnected from the collector for extended periods of time without event loss (except when logs wrap) as well as leveraging TCP for guaranteed delivery
    10. Security: Certificate based encryption via Kerberos or HTTPS

    This implementation will walk through the following example design where via Group Policy a domain computer group will be configured to forwared Windows Events to a single collector:


    Follow link to full article for configuration and testing details.


    Windows Server Customer Engineering (Customer Advisory Team) : Quick and Dirty Large Scale Eventing for Windows

    Microsoft Virtualization launch


    On September 8th, 2008 Microsoft will launch its new virtualization products. Now you can virtualize from the data center to the desktop, and manage with the same tools you're already using for your physical infrastructure.
    Find out how Windows Server 2008® with Hyper-V™, Microsoft System Center - including Virtual Machine Manager 2008 - and Microsoft Desktop and Application Virtualization allow you to deploy, manage and get VIRTUAL now like never before.
    • Learn about Microsoft's virtualization strategy and roadmap from Bob Muglia, Senior Vice President, Server and Tools Business; Kevin Turner, Chief Operating Officer, Microsoft Corporation; Bob Kelly, Corporate Vice President, Infrastructure Server Marketing, Microsoft Corporation.
    • Hear from customers who have deployed Microsoft Virtualization products
    • Get a free Microsoft Virtualization evaluation software kit*
    • Visit the exhibit hall and test-drive the latest hardware and software solutions for a virtual environment from Microsoft and its partners.
    • Take a technical deep dive by attending one of the conference sessions or hands-on labs.
    • Network with your peers at the attendee luncheon and closing reception
    • Microsoft Virtualization Launch
    • September 8, 2008
    • Meydenbauer Center, Bellevue, Washington

    Microsoft Virtualization launch

    Benp's Guide to Stuff : Scripting Hyper-V with WMI and PowerShell: Part 1 – Introduction + Querying State


    Scripting Hyper-V with WMI and PowerShell: Part 1 – Introduction + Querying State

    Scripting Hyper-V with WMI and PowerShell

    Part 1 – Introduction + Querying State


    When it comes to scripting Hyper-V there are really 2 methods:

    1. Using the virtualization WMI provider that ships with Hyper-V.

    2. Using the cmdlets provided by System Centre Virtual Machine Manager 2008

    So which option should you use? Well if you want an easy life, the answer is absolutely Option 2. Use SCVMM 2008, and scripting Hyper-V is like a pleasurable dream. The cmdlets are task orientated, provide a rich set of features and really do work very well. So why is this a guide to Option 1 – Using the virtualization WMI provider? Well, sometimes Hyper-V will be used without an accompanying System Centre deployment, and if that’s the case, using WMI is your only scripting option.

    I`ll be honest, using the WMI provider to script Hyper-V is unintuitive, complicated and feels quite clunky. So the question has to be asked “Why is the Hyper-V WMI provider so difficult to use?” The answer is Industry Standards. The virtualization WMI provider fully complies with the standards outlined by the Distributed Management Task Force (DMTF). Whilst standards are great for creating consistency among different vendors, there are often comprises with the simplicity of individual solutions. Contrastingly the SCVMM cmdlets are a bespoke solution designed by Microsoft to be simple, intuitive and powerful, but do not adhere to any industry standards.

    So, with the expectation that the Hyper-V WMI journey will be a challenging one, let’s get on with it.


    Read full article for details and code ..


    Benp's Guide to Stuff : Scripting Hyper-V with WMI and PowerShell: Part 1 – Introduction + Querying State

    Sunday, August 10, 2008

    Infrastructure Blog : Hyper-V Best Practices - Quick Tips (2)


    Hyper-V Best Practices - Quick Tips (2)

    Best Practices for Configuring Virtual Machines

    In continuation to my first post on best practices, I'm back with some more.

    This  post discusses best practices that should be considered when configuring virtual machines in Hyper-V. Virtual machine performance is not only impacted by how the physical server is configured but also by the selections made when configuring the virtual machine itself.

    Install Integration Services
    The first, and probably the most important, best practice for virtual machines is to install the Integration Services (IS) that come with Hyper-V as soon as possible provided the operating system running in the virtual machine is supported (refer to the Integration Services section for information on supported Guests). Then, update the IS as needed.

    Uninstall VMAdditions and Compact VHDs
    When migrating virtual machines from Virtual PC or Virtual Server 2005 R2, uninstall the VMAdditions and compact the virtual hard disk before moving the disk to the Hyper-V server.

    Set Display for Best Performance
    For the best display in a virtual machine ensure the display interface is set for Best Performance. This will ensure the hardware acceleration is set to Full.

    Configure Fixed-Size VHDs
    Choose to configure fixed-size virtual hard disks as opposed to dynamically expanding. Performance is faster, the file system is less likely to fragment and managing space on the physical disk is easier. Always defragment a physical disk before creating a virtual hard disk.

    Use SCSI Virtual Adapters for Data Drives
    Hyper-V requires the virtual machine to boot from a virtual IDE Controller, however, SCSI virtual adapters can be used after that for mounting additional virtual hard disks. While performance differences between a virtual IDE and a virtual SCSI controller in Hyper-V is almost negligible (with Integration Services installed), the fact is more and larger capacity virtual hard disks can be attached to a virtual SCSI controller (4 controllers with 64 virtual disks each for a total of 256). So, if you need more than four virtual hard disks attached to a virtual machine, use a virtual SCSI controller.

    Allocate CPU Resources Based on Anticipated Usage
    It is also important to determine virtual machine performance to ensure CPU resource allocation on the physical server is adequate to support the workload inside the virtual machine.

    Consider Using Pass-Through Disks
    It is best practice to use virtual hard disks when creating virtual machine. However it is no always possible due to circumstances. Using pass-through disks the performance is slightly better versus using VHD's. It allows you leverage greater than 2TB. Very important, when using pass-through disks, virtual machine configuration files should be relocated to another hard disk or share. Here we loose the snapshot and portability of like in VHD's.

    Ensure File Share High Availability
    If a file share is being used to store virtual machine configuration data, it is best practice to ensure the file share is highly available.

    Configure Domain Controllers to Optimize Performance
    Domain Controllers are supported in Hyper-V when running in a virtual machine. The following best practices are recommended for these configurations: Never save state in a domain controller as this may cause synchronization issues in the domain. Never Pause a domain controller virtual machine for long periods of time as this may adversely impact replication. Always shutdown a domain controller. Do not take snapshots of a domain controller. Make a determination regarding time synchronization. The decision is either to use the Hyper-V Integration Service for Time Synchronization or not. If the decision is to treat the virtualized DCs like hardware based DCs, then disable the Time Synchronization capability in the Settings for each virtual machine and point the PDC Emulator to an external time source and allow all the other DCs to synchronize with the PDC Emulator. If the decision is to synchronize with the Parent partition, only enable the Time Synchronization capability for the DC holding the PDC Emulator FSMO Role.

    Infrastructure Blog : Hyper-V Best Practices - Quick Tips (2)

    John Howard - Hyper-V and virtualization blog : Connection Manager Administration Kit for Vista


    Connection Manager Administration Kit for Vista

    Curiosity got the better of me. When I was analyzing why Hyper-V Remote Management didn't always work over a VPN connection due to DNS the other day, I mentioned that I wasn't familiar with the replacement technology for CMAK in Windows Server 2003.

    Well, I found it (but it was surprisingly well hidden) - the replacement is.... CMAK, in Windows Server 2008. The details of it are squirreled away in the depths of the Technet Library under Windows\Windows Server\Windows Server 2008\Networking.

    It turns out, CMAK is a feature built into Windows Server 2008 - dead easy to install using Server Manager, and it can create profiles for Windows Vista and older operating systems.


    But I had to give it a try to see if it was possible to set the DNS suffix for a connection and ensure it was registered on the internal DNS servers when a VPN connection was established, thus ensuring Hyper-V Remote Management works correctly when on a VPN.

    Sure enough, then you get to the "Create or Modify a VPN Entry", there is an advanced tab where the three fields needed are present.


    Never having used CMAK before, I found it very easy to use, at least for a basic VPN configuration - no custom actions and so forth - those would have been a bit of overkill for a home setup. And did it work? Yup, perfectly :)



    John Howard - Hyper-V and virtualization blog : Connection Manager Administration Kit for Vista

    The World Simplified is a Virtual World : Microsoft Office Visio 2007 Professional Add-In for Rack Server Virtualization (Virtual Rack)


    Microsoft Office Visio 2007 Professional Add-In for Rack Server Virtualization (Virtual Rack)

    Duane Thomas a buddy of mine, pinged me a link to this darn cool add-in to Visio.

    This amazing Add-in from Microsoft Office Visio 2007 Professional helps you plan virtualization.
    With over 70% of server hardware being under-utilized, this very valuable tool can draw a clear picture of your hardware utilization. This tool auto-generates the diagram of your rack and provides clear server details from a linked Excel template. Analyze your racks and servers using WMI or get the utilization data over time using the Operations Manager connection.
    Use the virtualization button to see the before and after detailed diagram of your racks. See clearly where you have the opportunity to save on space and power.
    See the power of Data Visualization at work with this Add-in For Visio 2007

    Go and download this add-in from

    The World Simplified is a Virtual World : Microsoft Office Visio 2007 Professional Add-In for Rack Server Virtualization (Virtual Rack)

    Taylor Brown's Blog : New Hyper-V WMI Doc’s… Plus It’s Official I’ll Be Speaking at PDC… Plus Cluster Fix for Hyper-V…


    New Hyper-V WMI Doc’s… Plus It’s Official I’ll Be Speaking at PDC… Plus Cluster Fix for Hyper-V…

    Hyper-V WMI Documentation

    First off I am happy to say the Hyper-V WMI documentation is finally post beta quality!  I want to personally thank a few members of the test team for writing much of the sample code and working very hard to get it posted.  There are now samples in C# and VBScript for most of the common methods (sadly now Powershell so my crusade/purpose continues)…




    Hyper-V WMI Documentation

    Secondly…It’s official I will be babbling on about Hyper-V and Test Automation at PDC – pretty excited it should be fun.  Here’s a link to the Channel 9 page.

    Cluster Fix for Hyper-V

    Thirdly… The Cluster team has released a hotfix to add “Increased functionality and virtual machine control” to the cluster manager.  Here’s a link to the page

    Taylor Brown
    Hyper-V Integration Test Lead


    Taylor Brown's Blog : New Hyper-V WMI Doc’s… Plus It’s Official I’ll Be Speaking at PDC… Plus Cluster Fix for Hyper-V…

    My Own Security Rant - A Curmudgeon in Redmond


    E_ACCESSDENIED? Good. We did OUR job.

    One of the security groups at Microsoft used to have T-Shirts that said this; every time I saw one, my blood pressure went up. He's a story illustrating why:

    Scene: A home office, fall, 2003. Our hero has just bought a new Macintosh (probably OS 10.0 or 10.1) for his wife, and is trying to configure things such that it can access shares on the existing Windows Server 2000 machine. He's wearing out a path in the carpet between the Mac and the server.

    (At Mac): Access denied? I must have typed the password wrong. Let me try again. No luck.
    (At Server): Maybe I set the password wrong at this end. Let me reset it.
    (At Mac): Still no luck. I wonder if I have problems with the ACLs.
    (At Server). The ACL looks OK. Just to be sure, let's temporarily set it to full access for everyone.
    (At Mac). Still won't work.
    (At Server). Oh, there's an ACL on the share as well as the directory. Let's set it to full access for everyone, too.
    (At Mac). Still out of luck.

    Access Denied Dialog

    With a focused determination seen only in those afflicted with a touch of both ADD and autism, our hero flounders around, investigating every possible configuration option on both the Mac and the server. Whenever he finds some restriction that looks like it might possibly be relevant, he loosens it. Eventually, he stumbles across the Group Policy Editor on Windows, where he finds things with intriguing names like "Network Security: Minimum session security for NTLM SSP-based (including secure RPC) clients" and "Domain Member: Digitally encrypt secure channel data (when possible)". He messes around with these and other likely-looking settings, to no effect.

    After a while, he has a brainstorm: Maybe some of these setting changes don't take effect until I reboot, he thinks. So, he reboots, and voilà, things work!

    It's now 2:00 AM, and he's been at it four hours longer than intended. He decides to go to bed, and clean up the mess tomorrow.

    The next day, he can't remember which settings he changed, and has no clue as to which of them was the relevant one. (With his luck, there probably wasn't a relevant one, but two that were each necessary.) There's no way he's going to find out which settings were relevant. "Screw it. It works; leave it alone."

    There are two morals here:

    First, more security is often less. Microsoft has a nice "Secure by design, Secure by default, Secure by deployment" initiative. Unfortunately, the security that the user gets is not the security that you designed, not the security that you turned on by default, and not the security that you deployed. It's the security that's left standing after he makes everything work. If there are 50 security gates in your system, and the customer's desired workload needs to make it through three of them, the non-expert administrator is likely to turn off 40 of the 50 gates before he disables the three relevant ones.

    Second, it's important to realize that not every request that is denied by a security gate is in fact malicious. It sure would be nice if the system were to say "I rejected such-and-such a request for such-and-such a reason, and if you intend me to accept requests like this, you need to change the XYZ policy." Now, security experts will tell you that you shouldn't tell an attacker exactly why you rejected his request, and they're right. However, you should tell the system administrator, in case it wasn't really an attack, but someone trying to get legitimate work done.

    When I'm supreme dictator of the universe, anyone who writes code that returns E_ACCESSDENIED will be required to create an event log entry saying what software component did it, why, and what setting to change in what piece of UI if this wasn't the desired outcome.

    Postscript: I think it was the "Domain Controller: Digitally encrypt secure channel data (always)" policy, and I think it's because early versions of Mac OS X shipped with a version of SAMBA with a bug. But I'm not sure on either account.

    My Own Security Rant - A Curmudgeon in Redmond

    SQL Server Reporting Services Team Blog


    Report Builder 2.0 Release Plan Update

    With SQL Server 2008 RTM announced, we wanted to give you an update on the release plans for Report Builder 2.0. 

    Report Builder 2.0 will ship as part of the updated feature pack for SQL Server 2008 in fall of this year.  It will be, as it was in RC0, a web download only.  It will be available from the SQL Server feature pack download page.  At release, Report Builder will be available in 21 languages similar to the Reporting Services SharePoint Add-in.  The ClickOnce version of Report Builder 2.0 will not be supported in this timeframe and we are actively looking at releasing it as soon as possible after Report Builder 2.0 release. 

    An RC1 release will be made available, tentatively at the end of August.  This build will contain all of the final features for Report Builder 2.0 and will only be in English.  We’ll post a link as soon as it is available.

    As always, we look forward to your feedback on Report Builder.  Please provide feedback directly at:  Thank you.

    SQL Server Reporting Services Team Blog

    Sysinternals Site Discussion


    Updates: Process Monitor v1.37, Handle v3.41, Process Explorer v11.21, DebugView 4.75 | Mark's Events: Keynote speaker at Virtualization Congress

    Process Monitor v1.37: Process Monitor, a system monitoring utility, now prevents you from inadvertently closing the filter dialog without saving edits and fixes a subtle race condition bug in the driver.

    Handle v3.41: Handle, a command-line tool for dumping information on open operating system handles, adds a new switch, -l, that dumps the sizes of pagefile-backed sections.

    Process Explorer v11.21: This update fixes a race condition bug in the Process Explorer device driver.

    DebugView v4.75: DebugView v4.75, a debug output monitoring utility for developers, fixes a bug that caused it to crash when capturing very long debug strings when not forcing carriage returns and the driver is now compatible with the Driver Verifier.

    BgInfo v4.14: This update makes the /silent switch more aggressive about supprossing dialog boxes.

    Mark's Events: Mark to Keynote Virtualization Congress - Mark is going to deliver a keynote on Microsoft's virtualization strategy at the independent Virtualization Congress in London in October.

    Sysinternals Site Discussion

    IT Pro Momentum Program Blog : What is IT Pro Momentum and how can you join this Microsoft program?


    What is IT Pro Momentum and how can you join this Microsoft program?

    Published 08 August 08 10:48 PM | mbelinazo

    Need some help to test/pilot the latest Microsoft infrastructure technologies? IT Pro Momentum is a Microsoft Early Adopter Program for IT Professionals who bet on the newest technologies to drive business value for their companies and advance their career.

    Through IT Pro Momentum, you will be able to:

    · Discover and evaluate the newest MS technologies

    · Pilot and deploy MS beta products

    · Access MS Beta Product Support

    · Connect with an international community of IT Pros through Momentum forums

    · Share your experience adopting a new technology with the IT Pro community worldwide

    Here are some program benefits offered to Momentum participants (free of charge for one year):

    · Technical Content & Online Trainings

    · Support for Beta Products (via e-mail)

    · TechNet+ Direct Subscription

    · Early Adopter Forums

    · Through your local MS contact, you can share your experience with the IT Pro community worldwide (blogs, events, user groups, etc.)

    These are the technologies supported by IT Pro Momentum in 2008-2009:

    · Client Infrastructure: Vista SP1, IE8, Windows 7 (2009), Windows Mobile 7 (2009)

    · Server Infrastructure: Windows Server 2008, SQL Server 2008, Windows Server 7 (2009)

    · Virtualization: Hyper-V, System Center Virtual Machine Manager

    · Web Infrastructure: IIS7, Sharepoint on the Web

    · Collaboration & Connectivity: Office Communication Server 14 (2009), Exchange 14 (2009)

    · HPC: Windows HPC Server 2008

    If you are interested in piloting one or more of these technologies just send a message to

    We will be happy to work with you to determine the best way possible to support your early adoption efforts!


    Marcelo Belinazo

    IT Pro Momentum Program Blog : What is IT Pro Momentum and how can you join this Microsoft program?

    Saturday, August 9, 2008

    Microsoft SQL Server 2008 Feature Pack, August 2008



    Another great download resource, now that SQL Server 2008 is Released to Manufacturing! The Feature Pack is a collection of stand-alone install packages that provide additional value for SQL Server 2008. It includes the latest versions of:

    • Redistributable components for SQL Server 2008.
      • Microsoft SQL Server 2008 Command Line Utilities
      • SQL Server Compact 3.5 SP1
      • Microsoft Core XML Services (MSXML) 6.0
      • Microsoft SQL Server 2008 Management Objects
      • SQL Server Remote Blob Store
      • Microsoft SQL Server 2008 Native Client
      • Microsoft SQL Server 2008 Policies
      • Microsoft SQL Server System CLR Types
      • Microsoft Sync Framework
    • Add-on providers for SQL Server 2008.
      • Microsoft SQL Server 2008 Analysis Services 10.0 OLE DB Provider
      • Microsoft SQL Server Driver for PHP 7
      • Microsoft SQL Server 2005 JDBC Driver 1.2
      • Microsoft OLEDB Provider for DB2
      • Microsoft SQL Server 2008 Data Mining Add-ins for Microsoft Office 2007
      • Microsoft SQL Server 2008 Reporting Services Add-in for Microsoft SharePoint Technologies
    • Backward compatibility components for SQL Server 2008.
      • Microsoft SQL Server 2005 Backward Compatibility Components
      • Microsoft SQL Server 2008 Upgrade Advisor

    Download details: Microsoft SQL Server 2008 Feature Pack, August 2008

    Hovsep Karaguezian's Development Blog : Great Download! Microsoft SQL Server 2008 Feature Pack, August 2008

    Friday, August 8, 2008

    Eric White's Blog : Running an Executable and Collecting the Output


    Running an Executable and Collecting the Output

    Sometimes in the middle of a .NET application (either C# or VB) you want to run an executable and collect the output. This post presents a simple function (RunExecutable) that makes it easy to do this.

    I write a lot of documents that contain code. Many of those documents also contain the expected output from the code. When you have a very large document with many code snippets, it is useful to automate the testing of those snippets. It gives me a warm and fuzzy feeling to verify that all of the code in my document(s) is validated just before I publish. I’m going to use RunExecutable in an upcoming post that shows how to extract C# code from an Open XML document, compile it, run it, and validate that the output matches the output in the document. This is particularly useful to, say, authors writing programming books.

    But this code is useful in its own right.  Here is the code to run an executable, and collect the output:

    Code is attached.

    Attachment(s): RunExecutable.cs

    Eric White's Blog : Running an Executable and Collecting the Output

    Terminal Services Team Blog


    “Smart-Sizing” the TS Client

    Since the Windows XP timeframe, the TS Client has had the ability to run in “smart-sized” mode (users of Remote Assistance will be familiar with this mode). Smart-sized mode means that the entire remote desktop is always visible in the client window, with no scrollbars being necessary. In effect, for the same size client window, smart-sizing shows you more graphic data, while a non-smart-sized client window has to use scrollbars and shows much less.

    Smart-sized client view of a user’s desktop:


    Non-smart-size client view (with scrollbars) of the same desktop:


    You cannot enable smart-sizing through the TS Client UI, but you can switch it on using RDP file settings. Add the following line to Default.rdp (or any other custom RDP file that you use):

    smart sizing:i:1

    The next time you connect, your client view will be smart-sized.

    Terminal Services Team Blog

    SQL Server 2008 Jump Start


    This site contains presentations, recordings, hands-on labs and demonstrations for the SQL Server 2008 JumpStart technical training event.

    There are 5 tracks in this event:

    Overview Sessions

    Database Infrastructure and Scalability

    Business Intelligence Part I & II

    Developer & Software + Services

    Application Compatibility & Upgrade


    SQL Server 2008 JumpStart Home Page

    Thursday, August 7, 2008

    Microsoft Dynamics GP Technical Airlift Online Series


    Microsoft Dynamics GP Technical Airlift Online Series

    For those of you who were not able to attend the Microsoft Dynamics GP Technical Airlift Online or who would like a refresher, we have recorded them in an online series format on the Partner Learning Center. Please click on the links below to view the web seminar of interest to you.


    • Best Practices for Implementing Microsoft Office SharePoint Server with Microsoft Dynamics GP
      Attend this information-packed session for detailed instruction on how you can use Microsoft Office SharePoint Server (MOSS) to extend Microsoft Dynamics GP. You will learn tips and tricks for installing and configuring MOSS and discover how to set up search capabilities across your network. You will learn the attributes of setting up Business Data Web Parts and Custom Lists. You will see how to use the MOSS SDK to easily connect the Business Data Catalog (BDO) to other data sources and Web Services. You will see examples of how to build MOSS Dashboards using the Analysis Cubes and learn the steps necessary to implement these technologies, including Trusted Source and configuring the Office Data Connection. Finally, you will find out how to use MOSS to configure and edit workflows for Microsoft Dynamics GP and discover best implementation practices.
    • Bring Business Intelligence to Life with Microsoft Dynamics GP 10.0
      Obtain step-by-step instructions for effectively navigating, setting up, and utilizing key business intelligence tools, including the new Microsoft Excel report builder as well as the existing functionality of Microsoft Excel reports and data connections with Microsoft Dynamics GP 10.0. Find out how to deploy and configure Microsoft Dynamics GP 10.0 Report Packs with Microsoft SQL 2008 Reporting Services. Discover powerful tips, tricks, and best practices for designing reports and creating dashboards in Microsoft Office SharePoint Server (MOSS). Plus you’ll learn about important security considerations when setting up and using business intelligence tools.
    • Achieving Compliance Objectives with Microsoft Dynamics GP 10.0
      Get an in-depth understanding of key compliance considerations with Microsoft Dynamics GP 10.0, including the setup of important compliance features embedded into Microsoft Dynamics GP as well as audit trails and third-party toolsets required for a successful Microsoft Dynamics GP implementation. Compliance will be addressed from both the perspectives of IT risk and audit; as well as a discussion of common areas of compliance concern.
    • Configuring Business Portal
      Find out how to customize and extend Business Portal—including utilizing toolsets within Business Portal and Microsoft Office SharePoint Server—how to deploy and configure Business Portal, how to customize the layout, and how to use the new Security Synchronization Utility effectively.


    • Customizing the Microsoft Dynamics GP Client with Visual Studio Tools, Dexterity, and Modifier with VBA
      Get an in-depth analysis of the various client-side customization tools for Microsoft Dynamics GP, including Modifier with Visual Basic for Applications, Dexterity, and Visual Studio Tools for Microsoft Dynamics GP. This session will help you understand how each of the tools can be used to create user-interface customizations, as well helping you develop the ability to make sound decisions on the best tool for a particular purpose.
    • Integration Tools for Microsoft Dynamics GP
      Take part in this in-depth discussion dedicated to the integration tools available for Microsoft Dynamics GP, including comparing and contrasting reconnect, BizTalk, and Web Services. We’ll also dedicate ample time to reviewing best practices for building integrations.
    • Customizing and Extending Microsoft Dynamics GP Workflow
      This session will explore the contents of the Microsoft Dynamics GP Workflow SDK, and how the available tools can support developing new workflows as well as extending the existing out-of-the-box workflows for Microsoft Dynamics GP and MOSS. The components of workflow are discussed, including the server components, services, and assemblies that are used in the process. The process of creating a new workflow will be demonstrated using the sample available in the SDK. Additionally, the ability to extend the existing out-of-the-box workflows will also be explored using the SDK sample.
    • Developer Support Resources
      Discover all the self-help and assisted support options available to developers in building customizations and integrations. You’ll get an exclusive guided tour of the new MSDN Developer Center for Microsoft Dynamics GP and learn tips and tricks for navigating the many support resources and portals available from Microsoft.
    • Troubleshooting Your Developed Solution
      Do you know the vital development considerations necessary for effectively troubleshooting a packaged solution? Learn them and much more when you take part in this information-packed session. We will also discuss security and quality-control automation, including regression testing and testing tools. Plus we will highlight best practices, illustrate real-world examples, and provide and discuss requirements for the Certified for Microsoft Dynamics program.

    Published Thursday, July 31, 2008 5:21 PM by jeffk

    US Dynamics GP Field Team : Microsoft Dynamics GP Technical Airlift Online Series

    Wednesday, August 6, 2008

    System Center partner readiness training



    Here’s an exclusive.

    A new series of partner readiness training is coming next month. Starting with a series of training webcasts and moving to a partner bootcamp across the globe – this set of training will assist development, integration and deployment partners in their work with System Center products.

    I’ll post more details – including links – in the coming weeks.

    Martin Buckley - on systems management : System Center partner readiness training

    VisioAutoExt: Preparing for an new release and new some sample code


    VisioAutoExt: Preparing for an new release and new some sample code

    This week I'll be releasing a major update to the VisioAutoExt project (v4.0). In preparation for the release I will be documenting the usage of the library via a series of blog posts. This is the first one.

    First, what's in the library?

    This diagram was automatically drawn (and required no manual modifications) by a new tool in the VisioAutoExt solution called MakeAssemblyPoster.


    Saveen Reddy's blog : VisioAutoExt: Preparing for an new release and new some sample code

    Virtualization Solution Accelerators


    Here is a list of the different Virtualization Solution Accelerators we have at Microsoft:

    1. Microsoft Assessment and Planning Toolkit 3.1 for Hyper-V and App-V -
    2. Infrastructure Planning and Design Guides for Hyper-V, App-V and SCVMM 2008
    3. Offline Virtual Machine Servicing Tool
    4. Security Compliance Management Tool
    5. Windows Server 2008 Security Guide
    6. Microsoft Deployment Toolkit

    There will be some breakout sessions covering the Solution Accelerators at TechEd IT Professional

    [MSFT-BE] Arlindo's Blog - IT Pro Evangelist : Virtualization Solution Accelerators

    Tuesday, August 5, 2008

    Ian Palangio's Business Productivity : Corporate YouTube, PodCasting and VideoCasting


    Corporate YouTube, PodCasting and VideoCasting

    Some customers have recently asked me for my thoughts on how to host Video and Audio sharing leveraging SharePoint where it makes sense.  Please find my thoughts below – though I’d recommend that you definitely investigate the Podcasting Kit for SharePoint (PKS).  A PowerPoint summary of the solution features and how it is being used in organisations can be found from PKS Detailed Overview Slide Deck

    One of the big considerations would obviously have to be the impact on your network.  Some investigation/piloting/simulations would need to be researched to understand the impact of streaming/sharing video and audio in a broad way.

    Audio/Video files managed within SharePoint

    Internally here at Microsoft, we have a solution called Academy Mobile which allows any employee to upload and manage podcasts and videos.  It is a place where our executives place videos on a quarterly basis to give the state of the union type broadcasts to all employees, as well as used as a training vehicle when every somebody has a good idea they want to share broadly.


    The solution that we developed internally – has now also been released as an Free and Open Source solution available called the Podcasting Kit for SharePoint (PKS) from

    Mike Gannotti has posted a video of a 20 minute “tour” of Academy Mobile:

    You should be aware that Nintex also has a complementary solution to allow people to record and edit Podcasts to SharePoint using the browser.

    I also love the fact that at Microsoft we have an internal service that you can call a phone number, leave your podcast as a voice mail and include some publishing instructions.  Somebody will edit it, and publish it on the Academy Mobile site on your behalf.  This would be very executive friendly! :)

    Windows Media Services

    · Windows Server has capabilities – Windows Media Services – that assist with streaming live or on-demand audio and video content.

    · There is a useful technical article that describes how to stream files from a web server

    · If you need a further discussion to decide on the approach to stream or download files – there is a whitepaper that talks about which one is more efficient with bandwidth, higher quality, supporting large number of users etc.

    · If you decide to publish videos with Windows Media Services you can still embed that content into everyday SharePoint sites with the simple Content Editor Web Part.  Mike Gannotti has blogged about how to configure the web part to link to the streamed file:

    Addition bits and pieces

    Some technical approaches (ie write code) to including Windows Media Player into a SharePoint Page

    Useful tools to record audio and computer screens (very useful for training clips – like how to do <something> on The Point)

    Posted: Tuesday, August 05, 2008 2:45 AM by ianpal

    Ian Palangio's Business Productivity : Corporate YouTube, PodCasting and VideoCasting

    How to read the small memory dump files that Windows creates for debugging


    How to read the small memory dump files that Windows creates for debugging


    Article ID: 315263

    Last Review: December 3, 2007

    Revision: 4.5

    This article was previously published under Q315263


    This step-by-step article describes how to examine a small memory dump file. You can use this file to determine why your computer has stopped responding.

    Small memory dump files

    A small memory dump file records the smallest set of useful information that may help identify why your computer has stopped unexpectedly. This option requires a paging file of at least 2 megabytes (MB) on the boot volume. On computers that are running Microsoft Windows 2000 or later, Windows create a new file every time your computer stops unexpectedly. A history of these files is stored in a folder.
    This dump file type includes the following information:
    • The Stop message and its parameters and other data
    • A list of loaded drivers
    • The processor context (PRCB) for the processor that stopped
    • The process information and kernel context (EPROCESS) for the process that stopped
    • The process information and kernel context (ETHREAD) for the thread that stopped
    • The Kernel-mode call stack for the thread that stopped

    The small memory dump file can be useful when hard disk space is limited. However, because of the limited information that is included, errors that were not directly caused by the thread that was running at the time of the problem may not be discovered by an analysis of this file.
    If a second problem occurs and if Windows creates a second small memory dump file, Windows preserves the previous file. Windows gives each file a distinct, date-encoded file name. For example, Mini022900-01.dmp is the first memory dump file that was generated on February 29, 2000. Windows keeps a list of all the small memory dump files in the %SystemRoot%\Minidump folder.

    Follow link for complete KB Article on how to view the Minidump files.

    How to read the small memory dump files that Windows creates for debugging

    Sunday, August 3, 2008

    SQL Server 2008 Training Opportunities


    SQL Server 2008 Training Opportunities

    Hi All,

    Here is  a listing of FREE training opportunities for SQL 2008. Before going into the training details I wanted to make sure that you are aware of this upcoming SQL event, PASS Community Summit 2008, early bird registration is in progress.

    PASS Community Summit 2008


    Overview Demo

    Virtual Labs

    Test drive Microsoft SQL Server 2008 and see how it can provide a scalable, high-performance database engine for mission-critical applications that require the highest levels of availability and security. Virtual labs are simple with no complex setup or installation required. You get a downloadable manual and a 90-minute block of time for each module.

    TechNet Virtual Lab: Authoring Reports Using SQL Server 2008 Reporting Services

    TechNet Virtual Lab: Data Mining with SQL Server 2008

    TechNet Virtual Lab: Implementing Change Data Capture (CDC) in SQL Server 2008

    TechNet Virtual Lab: Learn How to Build Occasionally Connected Applications with SQL Server 2008

    TechNet Virtual Lab: Partition Processing for DW

    TechNet Virtual Lab: Plan Freezing with SQL Server 2008

    TechNet Virtual Lab: SQL Server 2008 Analysis Services: Delivering Analysis Services capabilities through Microsoft Office

    TechNet Virtual Lab: SQL Server 2008 Policy-Based Management

    TechNet Virtual Lab: SQL Server 2008 Reporting Services: Managing the Report Services Infrastructure

    TechNet Virtual Lab: SQL Server Analysis Services: Build and Extending Analysis Services Solutions

    TechNet Virtual Lab: SQL Server Analysis Services: Managing Analysis Services Solutions

    TechNet Virtual Lab: Using Performance Studio in SQL Server 2008

    TechNet Virtual Lab: Using SQL Server 2008 Resource Governor for Predictable Performance

    TechNet Virtual Lab: What's new in SQL Server 2008 for Database Administrators

    TechNet Virtual Lab: Working with the new DATE data type in SQL Server 2008

    Webcasts: Live and On-Demand

    Watch a webcast and get ready for the next release of Microsoft SQL Server. Tune in and see how SQL Server 2008 allows you to manage, monitor, secure, and optimize consolidated data systems effectively. We show you how to consolidate servers with multiple databases, consolidate data services through virtualization, and migrate databases easily. Also, learn how SQL Server 2008 provides a scalable infrastructure that can manage reports and analysis of any size and complexity, while making it easier for your users to access information.

    · 24 Hours of SQL Server 2008:

    · Business Intelligence (BI):

    · Data Warehousing:

    · Mission-Critical Applications for Online Transaction Processing (OLTP):


    Learn more about Microsoft SQL Server 2008 whenever and wherever you want. Stream or download these audio podcasts on to your favorite podcast software or mobile device, and quickly and easily access content with RSS feeds. These podcasts are free and do not require registration—just click, listen, and learn.

    TechNet Radio: A Look Inside SQL CAT (Customer Advisory Team)

    Original Air Date: March 25, 2008

    WMA (8MB) | MP3 (11MB)

    TechNet Radio: SQL Server 2008 (Part 1 of 2): Security and Availability

    Original Air Date: March 4, 2008

    WMA (6MB) | MP3 (9MB)

    TechNet Radio: SQL Server 2008 Part 2 of 2: Management, Troubleshooting and Throttling

    Original Air Date: March 11, 2008

    WMA (9MB) | MP3 (13MB)

    More podcasts here



    Free e-book: Introducing SQL Server 2008

    Free e-learning offers

    Collection 6187: What's New in Microsoft SQL Server 2008 (includes three free clinics):

    Clinic 6188: What's New in Microsoft SQL Server 2008 for Enterprise Data Platform

    Clinic 6189: What's New in Microsoft SQL Server 2008 for Business Intelligence

    Clinic 6190: What's New in Microsoft SQL Server 2008 for Database Development

    Clinic 6258 AE: New Features of Microsoft SQL Server 2008 Reporting Services. This clinic provides a quick preview to developers, administrators, and users the key benefits of Microsoft SQL Server 2008 Reporting Services and features of Reporting Services in Microsoft SQL Server 2008.


    Nick MacKechnie : SQL Server 2008 Training Opportunities

    CLI301: The Case of the Unexplained…

    CLI301: The Case of the Unexplained…

    TechEd Presentation by Mark Russinovich


    Decent 75 Minute introduction to troubleshooting using SysInternals tools and windbg


    Active Directory Migration Tool version 3.1

    Active Directory Migration Tool version 3.1

    Brief Description

    The Active Directory Migration Tool version 3.1 (ADMT v3.1) provides an integrated toolset to facilitate migration and restructuring tasks in an Active Directory Domain Services infrastructure.

    Quick Details

    File Name: admtsetup31.exe

    Version: 3.1

    Date Published: 7/9/2008

    Language: English

    Download Size: 59.4 MB


    The Active Directory Migration Tool version 3.1 (ADMT v3.1) simplifies the process of migrating objects and restructuring tasks in an Active Directory® Domain Service (AD DS) environment. You can use ADMT v3.1 to migrate users, groups, and computers between AD DS domains in different forests (inter-forest migration) or between AD DS domains in the same forest (intra-forest migration). ADMT can also perform security translation (to migrate local user profiles) when performing inter-forest migrations.

    System Requirements

    • Supported Operating Systems: Windows Server 2008
    • ADMT can be installed on any computer capable of running the Windows Server 2008 operating system, unless they are Read-Only domain controllers or in a Server Core configuration.
    • Target domain: The target domain must be running either Windows 2000 Server or Windows Server 2003 or Windows Server 2008
    • Source domain: The source domain must be running Windows 2000 Server, Windows Server 2003, or Windows Server 2008
    • The ADMT agent, installed by ADMT on computers in the source domains, can operate on computers running Windows 2000 Professional, Windows 2000 Server, Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008.

    Saturday, August 2, 2008

    SSRS integration with SharePoint

    Better late than never - A PG site for SSRS integration with SharePoint

    I am aware and painfully so that a PG blog / site dedicated to SSRS integration with SharePoint has been long overdue. Hence, for my initial post I have compiled a short list of some unanswered questions I have seen from blogs / newgroups etc. on this subject. Feel free to send me your issues / thoughts on RS integration with SharePoint and I will try as best to answer / address them and post new blogs as and when required. I hope you find this helpful.

    1. Is it possible to integrate SQL Server Reporting Services with WSS3 not MOSS ? Additionally, Is it possible to run Sharepoint Services and SQL Reporting Service on Windows 2003 X64?
      Yes it supports both WSS 3.0 and MOSS 2007. Additionally it is supported on x86 and x64. For details refer to Requirements for Running Reporting Services in SharePoint Integrated Mode
    2. Does RS integrate with a SharePoint WFE using Forms or Basic Authentication?
      Yes, it does. Make sure you install Forms auth hotfix 939942 and the Basic auth hotfix 50001712 for the RS 2005 SP2 Add-in for SharePoint.
    3. Does Reporting Services support Alternate Access Mappings (AAM)? If not, then what are the alternatives?
      Reporting services only supports access via the default zone in AAM. You will get an error along the lines  "The specified path refers to a SharePoint zone that is not supported" if you try to access a report from a non-efault zone. You can consider a workaround wherein multiple “Internal URLs” (Internet, intranet, etc.) for the same web application use a single “Public URL for Zone” all in the AAM default zone. Full AAM support is being considered for the next version post-SSRS 2008.
    4. Is there support for Reporting against SharePoint lists?
      SSRS does not natively ship a SharePoint Lists data extension as yet. Here are option that may want to consider:
      • Using the out-of-the XML data extension to read and wrtie to a SharePoint via the GetListItems and SetListItems methods of the SharePoint List web service. I have attached a TicTacToe.rdl report that I demo'd @ TechEd / TechReady. This report reads from and writes to a SharePoint list by the name oif TicTacToe.  
      • Other third-party solutions like Enesys RS data extension
      • Develop a custom solution such as this blog from Teun Duynstee.
    5. How do I fix the "User cannot be found" error?
      This is a bug in wherein if the author /creator / publisher of a report is deleted from the site in which the report resides. Possible workarounds can be found in "User Cannot be found" RS Forum thread. We are working on releasing a hotfix #50003017 with the upcoming SQL 2005 SP2 CU to fix this issue.
    6. Which authentication modes should I use - Windows Integrated or trusted account?
      Only use Windows Integrated for Kerberos enabled environments and in single-box deployment scenarios. For the rest use Trusted Account mode. In the scenario wherein you are having trouble setting-up Kerberos you should consider using Trusted account mode to at least setup and verify RS integration with SharePoint works. Once you have fixed your Kerberos issues then you can choose to switch to using Windows integrated.
    7. How do I fix the error message "The report server cannot access settings in the Sharepoint configuration database.  Most likely, the Windows Sharepoint Services object model is not installed..."?
      This is generally noticed in a multi-machine scenario when SharePoint WFE and RS are on separate machines. Make sure you install the minimum SharePoint install on the SSRS machine. For details refer to How to: Configure SharePoint Integration on Multiple Servers
    8. Is Reporting Services Integration with SharePoint supported on SQL Server Express SKUs?
      No it is only supported on Standard and higher SQL SKUs. There are no plans to include it is Express SKUs. For the details refer to the SSRS feature matrix.
    9. I am trying to get this working on a domain controller and the "grant database access" step always fails with "A new member could not be added to a local group because the member has the wrong account type"?
      Make sure your Report Server services accounts are domain accounts on a DC, else you will get this error when try to to add them to the local WSS_WPG group.
    10. I have a MOSS 2007 site set up on "localhost" and RS 05 is running in native mode.How can I view the reports in sharepoint webparts on the site?
    11. How to publish to SharePoint document library via Report Designer? 
      Make sure you have SQL 2005 SP2 BIDS when deploying to SSRS 2005 SP2 and the following project properties set to absolute paths:
      TargetDataSourceFolder http://<SharePoint_site>/<SharePoint_Doclib>
      TargetReportFolder http://<SharePoint_site>/<SharePoint_Doclib>
      TargetServerURL: http://<SharePoint_site>
      If you have issues deploying to a SharePoint site that uses Forms Authentication mode then consider posting directly to the Report Server by changing TargetServerURL to:
      TargetServerURL: :/http://<server_name>:<port>/<ReportServer_VDIR>
      For details refer to How to: Publish a Report to a SharePoint Library from Report Designer
    12. What do I do when I get "User does not have permission to add feature to site collection" when installing the RS Add-in for SharePoint msi?
      Locate the installation log created by the RS Add-in msi in the Temp folder - <Drive>:\Documents and Settings\<user_name>\Local Settings\Temp\RS_SP_<number>.log file. Next you should be able to locate log entries along the lines:  
      Activating feature to root site collection: <sharepoint_site_collection>
      ******* User does not have permission to add feature to site collection: <sharepoint_site_collection>
      This means that the RS integration feature was installed however the feature may not be activated for the <sharepoint_site_collection>, because the user who ran the msi wasn't a site collection admin. In order to view the RS integration feature in the site you need the site colection administrator to activate the Report Server feature
    13. When I try to access a report thru the MOSS Site I get an internal catalog exception near GetSystemPropertiesAction() but it works just fine when I access it directly from the report server URL?
      This is may happen when there are multiple Central Administration sites in a SharePoint Farm. Verify this by checking whether you see multiple URLs for “Central Administration” Alternate Access Mappings Collection under Central Administration -> Operations -> Alternate Access Mappings. If this is the case, then browse to the Report Server URL directly and determine the http://<server_name>/ in the SharePoint sites listed. Ensure the URL containing this <server_Name> is first in the list of URLs for the "Central Administration" group under Central Administration -> Operations -> Alternate Access Mappings. This issue has been fixed in SSRS 2008 RC0.
    14. What are some newer whitepapers related with RS integration?

      SQL Server 2005 Integration with Microsoft SharePoint Products and Technologies

      Troubleshooting Integration with SQL Server 2005 and Microsoft SharePoint Technologies


    Blog Archive