TEC 2010 – Advanced Training on Microsoft Active Directory and FIM
Today I registered for TEC 2010 which will be in Los Angeles this year. I have never attended TEC before but last year I was right down the road at TechED. I am still waiting to hear if I will be attending TechEd 2010 as well.
I am excited to see some focus around Active Directory and Forefront Identity Manager at a conference especially since Forefront Identity Manager was just released to manufacturing. One of my fears in attending this conference this year was that FIM would be released after TEC 2010 and covered in greater detail at TechED 2010, now with the release of FIM I hope that is not the case. I have already seen some vendors providing extensions to FIM so this may be the best year to go to TEC so far.
I definitely will be posting some more information and pictures during the event. Feel free to email me with any suggestions around the conference or questions you would like to be asked. ITNotes@gmail.com
~ITNotes
PowerShell – ProperCase Function
Change any case to Proper Case (‘ITNOTES DoT net’ to ‘Itnotes Dot Net’):
This is very useful for us during scripted user creations when the usernames and such from the source were in random cases. This script could also be useful with auto user provisioning with ILM from another datasource, we currently us a VBScript that is much longer.
This script basically converts everything to lowercase the capitalizes the first letter of each word.
function ToProperCase ([String]$in) { $in = $in.Tolower() $textInfo = [System.Threading.Thread]::CurrentThread.CurrentCulture.TextInfo return $textInfo.ToTitleCase($in) } |
Example of use
$Title = "ITNOTE DOT NET" $Title = ToProperCase($Title) |
Returns:
Itnotes Dot Net
Complete Script
function ToProperCase ([String]$in) { $in = $in.Tolower() $textInfo = [System.Threading.Thread]::CurrentThread.CurrentCulture.TextInfo return $textInfo.ToTitleCase($in) $Title = "ITNOTE DOT NET" $Title = ToProperCase($Title) |
New Role – Active Directory / Identity Management Engineer
I was recently promoted to our company’s Security Team as an Active Directory / Identity Management Engineer. So most of my future posts will be aimed towards those technologies and Group Policy. I will also continue to post some hopefully helpful VBScripts and PowerShell Scripts. I still have a few draft posts that I plan to publish eventually that maybe helpful in the Windows Installer and Packaging Space however no new findings will be posted in this expertise.
Thanks for reading!
~ITNotes
Windows XP Favorites Folder Redirection via GPOs
Per [MS-GPFR] - In Windows 2000 Server, Windows XP, and Windows Server 2003, a constant list of exactly five user profile folders can be redirected, including My Documents, My Pictures, Desktop, Start Menu, and Application Data.
[MS-GPFR]: Group Policy: Folder Redirection Protocol Extension documentation can be downloaded here.
So in other words folder redirection for Favorites and others file folders in not supported until Vista or later.
So using Folder Redirection for My Documents only I created two Group Policy objects. One GPO being the standard Folder Redirection Policy pointing serveral groups to various MyDocuments stores. With a second Group Policy object I added the following script to the logon process. The script sleeps for 30 seconds allowing time for other group policy objects to complete processing and then using special folders the script gets the MyDocuments location and appends \Favorites to the end and then populates the appropriate registry value to redirect Favorites. I additionally added a three minute timeout to the script incase the scripts hangs, not that it would, but you wouldn’t want it to hang indefinitely.
Simple Favorites Folder Redirection using Special Folders for MyDocuments
On Error Resume Next
Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
WScript.Timeout 180
WScript.Sleep 30000
Set WshShell = WScript.CreateObject("WScript.Shell")
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
strValueName = "Favorites"
strValue = WshShell.SpecialFolders("MyDocuments") & "\Favorites"
oReg.SetStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue
Changes in Wise Package Studio 8 – From Release Notes
Not much on improvements here, seems more like a service pack. The last service pack for WPS7.0 was released in April 2008 and there was a blurb about SP4 which was never released to the public. I know many of you were hoping for a big release here but this seems to be just some long overdue cleanup by Symantec and a last minute ploy to support Windows 7.
After loading the Eval copy of Wise Package Studio, everything basically looks the same as far as the GUI goes.
I guess I was hoping for more … more features, more automation, more virtualization support. If WPS8.0 throws out supporting third party deployment tie-ins, why would they support third party virtualization packages. AdminStudio supports Thinapps and others! I expected more but at least Wise Package Studio is still in the game.
Screenshot of the version I installed:
From the offical release notes:
Operating system support. We have added support for the creation of packages and scripts with the Wise Package Studio tools that run on the following operating systems:
Windows Server 2008
Windows Server 2008 SP2
Windows Server 2008 R2
Windows XP SP3
Windows Vista SP1
Windows Vista SP2
Windows 7
Start menu shortcuts. The Start menu shortcuts for Wise Package Studio are in a Symantec folder instead of an Altiris folder.
Package Validation tool. When you run Package Validation from the tools menu, you can specify a single installation package file or a folder that contains multiple .MSI or .MS files. If you specify a folder, Package Validation checks all the .MSI or .MSM files in the folder. It can also check the .MSI or .MSM files in the folder’s subdirectories. When Package Validation checks multiple files, the pathname of each file appears in the list on the View dialog box and the pathname is followed by any validation issues detected for that file. When you validate multiple .MSI or .MSM files, the Correct button does not appear in the View dialog box. You can only correct issues from within Package Validation when you validate a single file. Package Validation has also been updated to use the most current version of the Internal Consistency Evaluator rules.
Wise Web Capture. Version 2.0 of the .NET Framework must be installed on the server.
Wise Connector. Wise Connector lets you import software packages and their associated metadata from a Wise Software Repository into Software Management Framework. It imports software packages from a Wise Package Studio share point directory into the Software Library. It imports the metadata that is associated with a software package from the Software Manager database into the Software Catalog. You can import software packages with their metadata on a schedule or manually. After you import software packages with their metadata into Software Management Framework, those responsible for distributing software can easily deliver and manage them. Wise Connector is a Symantec Management Platform plug-in that you install with Symantec Installation Manager. You must have Symantec Management Platform 7.0 SP3 or later to use Wise Connector. The Wise Connector plug-in for the Symantec Management Platform replaces the Wise Integration Component that had similar functionality for Notification Server 6.x.
Software Virtualization Solution. The integration of Wise Package Studio with Software Virtualization Solution has not changed with this release. Wise Package Studio supports Software Virtualization Solution 2.1, but does not support later releases of this product. Although Altiris Software Virtualization Solution has been renamed Symantec Workspace Virtualization, the Wise Package Studio documentation continues to refer to it as Software Virtualization Solution. The documentation also refers to the Altiris Software Virtualization Agent as the Software Virtualization Agent, although the agent is now referred to as the Symantec Workspace Virtualization Agent. For more information about Software Virtualization Solution (SVS), search for Workspace Virtualization on the symantec.com Web site.
Package Distribution. Package Distribution no longer supports the delivery of a package to the following distribution systems: Altiris Software Delivery Solution, IBM Tivoli, LANDesk Management Suite, Microsoft SMS, Novadigm Radia, NetInstall, Novell ZENWorks, and ON Command MSI Package Wizard.
Wise Web Capture. The following message appeared when you launched Wise Web Capture: “Windows has blocked this software … cannot verify the publisher.” This issue has been resolved.
Hotfix patch: In Software Manager, if you imported a hotfix patch, you received an error message when you tried to change its status to Available. You can now assign a hotfix patch a status of Available and the package is then copied to the Available Packages folder.
SetupCapture. SetupCapture now captures assembly information.
Check for Updates. The Check for Updates option has been removed from the Help menu and from the General tab in the Workbench Preferences dialog box.
If you used SetupCapture to capture an application that contains a service, the service was not stopped and deleted when the application was uninstalled. This issue has been resolved.
If a package was imported into Software Manager using Universal Import, the package was not moved to the Available Packages directory when the status of the package was changed to Available. This issue has been resolved.
After capturing some applications (for example Adobe Acrobat 8.12) with Virtual Package Editor, you would receive an invalid source path error when you compiled the .WVP file. This issue has been resolved.
In a locked down environment, a network client installation is now able to install the WiseDotNetStub, Signtool.exe, and Language.ini files that it could not install with 7.0 SP3.
If you captured a legacy EXE that contained a REG_MULTI_SZ key, the entire key was added to the installation instead of just the values that changed. When the installation was uninstalled, the entire key was removed, instead of just the values that were added. This issue has been resolved.
The ability to create an SOE snapshot now works on a Windows Vista SP1 computer.
Re-Usable VBScript Functions – Part I
In this Multi-Part Series I will post lists on VBScript Functions and Subs that I have either found or written. I am a big fan of turning any useful code into a functions and adding it to my default VBScript Template, it saves a ton of time on the next scripting task. By no means am I claiming I wrote all of these, most were just re-purposed into reusable functions. I hope you find these useful. In the later part of the series I will include my template I use to begin all my scripts.
Determine if the computer is a laptop:
Function IsLaptop(strComputer) On Error Resume Next Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" ) Set colItems = objWMIService.ExecQuery( "Select * from Win32_Battery", , 48 ) IsLaptop = False For Each objItem in colItems IsLaptop = True Next If Err Then Err.Clear On Error GoTo 0 End Function |
Example of use
If IsLaptop( "." ) Then WScript.Echo "Laptop Else WScript.Echo "Desktop or server End If |
Shell out a command line with switches:
Sub RunSwch(ByVal strRunCmd, strRunSwitch)
Dim objWshShell
Set objWshShell = CreateObject("WScript.Shell")
objWshShell.Run Chr(34) & strRunCmd & Chr(34)& " " & strRunSwitch, 1, True
Set objWshShell = Nothing
End Sub |
Example of use
RunSwch "C:\Program Files\ApplicationX\Start.exe","/S /X /Log C:\log.log" |
Shell out a command line without switches:
Sub Run(ByVal strRunCmd)
Dim objWshShell
Set objWshShell = CreateObject("WScript.Shell")
objWshShell.Run Chr(34) & strRunCmd & Chr(34), 1, True
Set objWshShell = Nothing
End Sub |
Example of use
Run "C:\Program Files\ApplicationX\Start.exe" |
Windows 7 Ultimate Signature Edition
I received my copy of Windows 7 Ultimate Signature Edition today in the mail. I thouhgt I would share an image of it. The DVD itself is just a promotional disc with the Product Key inside the case. The only thing special is the outside of the case itself. Well here it is (It was impossible with my photography skills to get rid of the glare)

Windows 7 Ultimate Signature Edition
Wise Package Studio 8
Wise Package Studio 8 will be launched at Packaging Event 2009
Source: Packaging Event 2009
Event Date is October 8th, 2009
Official Release Date for WPS 8 is October 29th, 2009
Symantec will present the Wise package Studio 8 edition during the Keynote session.
What’s new in Wise Package Studio 8:
• Support for Windows 7, including Windows 7 Migration Toolkit
• Support for Windows XP SP3
• Support for Windows Vista SP1
• Support for Windows Server 2008 R2
• Support for Windows Server 2008 SP2
• Support for SQL Server 2008
• Support for versions 3.0 and 3.5 of .NET framework
• Redistributable support for Windows Installer 4.5
• Support for new Internal Consistency Evaluation (package validation) rules from Microsoft
• Updates to Virtual Package Editor
PowerShell 2.0 Release Candidate for Windows XP SP3 and Server 2003 SP2
Finally we see a release candidate for Windows XP, but you must have SP3 installed.
Download here: https://connect.microsoft.com/windowsmanagement/Downloads
Webinar: Time to Say Goodbye to Repackaging? – Hosted by AppDeploy
I know we have had some discussions at work around our recent move to virtualization around whether we would continue to repackage applications. Repackaging won’t immediately be dismissed but is it time to make it the second option? Virtualizing applications is getting better by the minute and as more tools get released, easier as well. So I think AppDeploy picked the perfect time to take this subject to greater depths and without the vendors.
AppDeploy.com is hosting a discussion around the Pros and Cons of Virtualization in the IT World. I don’t want to miss this one! So tune in on Thursday, September 17, 2009 10:00 a.m. PT/ 1:00 p.m. ET
Source: http://www.appdeploy.com/messageboards/
Sign-up here: https://kace.webex.com/kace/onstage/g.php?t=a&d=823287019

