Scheduling Windows 2000’s Disk Defragmenter

Downloads
8276.zip

Contrary to what you might have heard, NTFS partitions in Windows 2000 (Win2K) and Windows NT do fragment over time. The system doesn't write files in contiguous areas on the hard disk. The larger the volume size, the more fragmented your hard disk is likely to become. As a result, it takes longer for the OS to access files and folders because it must perform extra disk reads to collect all the pieces. Even creating new files takes longer because the OS must locate free space scattered across the volume.

What Is Defragmentation?
Disk defragmentation is the process of reassembling files and folders in one location on a volume. The process, which works only on local volumes, consolidates files and folders in one contiguous place. Defragmentation results in improved disk access because it consolidates most—but not all—of the volume's free space. The time it takes to defragment a volume depends on several factors, including the size of the volume, the amount of fragmentation, the number of files and folders, and the available system resources. In Win2K, you can defragment all three types of supported file systems: FAT, FAT 32, and NTFS.

The Win2K Disk Defragmenter
Win2K includes a limited version of Executive Software's Disk Defragmenter. After logging on as an administrator, you can access the tool from Start, Programs, Accessories, System Tools, Disk Defragmenter (you can't execute the tool, dfrgntfs.exe, from the command prompt). Screen 1 shows the Disk Defragmenter console, which consists of two main areas: The upper area shows all the local volumes available on the disk, and the lower area shows how fragmented the highlighted volume is. The color legend at the bottom of the screen displays the fragmented, contiguous, and system files in red, blue, and green, respectively. The free space appears in white. The green areas, which appear only on NTFS volumes, represent the NTFS system files that you can’t move.

Analysis Reports
As Screen 2 shows, the analysis report gives you several pieces of useful information, including volume size, cluster size, and the amount of free and used space. You can also see information on volume, file, pagefile, directory (aka folder), and Master File Table (MFT) fragmentation. I find the average file size, listed under file fragmentation, particularly useful because it helps me determine an optimum cluster size for my volume. If the average file size is small, I’ll keep the cluster size small so I don't waste disk space.

A good indication of fragmentation is the average fragments per file, listed under the report's file fragmentation section. The optimum number is 1.00. If your fragments per file are 1.10, then about 10 percent of your files exist in two pieces. A value of 1.20 means 20 percent, and so on. If the fragments per file is 2.0, your files average two fragments each; 3.0 means three fragments each, and so on. The analysis report also shows you which files didn't defragment. You can print or save the analysis reports in a text file.

The Defragmentation Process
It's a good idea to analyze the volume before you start the defragmentation process. Doing so will not only let's you determine whether you need defragmentation, but also lets you compare before and after pictures so that you can see the improvement. As I mentioned earlier, Disk Defragmenter doesn’t consolidate all the free space on a volume; it moves these areas of free space into one location. You can't completely consolidate free space for several reasons: The pagefile is fragmented; NTFS reserves a portion of free space on NTFS partitions for the MFT; and partitions that contain many folders contribute to free space fragmentation. If the analysis report indicates that you need to defragment your volume, you can proceed with the defragmentation process. Screen 1 shows the analysis and the result of defragmentation in the graphical window on the bottom half of the console.

Defragmentation Tips
You can't defragment certain system files, including the pagefile and the MFT, because they're in use during normal Windows operations. One way to defragment a pagefile is to temporarily move it to a different volume. For example, to defragment the existing pagefile on your D: drive:

  1. Run the Disk Defragmenter tool to defrag the D: drive.
  2. Create a new pagefile on a different drive (e.g., the C: drive) and delete the one on the D: drive by setting its size to zero. Reboot your computer.
  3. Recreate the pagefile on the D: drive and delete the one on the C: drive by setting its size to zero.
  4. Reboot your computer one more time.

The system will create the new pagefile on the D: drive in a contiguous space, assuming you have enough contiguous disk space on the drive.

You should analyze your volume after deleting a large number of files or folders. For example, if you delete the I386 folder that contains Win2K source files or other large files such as video files, you should run Disk Defragmenter. You can only run one instance at a time. You should defragment file servers more often than desktop workstations because file servers frequently become fragmented.

