<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wayne Zimmerman&#039;s Blog &#187; Computer</title>
	<atom:link href="http://www.waynezim.com/tag/computer/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.waynezim.com</link>
	<description>My World of Tech, Life and Anything Else</description>
	<lastBuildDate>Sun, 05 Feb 2012 05:35:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Allow User To Run Applicaton as Administrator Without a Password</title>
		<link>http://www.waynezim.com/2009/09/allow-user-to-run-applicaton-as-administrator-without-a-password/</link>
		<comments>http://www.waynezim.com/2009/09/allow-user-to-run-applicaton-as-administrator-without-a-password/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 19:26:40 +0000</pubDate>
		<dc:creator>Wayne Zimmerman</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[administrator]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[runas]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://www.waynezim.com/?p=465</guid>
		<description><![CDATA[A few days ago I came across a software application that just wouldn&#8217;t execute correctly without the user being an administrator on the computer. Since all of my users run as basic / limited users they were unable to use program. After contacting the vendor and looking for all type of rights that we could [...]]]></description>
			<content:encoded><![CDATA[<p>A few days ago I came across a software application that just wouldn&#8217;t execute correctly without the user being an administrator on the computer. Since all of my users run as basic / limited users they were unable to use program. After contacting the vendor and looking for all type of rights that we could grant the user so the could execute the program properly we were unable to fix it without making the user an administrator. So rather than making them an administrator or giving them the administrator password I made a little application that calls the other application as a run as but has the administrator credentials complied in. I realize that you can probably decompile the application and get the password, but for many users that is too much work, or they lack the expertise, so I view this as a small security issue. To further protect the account I made one that only exists on that computer. Below is the code that you can use to build a similar application it is only a few lines but it can solve a headache and keep a password relatively secure.</p>
<p>This is a VB.NET application<br />This application will produce an error if it is unable to login as that account or if the target program cannot be found.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p465code2'); return false;">View Code</a> VB</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4652"><td class="code" id="p465code2"><pre class="vb" style="font-family:monospace;"><span style="color: #000080;">Public</span> Class Form1
    <span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> Form1_Load(<span style="color: #000080;">ByVal</span> sender <span style="color: #000080;">As</span> System.<span style="color: #000080;">Object</span>, <span style="color: #000080;">ByVal</span> e <span style="color: #000080;">As</span> System.EventArgs) Handles MyBase.Load
        <span style="color: #000080;">Dim</span> DomainName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>
        <span style="color: #000080;">Dim</span> UserName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>
        <span style="color: #000080;">Dim</span> Password <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>
        <span style="color: #000080;">Dim</span> SysPassword <span style="color: #000080;">As</span> System.Security.SecureString = <span style="color: #000080;">New</span> System.Security.SecureString()
        DomainName = System.Environment.GetEnvironmentVariable(<span style="color: #800000;">&quot;ComputerName&quot;</span>)
        UserName = <span style="color: #800000;">&quot;administrator&quot;</span>
        Password = <span style="color: #800000;">&quot;supersecretpassword&quot;</span>
&nbsp;
        <span style="color: #000080;">For</span> <span style="color: #000080;">Each</span> c <span style="color: #000080;">As</span> Char <span style="color: #000080;">In</span> Password
            SysPassword.AppendChar(c)
        <span style="color: #000080;">Next</span>
        SysPassword.MakeReadOnly()
&nbsp;
        Try
            System.Diagnostics.Process.Start(<span style="color: #800000;">&quot;notepad.exe&quot;</span>, UserName, SysPassword, DomainName)
        Catch ex <span style="color: #000080;">As</span> Exception
            MsgBox(ex.Message)
        <span style="color: #000080;">End</span> Try
        Me.<span style="color: #000080;">Close</span>()
    <span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span>
<span style="color: #000080;">End</span> Class</pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.waynezim.com/2009/09/allow-user-to-run-applicaton-as-administrator-without-a-password/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Report Workstation Uptime in a CSV using Active Directory and VBS</title>
		<link>http://www.waynezim.com/2009/07/report-workstation-uptime-in-a-csv-using-active-directory-and-vbs/</link>
		<comments>http://www.waynezim.com/2009/07/report-workstation-uptime-in-a-csv-using-active-directory-and-vbs/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 19:56:09 +0000</pubDate>
		<dc:creator>Wayne Zimmerman</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[Domain]]></category>
		<category><![CDATA[Report]]></category>
		<category><![CDATA[Uptime]]></category>
		<category><![CDATA[vbs]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://www.waynezim.com/?p=437</guid>
		<description><![CDATA[Have you ever been left wondering which computers on your domain have been neglected by their user and not restarted in forever? This is a question that come up in my office every once and a while. One of the easiest ways to solve this problem is to ask WMI for when the computer was [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever been left wondering which computers on your domain have been neglected by their user and not restarted in forever? This is a question that come up in my office every once and a while. One of the easiest ways to solve this problem is to ask WMI for when the computer was last restarted and subtract it from the current time. Also, while asking WMI questions you might as well ask which user is currently logged on the PC that way you know who to blame. This is exactly what the following script does for your domain. It grabs the list of workstations from the domain then queries WMI for the last time the computer is restarted and does some conversion and math and makes you an nice CSV that you can play with. </p>
<p><b>Script Configuration</b><br />
Before running this script there is some minor configuration that must be done so it can communicate with your Active Directory setup.
<ol>
<li>Find <code>objConnection.Open "Active Directory Server"</code> change <em>Active Directory Server</em> to the name of your Domain Controller</li>
<li>Find <code>objCommand.CommandText = _<br />
    "Select Name, Location from 'LDAP://OU=Workstations,DC=west,DC=domain,DC=edu' " _<br />
        &#038; "Where objectClass='computer'"</code> change <em>subdomain</em>, <em>domain</em>, and <em>suffix</em> to the name of your domain i.e. west domain edu (respectively)</li>
<li>Find <code>GetUptime objRecordSet.Fields("Name").Value, "C:\uptime.csv"</code> and change <em>C:\uptime.csv</em> to the location where you want the file saved. Be sure to save it with the extension CSV
</ol>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left2">Download <a href="http://www.waynezim.com/wp-content/plugins/wp-codebox/wp-codebox.php?p=437&amp;download=GetUptime.vbs">GetUptime.vbs</a></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4374"><td class="code" id="p437code4"><pre class="vb" style="font-family:monospace;"><span style="color: #000080;">Const</span> ADS_SCOPE_SUBTREE = 2
&nbsp;
<span style="color: #000080;">Set</span> objConnection = CreateObject(<span style="color: #800000;">&quot;ADODB.Connection&quot;</span>)
<span style="color: #000080;">Set</span> objCommand =   CreateObject(<span style="color: #800000;">&quot;ADODB.Command&quot;</span>)
objConnection.Provider = <span style="color: #800000;">&quot;ADsDSOObject&quot;</span>
objConnection.<span style="color: #000080;">Open</span> <span style="color: #800000;">&quot;Active Directory Server&quot;</span> 
&nbsp;
<span style="color: #000080;">Set</span> objCOmmand.ActiveConnection = objConnection
objCommand.CommandText = _
    <span style="color: #800000;">&quot;Select Name, Location from 'OU=Workstations,DC=west,DC=domain,DC=edu' &quot;</span> _
        &amp; <span style="color: #800000;">&quot;Where objectClass='computer'&quot;</span>  
objCommand.Properties(<span style="color: #800000;">&quot;Page Size&quot;</span>) = 1000
objCommand.Properties(<span style="color: #800000;">&quot;Searchscope&quot;</span>) = ADS_SCOPE_SUBTREE 
<span style="color: #000080;">Set</span> objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
&nbsp;
<span style="color: #000080;">Do</span> <span style="color: #000080;">Until</span> objRecordSet.EOF
	GetUptime objRecordSet.Fields(<span style="color: #800000;">&quot;Name&quot;</span>).Value, <span style="color: #800000;">&quot;C:\uptime.csv&quot;</span>
    objRecordSet.MoveNext
<span style="color: #000080;">Loop</span>
&nbsp;
<span style="color: #000080;">Sub</span> GetUptime(strComputer, strFilename)
	<span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">Resume</span> <span style="color: #000080;">Next</span>
	<span style="color: #000080;">Set</span> StdOut = WScript.StdOut
&nbsp;
	<span style="color: #000080;">Set</span> objFSO = CreateObject(<span style="color: #800000;">&quot;scripting.filesystemobject&quot;</span>)
	<span style="color: #000080;">Set</span> logStream = objFSO.opentextfile(strFilename, 8, <span style="color: #000080;">True</span>)
&nbsp;
	<span style="color: #000080;">Set</span> oReg=GetObject(<span style="color: #800000;">&quot;winmgmts:{impersonationLevel=impersonate}!\\&quot;</span> &amp; strComputer &amp; <span style="color: #800000;">&quot;\root\default:StdRegProv&quot;</span>)
	<span style="color: #000080;">If</span> Err.Number <span style="color: #000080;">Then</span>
	      logStream.writeline(strComputer &amp; <span style="color: #800000;">&quot;,Offline&quot;</span>)
	      Err.Clear
	<span style="color: #000080;">Else</span>
		<span style="color: #000080;">Set</span> objWMIService = GetObject _
			(<span style="color: #800000;">&quot;winmgmts:\\&quot;</span> &amp; strComputer &amp; <span style="color: #800000;">&quot;\root\cimv2&quot;</span>)
		<span style="color: #000080;">Set</span> colOperatingSystems = objWMIService.ExecQuery _
			(<span style="color: #800000;">&quot;Select * from Win32_OperatingSystem&quot;</span>)
		<span style="color: #000080;">For</span> <span style="color: #000080;">Each</span> objOS <span style="color: #000080;">in</span> colOperatingSystems
			dtmBootup = objOS.LastBootUpTime
			dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
			dtmSystemUptime = DateDiff(<span style="color: #800000;">&quot;h&quot;</span>, dtmLastBootUpTime, Now()) 
		<span style="color: #000080;">Next</span>
		<span style="color: #000080;">Set</span> objWMIService = GetObject _
			(<span style="color: #800000;">&quot;winmgmts:\\&quot;</span> &amp; strComputer &amp; <span style="color: #800000;">&quot;\root\cimv2&quot;</span>)
		<span style="color: #000080;">Set</span> colComputerSys = objWMIService.ExecQuery _
			(<span style="color: #800000;">&quot;Select UserName from Win32_ComputerSystem&quot;</span>)
		<span style="color: #000080;">For</span> <span style="color: #000080;">Each</span> objCS <span style="color: #000080;">in</span> colComputerSys
			username = objCS.UserName
			logStream.writeline(strComputer &amp; <span style="color: #800000;">&quot;,Online,&quot;</span> &amp; dtmSystemUptime &amp; <span style="color: #800000;">&quot;,&quot;</span> &amp; dtmLastBootupTime &amp; <span style="color: #800000;">&quot;,&quot;</span> &amp; username) 
		<span style="color: #000080;">Next</span>
&nbsp;
	<span style="color: #000080;">End</span> <span style="color: #000080;">If</span>
	logStream.<span style="color: #000080;">Close</span>
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span>
<span style="color: #000080;">Function</span> WMIDateStringToDate(dtmBootup)
    WMIDateStringToDate = <span style="color: #000080;">CDate</span>(Mid(dtmBootup, 5, 2) &amp; <span style="color: #800000;">&quot;/&quot;</span> &amp; _
         Mid(dtmBootup, 7, 2) &amp; <span style="color: #800000;">&quot;/&quot;</span> &amp; Left(dtmBootup, 4) _
         &amp; <span style="color: #800000;">&quot; &quot;</span> &amp; Mid (dtmBootup, 9, 2) &amp; <span style="color: #800000;">&quot;:&quot;</span> &amp; _
         Mid(dtmBootup, 11, 2) &amp; <span style="color: #800000;">&quot;:&quot;</span> &amp; Mid(dtmBootup, _
         13, 2))
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.waynezim.com/2009/07/report-workstation-uptime-in-a-csv-using-active-directory-and-vbs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Remove Old Cached Roaming Profiles from Workstations</title>
		<link>http://www.waynezim.com/2009/06/how-to-remove-old-cached-roaming-profiles-from-workstations/</link>
		<comments>http://www.waynezim.com/2009/06/how-to-remove-old-cached-roaming-profiles-from-workstations/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 17:20:55 +0000</pubDate>
		<dc:creator>Wayne Zimmerman</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Cached]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Profiles]]></category>
		<category><![CDATA[Roaming]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[vbs]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://www.waynezim.com/?p=238</guid>
		<description><![CDATA[Earlier this year I was tasked with cleaning up the workstations on our network to help reduce the amount of time needed for our daily virus scan to complete. One of the issues I took on was cleaning up old cached profiles from the use of roaming profiles. This was not something I wanted to [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier this year I was tasked with cleaning up the workstations on our network to help reduce the amount of time needed for our daily virus scan to complete. One of the issues I took on was cleaning up old cached profiles from the use of roaming profiles. This was not something I wanted to do manually for the 150 PCs that we have across our building, so I made a script that would look for profiles that had not been modified in the last 90 days and wasn&#8217;t a system account (localservice, networkservice, default user, all users). Also, an advantage of using a script to do this is it can produce a report of what it will remove without actually doing it. That way you can be sure that you are not deleting things that you do want to keep.</p>
<p>This script does depending on file and print sharing being turned on for the workstation so the script can access the administrative shares on each computer. It does make the assumption that your profiles are saved in the default windows location <em>C:\Documents and Settings\%username%</em> and that you are the administrator for the domain.</p>
<p><b>Configuration</b>
<ol>
<li>Be sure to update the LDAP string <code>'LDAP://OU=workstations,DC=subdomain,DC=domain,DC=com'</code> to match your Active Directory structure. The script needs to know where all the workstation are in Active Directory</li>
<li>Find <code>objConnection.Open "DomainController"</code> and modify the put your Domain Controller in place of <em>DomainController</em></li>
<li>Find <code>	OldProfile objRecordSet.Fields("Name").Value, "C:\deletedprofiles.csv"</code> and modify the filename to save the file where you and and named what you want, just be sure to leave the extension as CSV so it will open properly with your spreadsheet application.</li>
<li>Most Importantly &#8211; Comment out <code>fsoFolder.DeleteFolder objSubfolder, TRUE</code> if you just want a report of what it will delete when run, if not it is currently setup to remove the unwanted profiles</li>
</ol>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left2">Download <a href="http://www.waynezim.com/wp-content/plugins/wp-codebox/wp-codebox.php?p=238&amp;download=RemoveOldCachedProfiles.vbs">RemoveOldCachedProfiles.vbs</a></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2386"><td class="code" id="p238code6"><pre class="vb" style="font-family:monospace;"><span style="color: #000080;">Const</span> ADS_SCOPE_SUBTREE = 2
&nbsp;
<span style="color: #000080;">Set</span> objConnection = CreateObject(<span style="color: #800000;">&quot;ADODB.Connection&quot;</span>)
<span style="color: #000080;">Set</span> objCommand =   CreateObject(<span style="color: #800000;">&quot;ADODB.Command&quot;</span>)
objConnection.Provider = <span style="color: #800000;">&quot;ADsDSOObject&quot;</span>
objConnection.<span style="color: #000080;">Open</span> <span style="color: #800000;">&quot;shs-login&quot;</span>
&nbsp;
<span style="color: #000080;">Set</span> objCOmmand.ActiveConnection = objConnection
objCommand.CommandText = _
    <span style="color: #800000;">&quot;Select Name, Location from 'LDAP://OU=workstations,DC=subdomain,DC=domain,DC=com' &quot;</span> _
        &amp; <span style="color: #800000;">&quot;Where objectClass='computer'&quot;</span>  
objCommand.Properties(<span style="color: #800000;">&quot;Page Size&quot;</span>) = 1000
objCommand.Properties(<span style="color: #800000;">&quot;Searchscope&quot;</span>) = ADS_SCOPE_SUBTREE 
<span style="color: #000080;">Set</span> objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
&nbsp;
<span style="color: #000080;">Do</span> <span style="color: #000080;">Until</span> objRecordSet.EOF
	OldProfile objRecordSet.Fields(<span style="color: #800000;">&quot;Name&quot;</span>).Value, <span style="color: #800000;">&quot;C:\deletedprofiles.csv&quot;</span>
    objRecordSet.MoveNext
<span style="color: #000080;">Loop</span>
&nbsp;
<span style="color: #000080;">Sub</span> OldProfile(strComputer, strFilename)
	<span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">Resume</span> <span style="color: #000080;">Next</span>
	<span style="color: #000080;">Set</span> StdOut = WScript.StdOut
&nbsp;
	<span style="color: #000080;">Set</span> objFSO = CreateObject(<span style="color: #800000;">&quot;scripting.filesystemobject&quot;</span>)
	<span style="color: #000080;">Set</span> logStream = objFSO.opentextfile(strFilename, 8, <span style="color: #000080;">True</span>)
&nbsp;
	<span style="color: #000080;">Set</span> oReg=GetObject(<span style="color: #800000;">&quot;winmgmts:{impersonationLevel=impersonate}!\\&quot;</span> &amp; strComputer &amp; <span style="color: #800000;">&quot;\root\default:StdRegProv&quot;</span>)
	<span style="color: #000080;">If</span> Err.Number <span style="color: #000080;">Then</span>
	      logStream.writeline(strComputer &amp; <span style="color: #800000;">&quot;,Offline&quot;</span>)
	      Err.Clear
	<span style="color: #000080;">Else</span>
		<span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">Resume</span> <span style="color: #000080;">Next</span>
		<span style="color: #000080;">Set</span> objShell = CreateObject(<span style="color: #800000;">&quot;Shell.Application&quot;</span>)
		<span style="color: #000080;">Set</span> fsoFolder = CreateObject(<span style="color: #800000;">&quot;Scripting.FileSystemObject&quot;</span>)
&nbsp;
		root = <span style="color: #800000;">&quot;\\&quot;</span> &amp; strComputer &amp;<span style="color: #800000;">&quot;\C$\Documents and Settings&quot;</span>
&nbsp;
		<span style="color: #000080;">Set</span> objFolder = fsoFolder.GetFolder(root)
		<span style="color: #000080;">Set</span> colSubfolders = objFolder.Subfolders
&nbsp;
			<span style="color: #000080;">For</span> <span style="color: #000080;">Each</span> objSubfolder <span style="color: #000080;">in</span> colSubfolders
				<span style="color: #000080;">If</span> (lcase(objSubfolder.Name) &lt;&gt; <span style="color: #800000;">&quot;localservice&quot;</span> <span style="color: #000080;">AND</span> lcase(objSubfolder.Name) &lt;&gt; <span style="color: #800000;">&quot;networkservice&quot;</span>_
					<span style="color: #000080;">AND</span> lcase(objSubfolder.Name) &lt;&gt; <span style="color: #800000;">&quot;default user&quot;</span> <span style="color: #000080;">AND</span> lcase(objSubfolder.Name) &lt;&gt; <span style="color: #800000;">&quot;all users&quot;</span>) <span style="color: #000080;">then</span>
&nbsp;
						<span style="color: #000080;">If</span> (DateDiff(<span style="color: #800000;">&quot;D&quot;</span>, objSubfolder.DateLastModified, <span style="color: #000080;">Date</span>()) &gt; 90) <span style="color: #000080;">then</span>
							logStream.writeline(strComputer &amp; <span style="color: #800000;">&quot;,Online,Delete,&quot;</span> &amp; objSubfolder &amp; <span style="color: #800000;">&quot;,&quot;</span> &amp; objSubfolder.DateLastModified)
							fsoFolder.DeleteFolder objSubfolder, <span style="color: #000080;">TRUE</span>
						<span style="color: #000080;">else</span>
							logStream.writeline(strComputer &amp; <span style="color: #800000;">&quot;,Online,Active,&quot;</span> &amp; objSubfolder &amp; <span style="color: #800000;">&quot;,&quot;</span> &amp; objSubfolder.DateLastModified)
						<span style="color: #000080;">End</span> <span style="color: #000080;">If</span>
&nbsp;
				<span style="color: #000080;">else</span>
					logStream.writeline(strComputer &amp; <span style="color: #800000;">&quot;,Online,System,&quot;</span> &amp; objSubfolder &amp; <span style="color: #800000;">&quot;,&quot;</span> &amp; objSubfolder.DateLastModified)
				<span style="color: #000080;">End</span> <span style="color: #000080;">If</span>
			<span style="color: #000080;">Next</span>
	<span style="color: #000080;">End</span> <span style="color: #000080;">If</span>
	logStream.<span style="color: #000080;">Close</span>
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.waynezim.com/2009/06/how-to-remove-old-cached-roaming-profiles-from-workstations/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>How To Securely Wipe A Hard Drive</title>
		<link>http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/</link>
		<comments>http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 15:19:32 +0000</pubDate>
		<dc:creator>Wayne Zimmerman</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[bios]]></category>
		<category><![CDATA[boot]]></category>
		<category><![CDATA[Command Line]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Darik's Boot and Nuke]]></category>
		<category><![CDATA[dban]]></category>
		<category><![CDATA[DoD 5220.22-M]]></category>
		<category><![CDATA[ubcd]]></category>
		<category><![CDATA[wipe]]></category>

		<guid isPermaLink="false">http://www.waynezim.com/?p=212</guid>
		<description><![CDATA[There always comes a time when you are replacing the old with the new, but the real question is what to do with the old. Usually computers get resold, given away or recycled, however all of these things could lead to a compromise in information security. The easiest way to prevent this from happening is [...]]]></description>
			<content:encoded><![CDATA[<p>There always comes a time when you are replacing the old with the new, but the real question is what to do with the old. Usually computers get resold, given away or recycled, however all of these things could lead to a compromise in information security. The easiest way to prevent this from happening is to wipe the hard drive with a DoD Compliant wipe. The easiest way to get this done is to use a great free program called <a href="http://www.dban.org/">Darik&#8217;s Boot and Nuke</a>. This program allows you to boot a computer and nuke the hard drive from being recovered using computer forensics. However rather than just burning this one program on a CD I would suggest downloading the <a href="http://www.ultimatebootcd.com/">Ultimate Boot CD</a>. This CD contains tons of great utilities for troubleshooting and working on PCs and should be a part of any administrators toolkit.
<ul>
<li>Well to get started wiping your old PCs hard drive, you will need to burn the Ultimate Boot CD to a CD and boot to it by either changing the boot order in the bios or getting to a boot menu where you can select which device to boot.</li>
<li>The first screen you should see once you have successfully booted to the CD will ask you to press enter to boot to the UBCD.</li>
<li>Next you need to select &#8220;Hard Drive Tools&#8221; then &#8220;Wiping Tools&#8221; and finally &#8220;Darik&#8217;s Boot and Nuke V1.0.7&#8243;. Once there it will take a minute to load, if it doesn&#8217;t it may not support your hardware / hard drive. However I haven&#8217;t run across a computer that it wouldn&#8217;t wipe. </li>
<li>Once it loads up hit the (M) key to select method and change it to your preference, I typically use the &#8220;DoD 5220.22-M&#8221; method because this is what the military uses, and if it is good enough for them it is good enough for me.</li>
<li> Once selected, be sure to press the space bar and select the drive or drives you wish to wipe and then press F10 which will let wiping commence. </li>
</ul>
<p>Now go grab some dinner with a friend or a frosty adult beverage at the local tavern because it will be a while before it is complete (depending on the size of your drive).
<p>Here are some screen shots that should help you step though the different screen just in case you get lost.
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-8/' title='dban-8'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-8-150x150.png" class="attachment-thumbnail" alt="dban-8" title="dban-8" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-7/' title='dban-7'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-7-150x150.png" class="attachment-thumbnail" alt="dban-7" title="dban-7" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-6/' title='dban-6'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-6-150x150.png" class="attachment-thumbnail" alt="dban-6" title="dban-6" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-5/' title='dban-5'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-5-150x150.png" class="attachment-thumbnail" alt="dban-5" title="dban-5" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-4/' title='dban-4'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-4-150x150.png" class="attachment-thumbnail" alt="dban-4" title="dban-4" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-3/' title='dban-3'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-3-150x150.png" class="attachment-thumbnail" alt="dban-3" title="dban-3" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-2/' title='dban-2'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-2-150x150.png" class="attachment-thumbnail" alt="dban-2" title="dban-2" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-1/' title='dban-1'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-1-150x150.png" class="attachment-thumbnail" alt="dban-1" title="dban-1" /></a>
<a href='http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/dban-0/' title='dban-0'><img width="150" height="150" src="http://www.waynezim.com/wp-content/uploads/2009/06/dban-0-150x150.png" class="attachment-thumbnail" alt="dban-0" title="dban-0" /></a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.waynezim.com/2009/06/how-to-securely-wipe-a-hard-drive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Allow Users on Domain to Control Power Settings</title>
		<link>http://www.waynezim.com/2009/04/allow-users-on-domain-to-control-power-settings/</link>
		<comments>http://www.waynezim.com/2009/04/allow-users-on-domain-to-control-power-settings/#comments</comments>
		<pubDate>Thu, 09 Apr 2009 15:55:07 +0000</pubDate>
		<dc:creator>Wayne Zimmerman</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Command Line]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Domain]]></category>
		<category><![CDATA[Group Policy]]></category>
		<category><![CDATA[regexe.ini]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Startup]]></category>

		<guid isPermaLink="false">http://www.waynezim.com/?p=20</guid>
		<description><![CDATA[In some domain environments you need to allow some control back to the users where they can manage it best. A perfect example of this is Power Settings, by default a normal domain user does not have the rights to control the power settings on the PC. This can lead to the computer turning off [...]]]></description>
			<content:encoded><![CDATA[<p>In some domain environments you need to allow some control back to the users where they can manage it best. A perfect example of this is Power Settings, by default a normal domain user does not have the rights to control the power settings on the PC. This can lead to the computer turning off the monitor or going to standby at inopportune times. A way to solve this problem is by modifying the registry so any user authenticated / interactive user can modify these settings. To do this you need to use the regini.exe, it allows you to modify permissions in the registry from command line. Basically anything under registry key: (HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\) need to be given permissions to be modify by the user. Below I have included some code that needs to be placed in a text file for parameters to pass to regini.exe during workstation start up.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left2">Download <a href="http://www.waynezim.com/wp-content/plugins/wp-codebox/wp-codebox.php?p=20&amp;download=allowpowerconfig.txt">allowpowerconfig.txt</a></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p208"><td class="code" id="p20code8"><pre class="text" style="font-family:monospace;">HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\GlobalPowerPolicy [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies\0 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies\1 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies\2 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies\3 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies\4 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\PowerPolicies\5 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies\0 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies\1 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies\2 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies\3 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies\4 [1 5 7 11 17 21]
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg\ProcessorPolicies\5 [1 5 7 11 17 21]</pre></td></tr></table></div>

<p>Once you have this file made save it Machine Startup Scripts directory for Group Policy. Then add the following entry to the Group Policy (shown below) and the users should now be able to modify their computers power settings.<br /><div id="attachment_21" class="wp-caption alignnone" style="width: 394px"><img src="http://www.waynezim.com/wp-content/uploads/2009/04/regini-gp.gif" alt="Regini.exe with Parameter" title="regini-gp" width="384" height="195" class="size-full wp-image-21" /><p class="wp-caption-text">Regini.exe with Parameter</p></div><br />For more detail on parameters or what exactly regini.exe can do for you hop on over to <a href="http://support.microsoft.com/kb/237607">Microsoft KB 237607</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.waynezim.com/2009/04/allow-users-on-domain-to-control-power-settings/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

