Monday, September 20, 2010

Changing the Default User Account Picture

First things first…

The default user account picture I’m referring too it’s the one that a new user get’s when it’s created.
This pictures appears on the logon screen and also on your start menu.

Here’s an example:



This picture must be:
Format: BMP
Size: 128x128 pixels

If you have another picture and want it to be the default picture for every new user, just copy it to:
c:\ProgramData\Microsoft\User Account Pictures\user.bmp

The picture must have exactly the same name (user.bmp) so you’ll need to overwrite the default one.

Driver Injections on MDT 2010

One of the great things since Windows Vista deployment it’s the way Microsoft made easy to deploy machines with different hardware types.
Windows Deployment Services (WDS), specially on Windows 2008 R2 also helped a lot.

But…sometimes you’ll need to inject drivers directly on the wim file.

Lars Krogh talked about this on his great blog, when he talked about how he accomplish this with the need of using a database on MDT.

Take a look on it’s article here:
MDT 2010: Driver injections (by Lars Krogh)

E-Reading – Deployment Fundamentals: Deploying Windows clients using MDT 2010 Lite Touch (Volume 1)

Although I like to read books on my PDA or notebook, I also like to read on the old fashioned paper.
I believe that people from TrueSec also thinks this way and a new book as come out.

I know that this coming a little late but I’m finally taking care of my mailbox so, there are some old news that I would like to share.

This books (Deployment Fundamentals: Deploying Windows clients using MDT 2010 Lite Touch (Volume 1)) it’s an easy and comprehensible peace of culture for everyone that it’s starting on Windows / Windows 2008 R2 deployments.
It’s also a good reference for everyone that work on deployments on a day-basis. There’s always something you discover there.

So, take a look at it on Amazon:
Deployment Fundamentals: Deploying Windows clients using MDT 2010 Lite Touch (Volume 1)

Get a quick look inside

Friday, September 17, 2010

VBScript – Verify TPM Status

I’m at the moment preparing a massive rollout of Microsoft Windows 7 for 10.000 machines.
One of the goals it’s to activate Bitlocker on all desktops and laptops.

While on testing phase, we’ve noticed that most of the time the installation teams forgotten to make the proper TPM changes on BIOS.
So, we’ve decided to create a VBScript to verify if the changes we’re made.
While TPM isn’t initialized and activated the installation doesn’t continue.

So, here’s the script:
(note: this script also verifies if the scripts is running on a virtual machine. If so, it doesn’t continue)

'-------------------------------------------------------------------------'
'  Variables And Objects Initialization                                   '
'-------------------------------------------------------------------------'
Err.Clear

Set wshShell = WScript.CreateObject("WScript.Shell")
Set Network = CreateObject("WScript.Network")
Set FSO = CreateObject("Scripting.FileSystemObject")

Set objWMIService = GetObject("WinMgmts:{impersonationLevel=impersonate,AuthenticationLevel=pktprivacy}//" & "." & "\root\CIMV2\Security\MicrosoftTpm")
Set objItems = objWMIService.InstancesOf("Win32_Tpm")

strScriptName = WScript.ScriptName
strScriptRunTime = FormatDateTime (Now,0)
strComputerName = Network.ComputerName
LoggedUser = Network.Username

strSystemManufacturer = wshShell.RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SystemInformation\SystemManufacturer")

aspas = Chr(34)

'-------------------------------------------------------------------------'
'  MAIN                                                                   '
'-------------------------------------------------------------------------'

'Verify if Virtual Machine
If strSystemManufacturer = "VMware, Inc." or strSystemManufacturer = "Microsoft Corporation" Then
     WriteLog (strScriptName & " - Virtual Machine detected - TPM verification not needed.")
     WScript.Quit
End If