Scheduling Disk Defragmenter
You should schedule file-server defragmentation during off-peak hours to minimize the effects on server performance. Unfortunately, Microsoft doesn’t provide an easy way to schedule disk defragmentation in Win2K. Because you can't execute dfrgntfs.exe from a command prompt, you can’t use a batch file or task scheduler to schedule the process. However, Listing 1, which you can download from Article Info box at the top of this page, contains a Visual Basic (VB) script that runs the tool at scheduled intervals. You can modify the script, which I've named dfrgntfs.vbs, to fit your needs. It starts the defragmentation process and closes the window when it's finished. Use the Scheduled Tasks tool, located in System Tools, to schedule this script. I’ve scheduled the script to run every Friday at 8:00 P.M., as Screen 3 shows. Make sure you select the Advanced tab to configure several additional options.

Discuss this Article 99

Bob (not verified)
on Apr 22, 2004
http://forums.winforums.org/showthread.php?t=1049
Tony Maciel (not verified)
on Jul 24, 2003
Does anyone have any suggestions on how to handle the scenario where one of the local drives does not have the recommended 15% of free space for the defrag. I would like to continue with the defrag of that drive anyway. Thanks.
Anonymous User (not verified)
on Jan 12, 2005
Surprising..... hasnt any of u ever heard of contig.exe from www.sysinternals.com ! Can be scheduled, scripted, whatever....
Anonymous User (not verified)
on Oct 28, 2004
Thsi script is a life saver Thanks
john carter (not verified)
on Mar 8, 2002
Hi I edited the script to do the D: drive too. however when I set it to run while the machine was locked it only seems to load the application but defragmenting dosen't appear to start. any ideas
Tesi Iloh (not verified)
on Jan 13, 2003
Does this script work on all drives(cdef)simultaneously. Or you have to schedule d, e, f seperately.
Anonymous User (not verified)
on Apr 20, 2005
Great script. Thanks a lot
Pieter (not verified)
on Jan 11, 2004
Very usefull! It's about time I'll start getting more familiar with vbscript.
Anonymous
on Jan 17, 2002
A great piece of VB code !!! Thanks for sharing and not making me have to site down and debug my own stuff. Works like a charm on my Advanced Server 2000 !!! Thanks Again
Anonymous User (not verified)
on Jun 14, 2005
the script runs great. only i have 2 servers whith a unmounted partition. the script run first the unmounted drive (fat). then the first drive (ntfs) marked as c: then the last drive (ntfs) marked as e:. so i mis the d: drive also NTFS. Please the code to check this drive is not NFTS and quick select the first NTFS. The fat-drive is as first drive on the list.
Anonymous User (not verified)
on Oct 14, 2004
THis is okay if you kick it off while your console is open. If - like me - you schedule this to kick off at night after your screen as auto locked, the script does not work!
Anonymous User (not verified)
on Oct 28, 2004
Thsi script is a life saver Thanks
gustavo (not verified)
on Apr 15, 2004
Hi, i would know if all the correcions to the original scrip ar this, corrections, this correction go in the same file. Or are they diferent script. And the file name is:"Scriptdfrag.vbs" or the oder name.
Lisa (not verified)
on Jan 8, 2004
Well done, i have set up scheduled defrags for the entire network, i spent half a day looking for a script like that. Thankyou
Anonymous User (not verified)
on Jan 6, 2005
Very useful!! Was looking for an answer to whether Defrag can be scheduled. A: NO But provided me with a solution instantly as well! Thanks a lot, exactly what I was looking for!! Cheers, Jammyme :D :D :D :D :D :D
Asaf Ben Harrush (not verified)
on Dec 8, 2003
the script was very usefull for me . Thank You Dude
Anonymous User (not verified)
on Mar 4, 2005
Something that is seems to continually be overlooked is that using task schedular you can only run interactive i.e. you must be logged on. This wont work for any true IT enviorment. My fix is this: I used a program called DIRMS (http://www.dirms.com/) and a light weight programming language called Winbatch. You can use VB or C+ as well. I pasted the code below for the service piece. ******************** time_current=TimeYmdHms ( ) cur_tm4=ItemExtract(4, time_current, ":") if cur_tm4 != 00 add= 24 - cur_tm4 time_wait=TimeAdd(time_current,"0000:00:00:%add%:00:00") TimeWait(time_wait) RunHideWait("c:\Program Files\Dirms\dirms.exe","c -q") else RunHideWait("c:\Program Files\Dirms\dirms.exe","c -q") endif ************************** once you have something similar in the langauge of your choice compile it to an ".exe" file. Then use something like "srvany" (instructions here: http://support.microsoft.com/default.aspx?scid=kb;en-us;137890) to install the exe as a service then the defrag can happen at any time you choose and in the background whether your logged on or not.
Anonymous User (not verified)
on Jun 16, 2005
You said you paste your code under the service piece. what is the service piece?
mark badeau (not verified)
on Aug 7, 2000
i would like to customize this script to cycle through all of my hard drives. the script that is provided only defrags the c drive, how do it get it to go through all local hard drives programatically?
Rick (not verified)
on Nov 16, 2003
Great VBS script for sceduling defrag, but what if my drive is partition or even a second IDE. Can they to be schedules for defrag? Thanks
shaun (not verified)
on Mar 10, 2004
Help is grestly appreciated! However, this script automatically scans the first drive listed in defrag only. It could use modification to select a different drive for defrag.
Dylan (not verified)
on Nov 4, 2003
I used the scripts provided on my pc at home. Thanks for the help. I call the basic script with task scheduler every 2 days. I modified the script to send additional keystrokes so that my d: drive is selected before defragmentation is activated. I then call this using task scheduler every two days, out of step with the unmodified script.
RONALD LEE (not verified)
on Oct 13, 2003
scheduling Windows 2000 Disk Defragmenter is an usefull tool, BUT how is it possible to defrag multiple partitions or disks. I hope I hear from you. Regards,
Anonymous User (not verified)
on Nov 22, 2004
I also need this to run when the screen is autolocked. Any ideas? I found this article which possibly gives some insight into detecting if the pc is locked by checking if the screensaver is running... http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov04/hey1115.mspx
Hitesh (not verified)
on Jul 21, 2003
Your scheduling idea using a vbscript works perfectly. I only had to make some minor adjustments due to my computer having multiple logical drives. I split up the script into two different script files. One script to start the defragmenter and one to stop it. This way i dont have the script running the whole time. Thanks for the great and simple idea of scheduling the defrag.
Steve (not verified)
on Dec 15, 2003
A great help. the script is very useful but what about defragging other drives/partitions??
Mark Ayliffe (not verified)
on Jul 23, 2001
Thanks for the script guys. It looks very promising so far. I've found the problem which Dave was looking for. There's a missing Sleep call after the next drive selection. I added a "WScript.Sleep 200" just between the two "end if"s before the "Next". By the way. There one of the "end if"s before the Next was missing in the script.
Josh West (not verified)
on Mar 7, 2001
I've updated Alfonso's code from below and added some code to exit the VB Script if it detects that the defrag app has closed. <pre> 'This script launches defrag and sends keys to the UI in order to automate the defrag 'process. set WshShell = CreateObject("WScript.Shell") 'Launch Defrag from the command line and wait for a second WshShell.Run "dfrg.msc" WScript.Sleep 1000 'Wait until the application has loaded - Check every second While WshShell.AppActivate("Disk Defragmenter") = FALSE wscript.sleep 1000 Wend 'modifications by Alfonsom, fixed/updated by Josh West Dim fso, oDrives, oDrive, firstjump set fso=CreateObject("Scripting.FileSystemObject") set oDrives=fso.Drives firstjump=0 'We use this variable to check if we have jumped first in the drive list. It is necessary because the key sequence is a bit difference in the first jump for each oDrive in oDrives if oDrive.DriveType=2 then 'Bring the application to the foreground WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Send an ALT-A key to bring down the degrag menu WshShell.SendKeys "%A" WScript.Sleep 200 'Send a D to start the defrag WshShell.SendKeys "D" 'Wait until the defrag is completed - Check for window every 5 seconds While WshShell.AppActivate("Defragmentation Complete") = FALSE if WshShell.AppActivate("Disk Defragmenter") = FALSE then exit for end if wscript.sleep 5000 wend 'Bring the msgbox to the foreground WshShell.AppActivate "Defragmentation Complete" WScript.Sleep 200 'Send a tab key to move the focus from View Report button to the Close Button WshShell.Sendkeys "{TAB}" Wscript.Sleep 500 'Send key to Close the Defragmentation Complete window WshShell.Sendkeys "{ENTER}" Wscript.Sleep 500 'Bring the application to the foreground WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Move down to next drive if firstjump=0 then WshShell.Sendkeys "{TAB}{DOWN}" firstjump=1 else WshShell.SendKeys"{DOWN}" end if end if next 'Send and ALT-F4 to Close the Defrag program if WshShell.AppActivate("Disk Defragmenter") = TRUE then WshShell.AppActivate "Disk Defragmenter" WshShell.Sendkeys "%{F4}" end if </pre>
Dean (not verified)
on Apr 21, 2004
I would also like to know the answer to Tony Maciel's question: Does anyone have any suggestions on how to handle the scenario where one of the local drives does not have the recommended 15% of free space for the defrag. I would like to continue with the defrag of that drive anyway, without having to click on "yes". Thanks. Dean - April 21, 2004
John Anderson (not verified)
on Feb 6, 2001
Check out http://kevin.gearhart.com/startdefrag
Anonymous User (not verified)
on Dec 15, 2004
Make it easy. For those that are in corps that do NOT like .vbs run in the servers, create a schedule for AutoDefrag.exe to run a specified time, then create a second schedule to kill autodefrag.exe, mmc.exe and dfrgntfs.exe. This allows you to schedule a start and stop time without any hitches. Cheers...
manuel (not verified)
on Jan 15, 2004
The script keeps defraggin C drive, it does not jump to my other drvies. I have tried to modify it but i dont know the key sequence. Can someone please send me their 'WORKING' VBS script? I have 4 drives i want to defrag. Please help Thanks
Barb Kopitzke (not verified)
on Mar 29, 2000
It would be nice to be able to do a Run as on this command and be able to encrypt a password in it. The user workstations are secured so the user doesn't have admin rights to the workstation. We would like to have defrag available for them to execute and this would be a means. Please let me know if you have suggestions on how this can be accomplished.
julio
on Dec 8, 2003
Nice... One question though... Sometimes there's a window prompting if to continue or cancel due to lack of space available, can we create a line that would cancel, then close defrag and send message to the screen saying.."you need to delete un-needed files from your PC, something to that effect.
Louis (not verified)
on Dec 7, 2003
Very good information and I will give it a try.
weere (not verified)
on Sep 20, 2002
It should be noted that this script won't run correctly when the machine is locked.
Alfonso Pinol (not verified)
on Mar 8, 2000
I have refined the script a little bit so it walks through all the drives: 'This script launches defrag and sends keys to the UI in order to automate the defrag 'process. set WshShell = CreateObject("WScript.Shell") 'Launch Defrag from the command line and wait for a second WshShell.Run "dfrg.msc" WScript.Sleep 1000 'Wait until the application has loaded - Check every second While WshShell.AppActivate("Disk Defragmenter") = FALSE wscript.sleep 1000 Wend 'modifications Alfonso Dim oFSO, oDrives, oDrive, firstjump set oFSO=createobject("scripting.filesystemobject") set oDrives=oFSO.Drives firstjump=0 'We use this variable to check if we have jumped first in the drive list. It is necessary because the key sequence is a bit difference in the first jump for each oDrive in oDrives if odrive.drivetype=2 then 'Bring the application to the foreground WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Send an ALT-A key to bring down the degrag menu WshShell.SendKeys "%A" WScript.Sleep 200 'Send a D to start the defrag WshShell.SendKeys "D" 'Wait until the defrag is completed - Check for window every 5 seconds While WshShell.AppActivate("Defragmentation Complete") = FALSE wscript.sleep 5000 wend 'Bring the msgbox to the foreground WshShell.AppActivate "Defragmentation Complete" WScript.Sleep 200 'Send a tab key to move the focus from View Report button to the Close Button WshShell.Sendkeys "{TAB}" Wscript.Sleep 500 'Send key to Close the Defragmentation Complete window WshShell.Sendkeys "{ENTER}" Wscript.Sleep 500 'Bring the application to the foreground WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Move down to next drive if firstjump=0 then WshShell.Sendkeys "{TAB}{DOWN}" firstjump=1 else WshShell.SendKeys"{DOWN}" end if end if next 'Send and ALT-F4 to Close the Defrag program WshShell.Sendkeys "%{F4}"
Shawn Tomcsanyi (not verified)
on Dec 18, 2002
Put in another ALT+F4 command into the script and this will close the mmc window.
Mike Blose (not verified)
on Nov 4, 2002
The original code works for me other than one major problem. It never ends the mmc process on my win2k server. So when you go in and look at the Defrag GUI it says 2 version can not be run yada yada yada. I am running it from the sheduler am I missing something easy? Please email me and/or post here. Thanks
Anonymous User (not verified)
on Dec 15, 2004
Almost forgot... use sysinternals pskill.exe to kill the processes. Create a bat file and dump it in the system32 directory along with pskill.exe. The bat file should look something like: pskill.exe autodefrag.exe pskill.exe mmc.exe pskill.exe dfrgntfs.exe
Dave Fox (not verified)
on May 31, 2001
Hello Everyone, I also have altered the code. I've attempted to clean it up a little, to make it a bit more readable. I have also corrected the mistake made by Josh West(no offence Josh) when he altered Alfonso Pinol original code. The code will not run unless the DIM is set to oFSO, and not fso.

Now here is the problem I am having with the code. I have a total of 3 drives on my server, the first being a Compaq ROM FAT drive. Then a 2.38 Gigabyte NTFS C: drive, then a 6.04 Gigabyte NTFS D: drive. The script runs perfectly until it gets to the D: drive. At which point the script stops. It does not lockup it simply seems to be waiting. I can move between the other drives with the mouse pointer, and even manually continue the defrag on the D: drive.

Any ideas someone?? Thanks

'This script launches defrag and sends keys to the UI in 'order to automate the defrag process. Set WshShell = CreateObject("WScript.Shell") 'Launch Defrag from the command line and wait for a second. WshShell.Run "dfrg.msc" WScript.Sleep 1000 'Wait until the application has loaded - Check every second. While WshShell.AppActivate("Disk Defragmenter") = False WScript.Sleep 1000 Wend 'Modifications by Alfonsom, fixed/updated by Josh West. Dim oFSO, oDrives, oDrive, firstjump Set oFSO = CreateObject("Scripting.FileSystemObject") Set oDrives = oFSO.Drives firstjump = 0 'We use this variable to check if we have jumped first in 'the drive list. 'It is necessary because the key sequence is a bit 'difference in the first jump. For Each oDrive In oDrives If oDrive.DriveType = 2 Then 'Bring the application to the foreground. WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Send an ALT-A key to bring down the degrag menu. WshShell.SendKeys "%A" WScript.Sleep 200 'Send a D to start the defrag. WshShell.SendKeys "D" 'Wait until the defrag is completed - Check for window 'every 5 seconds. While WshShell.AppActivate("Defragmentation Complete") = False If WshShell.AppActivate("Disk Defragmenter") = False Then Exit For End If WScript.Sleep 5000 Wend 'Bring the msgbox to the foreground. WshShell.AppActivate "Defragmentation Complete" WScript.Sleep 200 'Send a tab key to move the focus from View Report button 'to the Close Button. WshShell.SendKeys "{TAB}" WScript.Sleep 500 'Send key to Close the Defragmentation Complete window. WshShell.SendKeys "{ENTER}" WScript.Sleep 500 'Bring the application to the foreground. WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Move down to next drive If firstjump = 0 Then WshShell.SendKeys "{TAB}{DOWN}" firstjump = 1 Else: WshShell.SendKeys "{DOWN}" End If Next 'Send and ALT-F4 to Close the Defrag program. If WshShell.AppActivate("Disk Defragmenter") = True Then WshShell.AppActivate "Disk Defragmenter" WshShell.SendKeys "%{F4}" End If 'Send and ALT-F4 to Close the Defrag program. If WshShell.AppActivate("Disk Defragmenter") = True Then WshShell.AppActivate "Disk Defragmenter" WshShell.SendKeys "%{F4}" End If
David (not verified)
on Apr 21, 2004
i have to set up scheduled defrags for the entire network, your script helped, but what if the user is not logged in? could you tell me how to run it even if the user is not logged in? Thank you. By the way nice script...
martini el rosso (not verified)
on Apr 24, 2002
thank you very much for the script
Anonymous User (not verified)
on Jul 27, 2005
the server piece is on c:\. on d:\ only some tools for administration. on e:\ all apps and services for users
Joe Smith (not verified)
on Feb 18, 2003
I saved the script as defrag.vbs on my W2K SP3/IE6 server and then I double-clicked on it to test it. First I rec'd the following error: "The procedure entry point DoOpenPipeStream could not be located in the dynamic link library ScrRun.dll" then I get another error Sript:c:\defrag.vbs Line: 5 Char: 1 Error: The specified procedure could not be found. Any ideas? Thx for your help!
Mike (not verified)
on Nov 28, 2003
very good
Larry Gilson (not verified)
on Oct 1, 2001
AutoDeFrag is an open-source launcher for the standard defragmenter built into Windows 2000. The program and a link for the source code can be found at: http://www.morphasys.com/autodefrag/
Tim McGue (not verified)
on Mar 30, 2004
Try this revision for running defrag against all local drives: 'Setup objects and variables Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") Set WshShell = CreateObject("WScript.Shell") intCount = 0 intCount2 = 0 'Get a count of the local drives Set colDrives = objWMIService.ExecQuery("SELECT Name FROM Win32_LogicalDisk WHERE DriveType = 3") For Each objDrive In colDrives intCount = intCount + 1 Next 'Launch Defrag from the command line and wait for a second WshShell.Run "dfrg.msc" WScript.Sleep 1000 'Wait until the application has loaded - Check every second While WshShell.AppActivate("Disk Defragmenter") = FALSE wscript.sleep 1000 Wend 'Step through each drive For intCount2 = 0 To intCount -1 'Reset the third counter intCount3 = 0 'Bring the application to the foreground WshShell.AppActivate "Disk Defragmenter" WScript.Sleep 200 'Start with the first drive by sending a tab If (intCount2 = 0) Then WshShell.SendKeys "{TAB}" End If 'Arrow drive for all additional drives Do While intcount3 < intCount2 WshShell.SendKeys "{DOWN}" intcount3 = intcount3 + 1 Loop 'Send an ALT-A key to bring down the defrag menu WshShell.SendKeys "%A" WScript.Sleep 200 'Send a D to start the defrag WshShell.SendKeys "D" 'Wait until the defrag is completed - Check for window every 5 seconds While WshShell.AppActivate("Defragmentation Complete") = FALSE wscript.sleep 5000 Wend 'Bring the msgbox to the foreground WshShell.AppActivate "Defragmentation Complete" WScript.Sleep 200 'Send a tab key to move the focus from View Report button to the Close Button WshShell.Sendkeys "{TAB}" Wscript.Sleep 500 'Send key to Close the Defragmentation Complete window WshShell.Sendkeys "{ENTER}" Wscript.Sleep 500 Next 'Send and ALT-F4 to Close the Defrag program WshShell.Sendkeys "%{F4}" 'cleanup Set objWMIService = Nothing Set colDrives = Nothing Set objDrive = Nothing Set WshShell = Nothing
Joseph (not verified)
on Nov 20, 2003
Very good!
Jeffrey (not verified)
on Sep 9, 2004
I used this - modified slightly, I found MMC.exe process hanging...This would prevent the disk defragmenter from running in the future. I utilized pskill to kill mmc after the script runs.

Please or Register to post comments.

IT/Dev Connections

Las Vegas
September 30th - October 4th

Paul ThurottYou'll have the opportunity to experience:
• The Microsoft
Technology Roadmap
• Office 365 Implementation
• Hyper-V Optimizing
• Windows 8 Deployment
and much more!

Come See Paul Thurrott & Rod Trent in Person!

Early Registration Now Open

Upcoming Training

Mastering System Center 2012

During over 6 hours of training you can join John Savill from your computer as he will walk you through the key components and capabilities of System Center 2012, what’s involved in using the components, and the benefit they can bring to your environment.

Register Now

Current Issue

May 2013 - The NameTranslate object is useful when you need to translate Active Directory object names between different formats, but it's awkward to use from PowerShell. Here's a PowerShell script that eliminates the awkwardness.

CURRENT ISSUE / ARCHIVE / SUBSCRIBE

Windows Forums

Get answers to questions, share tips, and engage with the Windows Community in our Forums.