Updating Integration Components over Windows Update

Virtual PC Guy's WebLog - Wed, 11/12/2014 - 16:00

Yesterday, we announced that we would be releasing updated integration components over Windows Update from now on in (more details here:

Specifically, we announced that if you are running Windows Technical Preview (server or desktop) and you have virtual machines running:

  • Windows Server 2012
  • Windows Server 2008 R2
  • Windows 8
  • Windows 7

Updated integration components would be coming through Windows Update – instead of through our old “Install Integration Services” mechanism.  I wanted to play with this myself and see what it looks like.

I setup a clean installation of Windows 7 SP1 inside a virtual machine on my Windows 10 Technical Preview build (running the 9860 build) and ran Windows Update:

Looking through the list of Important Updates, I found KB3004908, which is the update in question.   I let Windows Update do its thing – and soon I had the latest integration components running.  Using PowerShell in the host – I was able to confirm that they were updated.  Here is the before and after view:

Moving forward – this is how we will be releasing all updates for integration components, which should make it a lot easier for everyone to manage and track.


Categories: MDT

Coretech System Center Dashboard

Coretech Blog » Kent Agerlund - Wed, 11/12/2014 - 09:16
I’m proud to announce our System Center dashboard with the Configuration Manager 2012 connector. What is the dashboard Coretech’s System Center dashboard with the Configuration Manager 2012 connector enables enterprise client management administrators to make the right decisions at the right time. The dashboard can provide status on deployments, compliance, mobile devices and client health. […]
Categories: MDT

Nice to Know – Yes, it is possible to copy items between to Task Sequences as well as copy items between 2 different deployment shares

The Deployment Bunny - Tue, 11/11/2014 - 10:00

This is NOT a new feature, I cant even remember how long this has been working, but this morning I saw a Tweet when someone was happy about the possibility to copy items between deployment shares in MDT, so for thoose that knows all this, you do not need to read more, for the rest of you.

Yes, you can copy items between Task Sequences

(it also works copy items within a Task Sequence)

This works in both MDT as well as in ConfigMgr.

Yes, you can copy items between Deployment Shares (Only for MDT, Lite Touch)

In this case I have 3 deployment shares in the Deployment Workbench and it is possible to copy all kind of items between these 3 deployment shares

Let us copy some application from one deployment share to another.

Select Application, right click and select Copy.

Browse to new location, right-click, select Paste.

The application has been copied to the new deployment share.


Categories: MDT

Troubleshooting Certificate deployment on iOS devices with ConfigMgr & Intune

Coretech Blog » Kent Agerlund - Tue, 11/11/2014 - 09:29
Last week I had an issue trying to enroll certificates thru ConfigMgr/Intune via NDES on iOS devices. The enrollment worked like a charm on Windows Phone 8.1 devices. The error I got in the crp.log file (Certificate Reqistration Point component) was key usage in CSR 160 and challenge 224 do not match To fix the […]
Categories: MDT

OSD – Using PowerShell Commands in UserExit VB script to extend the ZTIGather process during OSD

The Deployment Bunny - Mon, 11/10/2014 - 23:18

During todays session I realized that I have done a lot of OSD stuff, but never published it (shame on me), so time to work. First up is how to run PowerShell CommandLets inside a UserExit script. A UserExit script is an extension to the ZTIGather process, giving you the opportunity to extend the gather process with information that the Gather process does not cover. That has been possible for a long time, but VBscript is not really the easiest script language in the world, so I asked my self if it would be possible to use PowerShell inside the VBscript and of course it is!

The idea

The basic idea is to run the UserExit script from customsettings.ini as usual and then do a jump out into PowerShell, execute the PowerShell CMDLets, terminate and return the value into the VBscript, which then will be a value connected to a Custom Property in the gather process, which then can be consumed by customsettings.ini and/or the task sequence. you can download everything from here:

How-To The Boot Image

The boot image must have support for PowerShell and you can get that by adding .NET and PowerShell

Lite Touch.

Zero Touch.

The Customsettings.ini file

The customsettings.ini file will direct ZTIGather to process the section called UserExits, which will execute the UserExit.vbs script, call the function called RunningPSCommand and return the value from that function into the property called PSCommand.

This is a sample of how the customsettings.ini file should look like to call the UserExit script.

The UserExit Script that runs PowerShell commands

The script is rather simple, basically the PowerShell command is a string, executed by PowerShell.exe and using Executor.StdIn.Close to close the window and then using Executor.StdOut.ReadAll to grab whatever you have in the window and put that in the RunningPSCommand, which then is returned back to the ZTIGather process as a value for the Property RunningPSCommand.

The result of running the ZTIGather

As you can see the PowerShell command was running and returned the value “Virtual Machine” and now the Property PSCommand is equal to Virtual Machine and can be used elsewhere in CustomSettings.ini or in the Task Sequence


Categories: MDT

Coretech Automated Software Update Management–CASUM

Coretech Blog » Kent Agerlund - Sat, 11/08/2014 - 12:11
We love to automate and spend time on interesting tasks – If you are like us, why not use our latest tool CASUM and get done with Patch Tuesday in 10 seconds. Now I got your attention you are wondering, what tool? and from where can I download it? Guess what…you have to wait until […]
Categories: MDT

OSD – Static IP Address does not work in Lite Touch using Offline Media

The Deployment Bunny - Fri, 11/07/2014 - 11:59

During a project Johan and was working a while ago, we used Offline Media and we had a problem to set a static IP Address during OSD. After digging Johan found the issue and here is the solution.


Categories: MDT

CentOS 7 and OpenVPN 2.3.5 (Routed) - Wed, 11/05/2014 - 05:08
Decided to setup a openvpn server on a new CentOS 7 box and it was not exactly straight forward so below are the steps required, this should be enough to get started On a (minimal) centOS 7 box: if using a seperate server for as the VPN server: On VPN Server: (if needed use –zone= […]
Categories: MDT

Nice to Know – Improve Bare Metal Deployment success rate in System Center Virtual Machine Manager

The Deployment Bunny - Tue, 11/04/2014 - 21:33

Bare Metal Deployment in SCVMM is a bit different compared to everything else, since it is using a push method. So instead of having some kind of client application controlling the deployment, the SCVMM server is controlling the OS Deployment. There could be issues, since SCVMM is building team and switches and there is a chance that SCVMM will loose connectivity to the host and the Bare Metal Deployment stops. In many case that is related to DNS and DNS cache, since that is the method used to be able to connect to the host during deployment. By decreasing the DNS cache timeout on the SCVMM server the success rate will improve very, very much.

How to fix it?

Logon to your SCVMM server and execute the following PowerShell commands to set the DNS Cache to a minimum and restart the DNS Cache services

New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters" -Name "MaxCacheTtl" -Value 5 -PropertyType "DWORD" -Force New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters" -Name "MaxNegativeCacheTtl" -Value 5 -PropertyType "DWORD" -Force Restart-Service -Name Dnscache -Force -Verbose


Categories: MDT

Windows 10 Technical Preview: Hot Add / Remove of Network Adapter

Virtual PC Guy's WebLog - Tue, 11/04/2014 - 01:37

There are a number of new features and functionality for Hyper-V in the Windows 10 Technical Preview.

One of these features is that you can now add and remove network adapters from running virtual machines.  Specifically – you can add and remove network adapters (not Legacy network adapters) from Generation 2 virtual machines.

You can do this with any supported guest operating system.


Categories: MDT

Configuring Source Download During Client Install

Steve Rachui's Manageability blog - Mon, 11/03/2014 - 00:42
A question came up recently about why download errors were being seen during client install. I’ve seen a few questions around this so thought I would provide a bit of detail on how this works and options that will allow the administrator to choose how...(read more)
Categories: MDT

PowerShell is King – Testing OS Deployment Web Services using PowerShell

The Deployment Bunny - Sun, 11/02/2014 - 17:27

Recently I was setting up Maik Kosters OS Deployment Web Services for a customer and I need to test them, sure, you can do that interactively directly by running them, but I wanted the “PowerShell” way to do it.

You can get the Web Services from Maik Koster here:

Testing a Web Services the Non PowerShell Way.

Browsing to the Web Services

Select the DoesComputerExists

Type in a value and Invoke.

Testing a Web Services the PowerShell Way.

Since PowerShell has the function built-in it is very much a no-brainer.

To connect and get all members from the Web Services execute this:

$ADWebS = New-WebServiceProxy -Uri http://MDT01/OSD/ad.asmx?WSDL $ADWebS | Get-Member -Type Method

That will give you something like this back

To connect and get one member with some detail execute this:

$ADWebS = New-WebServiceProxy -Uri http://MDT01/OSD/ad.asmx?WSDL $ADWebS | Get-Member -Name DoesComputerExist -Type Method | Format-List

That will give you something like this back

So, to test the DoesComputerExists with a value you can now execute the following:

$CompuerNameToTest = "MDT01" $ADWebS = New-WebServiceProxy -Uri http://MDT01/OSD/ad.asmx?WSDL $ComputerExistsInAd = $ADWebS.DoesComputerExist("$CompuerNameToTest") Write-Host "The Computer $CompuerNameToTest exists in Active Directory: $ComputerExistsInAd"

So if the Computer Exists in Active Directory you should get something like this back


Categories: MDT

TechEd EU 2014 – WIN-B314

The Deployment Bunny - Sun, 11/02/2014 - 16:42

During the session I did demo some scripts and here they are:

Script to configure the Build LAB Deployment share: Import-Module "C:\Program Files\Microsoft Deployment Toolkit\bin\MicrosoftDeploymentToolkit.psd1" New-PSDrive -Name "DS001" -PSProvider MDTProvider -Root "E:\MDTBuildLab" #Set permisions correct net share E:\MDTBuildLab '/grant:EVERYONE,change' icacls E:\MDTBuildLab\Captures /grant '"MDT_BA":(OI)(CI)(M)' icacls E:\MDTBuildLab\Logs /grant '"MDT_BA":(OI)(CI)(M)' #Create the folder structure new-item -path "DS001:\Applications" -enable "True" -Name "Install" -Comments "" -ItemType "folder" -Verbose new-item -path "DS001:\Applications" -enable "True" -Name "Action" -Comments "" -ItemType "folder" -Verbose new-item -path "DS001:\Operating Systems" -enable "True" -Name "Windows 8.1 x64" -Comments "" -ItemType "folder" -Verbose new-item -path "DS001:\Task Sequences" -enable "True" -Name "Ref" -Comments "" -ItemType "folder" -Verbose #Import the OS import-mdtoperatingsystem ´ -path "DS001:\Operating Systems\Windows 8.1 x64" ´ -SourcePath "G:\Raw\Windows 8.1 x64" ´ -DestinationFolder "W81X64-001" ´ -Verbose #Create the Task Sequence import-mdttasksequence ´ -path "DS001:\Task Sequences\Ref" ´ -Name "Ref Windows 8.1 x64 Enterprise" ´ -Template "Client.xml" -Comments "" ´ -ID "RW81X64" -Version "1.0" ´ -OperatingSystemPath "DS001:\Operating Systems\Windows 8.1 x64\Windows 8.1 Enterprise in W81X64-001 install.wim" ´ -FullName "ViaMonstra" ´ -OrgName "ViaMonstra" ´ -HomePage "about:blank" ´ -Verbose Set-ItemProperty -Path DS001: -Name Boot.x86.LiteTouchWIMDescription -Value 'MDT Build Lab x86' Set-ItemProperty -Path DS001: -Name Boot.x86.LiteTouchISOName -Value 'MDT Build Lab x86.iso' Set-ItemProperty -Path DS001: -Name Boot.x64.LiteTouchWIMDescription -Value 'MDT Build Lab x64' Set-ItemProperty -Path DS001: -Name Boot.x64.LiteTouchISOName -Value 'MDT Build Lab x64.iso' Set-ItemProperty -Path DS001: -Name SupportX86 -Value 'False' Script to bulk import applications

Wrapper for C++

Script to download all C++

Sample Custom Settings.ini


Categories: MDT

Getting Ready for TechED Europe 2014

Virtual PC Guy's WebLog - Tue, 10/21/2014 - 18:14

Next week I will be in Barcelona, talking about all the cool stuff we are doing with virtualization in the next release of Windows Server.  Here are my session details:

Title: CDP-B225 Software Defined Compute in the Next Release of Windows Server Hyper-V
Time: Tuesday, October 28 1:30 PM - 2:45 PM Room: Hall 8.0 Room E1
Description: Join us for a bird's-eye view of software defined compute as we enter the next release of Windows Server. See how Microsoft envisions using Hyper-V as it relates to our overarching vision of software defined compute.

Title: CDP-B246 Sneak Peek into the Next Release of Windows Server Hyper-V
Time: Wednesday, October 29 8:30 AM - 9:45 AM Room: Hall 8.0 Room B4
Description: The technical preview for the next release of Windows Server has been released, but what can you do with it? Why do you care? Come to this session to get the nitty gritty details of all the new stuff that is in Hyper-V; learn about how you can play with it “hands on” today; and gain insight into where we are heading.

I will also be spending a lot of time on the tradeshow floor chatting to people.  So if you are going to TechED Europe this year – be sure to come by and say hello!


Categories: MDT

Big News Day for Microsoft Cloud

Virtual PC Guy's WebLog - Tue, 10/21/2014 - 00:24

This morning Satya and Scott presented on Microsoft’s strategy for cloud.  If you missed it you can watch the recording here:

You can also read more about the announcements that were made at the following locations:

Exciting times!


Categories: MDT

AoE: Castle Siege - Connection Error

Virtual PC Guy's WebLog - Sat, 10/18/2014 - 01:31

[Warning! This blog post is nothing to do with Hyper-V or virtualization.  It is Friday night and I am playing computer games!]

It has been a long busy week of working on Hyper-V – and now it is time for me to unwind.  After playing a couple of games I decided to try out the recently released “Age of Empires: Castle Siege” only to be presented with this:

What?  Well – that would be because I run an enterprise grade firewall in my house (I mean, who doesn’t?).  A quick journey through the firewall logs showed that it was trying to reach – and my firewall was dutifully blocking this.

My immediate fix was to just allow access on these ports – but that did not actually work.  The reason was that my firewall was actually able to detect that this was actually SSL traffic running over an odd port – and was quite upset about that.

A moment later – I had my SSL definition updated to allow ports 8443 and 8444 (outbound only) and everything is good.  Now, off to build an empire…


Categories: MDT

Flashback Friday–Play your strongest hand…

Virtual PC Guy's WebLog - Fri, 10/17/2014 - 12:11

Last weekend I was looking for a deck of cards, and I discovered this deck in one of my desk drawers:

Virtual Server 2005 R2 and Windows Server 2003 R2 – Play your strongest hand.  How things have changed since then, it is amazing to think about the innovation and change in server virtualization over the last decade.


Categories: MDT

“The RPC server is unavailable” with Microsoft Virtual Machine Converter

Virtual PC Guy's WebLog - Thu, 10/16/2014 - 15:13

When I first tried to perform a physical to virtual migration with the Microsoft Virtual Machine Converter 3.0 – I immediately hit this error message:

After a bit of poking around, I was able to figure out the problem.  Microsoft Virtual Machine Converter use WMI, which is blocked on the Windows Firewall by default.  Once I had allowed WMI through:

Everything started working.


Categories: MDT

TechDays Sweden 19-20/11 – Den nya generationens datacenter

The Deployment Bunny - Wed, 10/15/2014 - 20:11

(in Swedish)

Den 18 november, d.v.s. en dag INNAN TechDays öppnar portarna för årets Microsoft konferens I Sverige kommer jag och Markus Lassfolk att köra en hel dag kring frågan hur man bygger datacenter numera. Design kommer i huvudsak röra det som kallas converged och innehållet för dagen kommer att handla om

Hyper-V, design, best pratices, nätverk, VMQ, RSS, RDMA, CPU, Minne, IOPS, Storage Spaces, Scale-Out Files server, NVGRE networks, Gateway och mycket, mycket mer. Ska du bygga, håller du på att bygga, ska du kasta ut VMware och vill veta från oss som gör det på löpande band. Kom…


Categories: MDT

Microsoft Virtual Machine Converter 3.0 Now Available

Virtual PC Guy's WebLog - Wed, 10/15/2014 - 02:47

Yesterday we released the Microsoft Virtual Machine Converter 3.0.  You can download it here:

It has a staggering amount of features.  Including the ability to convert physical computers to virtual machines and to convert VMware virtual machines to Hyper-V virtual machines online and offline.


Categories: MDT