Tuesday, 2 June 2015

MVPDays is Back! 9 Canadian Microsoft MVP's to Present Content!!! (and counting)

MVPDays is a community roadshow for Canadians that was co-founded in 2014 by Dave and Cristal Kawula of Tricon Elite consulting to give the Microsoft IT PRO community an in person event that they could attend and get real world advice from recognized experts in the field. This year is the second year for MVPDays and the event is confirmed for Vancouver, Calgary and Edmonton. The content offered will feature Cloud, IT Pro and Black Belt tracks including sessions that cover and assortment of technologies. Expect to see sessions on hyper converged infrastructure, hypervisors, Windows Server, SharePoint, System Center, PowerShell, Microsoft Azure and other cloud technologies.


Interested? Go to www.mvpdays.com and register for one of the locations nearest you. Also if you register in the month of June you can use the promo code earlybird15 for free registration. Yes, we have to wait until the fall for MVP days but feel free to register and join the discussion on the Facebook site https://www.facebook.com/mvpdays or Twitter at #CDNMVPDAYS.

Monday, 23 March 2015

Confirmed App-V 5.0 SP3 Masters Class LAX May 11-15, 2015

For those of you watching the schedule the LA class for GridmasterTraining's App-V 5.0 SP3 course has been 100% confirmed to run. The course will be taking place at the Best Western Course held at the Best Western Carriage Inn, 5525 Sepulveda Boulevard, Sherman Oaks, CA. The course will run May 11-15 and is a full five day run of our masters level courseware for Microsoft App-V. More details of this event can be found using the following link.

http://www.tmurgent.com/appv/index.php/component/content/article/107-trainingappvclass/325-2015-may-app-v-public-class-kk

For other class options and more information about the training course visit www.gridmastertraining.com.

Monday, 16 March 2015

Briforum 2015 USA!

Well it's another year and we've decided to throw our names in the hat for speaking at this year's Briforum USA. This year, Nike Kallen and I will focus in more depth the management challenges that some customers are facing with one of the largest and most popular management platforms known as System Center Configuration Manager.

As with the spirit of Briforum the conversation is meant to be candid and we hope that we can shed some light to real world Configuration Manager scenarios we get tapped to solution such as integrating with Remote Desktop Session Hosts. It is not that we are unimpressed with the change from packages and programs but we do believe we are still dealing with more of a 1.0 version of the application model and some of the previous challenges with Configuration Manager 2007 did not go away.

We are not the only ones that want to discuss challenges in the real world, the session list has been out for a few days and if these sessions catch your eye.
http://www.brianmadden.com/blogs/gabeknuth/archive/2015/03/09/check-out-the-list-of-sessions-for-briforum-denver-2015-july-20-22.aspx

I've found the community to be good and this one of the few times I get to sit down with some very exceptional people and talk tech. If you are interested in making it out but not near North America there is also one in London as well. To check out both events go to www.briforum.com.

Monday, 5 January 2015

Microsoft Virtual Academy

I thought I would post a note over here. I did a quick piece on some of the new courses in the Microsoft Virtual Academy that you can take at your own pace online. I've gone through some of the courses and actually was surprised by the quality so I'm encouraging people to take a look at the course list I've compiled.

http://myitforum.com/myitforumwp/2015/01/05/microsoft-virtual-academy-then-and-now/


Wednesday, 12 November 2014

Configuration Manager 2012: Query for Machines without Client and Show Last Machine Logon Time with Operating System

The title is a mouthful but this is a quick way to get a list of machines that may be potential clients. This query assumes that Active Directory system discovery is enabled with the default attributes.

select SMS_R_System.Name, SMS_R_System.LastLogonTimestamp, SMS_R_System.OperatingSystemNameandVersion from  SMS_R_System where SMS_R_System.Client = "0"

Tuesday, 14 October 2014

PowerShell: Export Computer Accounts with Last Account Password Change

When looking for machines sometimes it is nice to know if they have even talked to the domain recently. Here is some quick PowerShell to get you on your way.

Get-ADComputer -Filter 'ObjectClass -eq "Computer"' -Properties PasswordLastSet | FT Name,PasswordLastSet > output.txt

FYI: Make sure to install the Active Directory Module for PowerShell

UE-V Throws an Exception on Install

Now that I've been using UE-V lately for customer environments I've noticed a very bizarre error that can pop up when installing the UE-V 2.0 agent or tools. As you can see below the error message that comes up is rather frightening and suggests that there is something very wrong with the installation.




If I navigate to the %temp% folder on the machine I am attempting to install the UE-V agent on you will notice that the Microsoft_User_Experience_Virtualization_Agent_<YYYYMMDDHHMMSS>.log isn't exactly making the issue obvious.