'Verify TPM Status
For Each objItem in objItems
  strTPMOn = True
  strTPMEnabled = objItem.IsEnabled(A)
  strTPMActivated = objItem.IsActivated(B)
  strTPMOwned = objItem.IsOwned(C)

    If (strTPMOn = True) Then
        WriteLog (strScriptName & " - TPM Powered On.")
    Else
        WriteLog (strScriptName & " - TPM not correctly configured - TPM not Powered On.")   
    End If

     If A Then
         WriteLog (strScriptName & " - TPM Enabled.")
     Else
         WriteLog (strScriptName & " - TPM not correctly configured - TPM not Enabled.")
     End If

    If B Then
         WriteLog (strScriptName & " - TPM Activated.")
     Else
         WriteLog (strScriptName & " - TPM not correctly configured - TPM not Activated.")
     End If
Next

'-------------------------------------------------------------------------'
'  ERROR CONTROL                                                          '
'-------------------------------------------------------------------------'

If Err.Number = "0" Then
    WriteLog (strScriptName)
Else
    WriteLog(strScriptName & " - ERRO" )
    WriteError(strScriptName & " - Error Number=" & err.Number & " | Error Desc.=" & err.Description)
End If

'-------------------------------------------------------------------------'                                                                        '
' FUNCTIONS                                                               '
'-------------------------------------------------------------------------'

'************************************'
' WRITELOG                           '
'************************************'

Function WriteLog(Msg)
  Dim objTextLog
  if FSO.FileExists("C:\SetupLogs\Settings.log") Then
    Set objTextLog = FSO.OpenTextFile("C:\SetupLogs\Settings.log", 8)
  Else
    Set objTextLog = FSO.CreateTextFile("C:\SetupLogs\Settings.log")
  End If
  objTextLog.WriteLine "[" & FormatDateTime(Now, 0) & "] " &  Msg
  objTextLog.Close

End Function

'************************************'
' WRITEERROR                         '
'************************************'

Function WriteError(Msg)
  Dim objTextLog
  If FSO.FileExists("C:\SetupLogs\SetupErrors.log") Then
    Set objTextLog = FSO.OpenTextFile("C:\SetupLogs\SetupErrors.log", 8)
  Else
    Set objTextLog = FSO.CreateTextFile("C:\SetupLogs\SetupErrors.log")
  End If
  objTextLog.WriteLine "[" & FormatDateTime(Now, 0) & "] " &  Msg
  objTextLog.Close
End Function

Technorati Tags: ,,,

Thursday, September 16, 2010

Microsoft Internet Explorer 9 Beta – Download Available

Microsoft took today another step before RTM version of it’s new browser version.
IE9 Beta it’s now available for download.

Experience a more beautiful web

After long interruption between versions 6.0 and 7.0, looks like Microsoft it’s finally getting the right speed for launching new versions of IE, and getting the focus where their competitors are good and they are not.

Well…I can somehow understand why it’s more complicated for Microsoft to launch new versions in short time between them. IE it’s probably the most used browser on the enterprise world so…this can be really a nightmare for IT Admins and Developers to keep up and test everything again.

Now, for what really matters…here are some of the new features in IE9 Beta:

Chrome Like Streamlined Design
Like I said before, Microsoft it’s paying attention to what the others are doing well, so this new compact/minimalist user interface make the navigation more graceful.

Just a short note about the Back button, to say that the bigger size reflects a market study from Microsoft that states that Back button it’s used a lot more times then Forward button.
When I think about it…errr…yes this is absolutely true, isn’t it?

Download Manager
Hmmm, don’t you smell something here?
An incorporated download manager where you can see all current and past downloads, cancel, pause them, clear the download  list history, etc.

This is getting ridiculous but, here I’ve to say that, Microsoft it’s looking the neighbors house…

Enhanced Tabs
With this feature basically you can put two opened tabs side-by-side


New Tab Page
Now when you open a new tab on the browser instead of going to your home page, you get a list of the most viewed websites.
Ok…I just can’t avoid this…does this feature makes you think on another browser?


Hardware Acceleration
In my modest opinion, this is one of the most important new features in IE9.
Hardware acceleration means IE will use the power of your graphics card (GPU) to enhance some heavy task like video streaming, online gaming and a lot more.

Everyday web pages have more rich and complex content, so in near feature, using the GPU will be trivial and probably get a better experience while browsing.

 

So, if your curious to test this features, download it and get more information:
Microsoft Internet Explorer 9 Beta