[0E70:0E74][2014-09-27T10:40:27]: Burn v3.6.3303.0, Windows v6.1 (Build 7601: Service Pack 1), path: D:\UE-V\Installers\2.0\AnyCPU\AgentSetup.exe, cmdline: '-burn.unelevated BurnPipe.{87244650-D62D-4444-979C-45197BB6BDD0} {4F666BD9-6261-485E-B93B-0C66CB718C68} 3676'
[0E70:0E74][2014-09-27T10:40:27]: Setting string variable 'WixBundleLog' to value 'C:\Users\ADMINI~1\AppData\Local\Temp\Microsoft_User_Experience_Virtualization_Agent_20140927104027.log'
[0E70:0E74][2014-09-27T10:40:27]: Setting string variable 'WixBundleOriginalSource' to value 'D:\UE-V\Installers\2.0\AnyCPU\AgentSetup.exe'
[0E70:0E74][2014-09-27T10:40:27]: Condition 'VersionNT >= v6.1' evaluates to true.
[0E70:0E74][2014-09-27T10:40:27]: Setting string variable 'WixBundleName' to value 'Microsoft User Experience Virtualization Agent'
[0E70:0E74][2014-09-27T10:40:28]: Loading managed bootstrapper application.
[0E70:0E74][2014-09-27T10:40:28]: Creating BA thread to run asynchronously.
[0E70:0EAC][2014-09-27T10:40:29]: Running WixBa
[0E70:0E74][2014-09-27T10:40:29]: Detect 2 packages
[0E70:0E74][2014-09-27T10:40:29]: Setting string variable 'ISNETFRAMEWORK40' to value '1'
[0E70:0EAC][2014-09-27T10:40:29]: Creating a UI
[0E70:0E74][2014-09-27T10:40:29]: Detected package: AgentSetupx86.msi, state: Absent, cached: None
[0E70:0E74][2014-09-27T10:40:29]: Detected package: AgentSetupx64.msi, state: Absent, cached: None
[0E70:0E74][2014-09-27T10:40:29]: Detect complete, result: 0x0
[0E70:0EAC][2014-09-27T10:44:03]: Setup has thrown an exception. Please check the log.
[0E70:0EAC][2014-09-27T10:44:03]: The service cannot be started, either because it is disabled or because it has no enabled devices associated with it. (Exception from HRESULT: 0x80070422)
[0E70:0EAC][2014-09-27T10:44:04]:    at WuApiTypeLib.IUpdateServiceManager2.get_Services()
   at Microsoft.Uev.Deployment.ManagedBootstrapperApplication.Views.RootView.CheckMuOptIn()
   at Microsoft.Uev.Deployment.ManagedBootstrapperApplication.Views.RootView.NextButton_Click(Object sender, RoutedEventArgs e)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at System.Windows.Controls.Primitives.ButtonBase.OnClick()
   at System.Windows.Controls.Button.OnClick()
   at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
   at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
   at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at Microsoft.Uev.Deployment.ManagedBootstrapperApplication.WixBa.Run()
[0E70:0E74][2014-09-27T10:44:04]: Shutting down, exit code: 0x6
[0E70:0E74][2014-09-27T10:44:04]: Variable: ISNETFRAMEWORK40 = 1
[0E70:0E74][2014-09-27T10:44:04]: Variable: VersionNT = 6.1.0.0
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleAction = 4
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleElevated = 1
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleInstalled = 0
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleLog = C:\Users\ADMINI~1\AppData\Local\Temp\Microsoft_User_Experience_Virtualization_Agent_20140927104027.log
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleName = Microsoft User Experience Virtualization Agent
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleOriginalSource = D:\UE-V\Installers\2.0\AnyCPU\AgentSetup.exe
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleProviderKey = {e7f590ad-0947-4f42-8739-2d519a5f210e}
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleTag =
[0E70:0E74][2014-09-27T10:44:04]: Variable: WixBundleVersion = 2.0.319.0
[0E70:0E74][2014-09-27T10:44:04]: Exit code: 0x6, restarting: No

The key to understanding this error is the call made to use the Windows Update engine.
[0E70:0EAC][2014-09-27T10:44:04]:    at WuApiTypeLib.IUpdateServiceManager2.get_Services()

And if you search on the Internet you can find more information on the call made.


The details in the article aren't terribly important but it gives us an idea what the issue is, as  a result I checked what was the current state of the Windows Update service. When this service was checked it was disabled  because this was one of my sequencing machines so following the App-V best practice I had the service turned off. UE-V will work fine if the service is disabled afterward but it must be running in order for the installation to work correctly. So far I have seen this issue on Windows 7 x64 and 8.1 x64 systems and assume it will fail on many others.