<?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>yakk0.org &#187; Windows</title>
	<atom:link href="http://www.yakk0.org/tag/windows/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yakk0.org</link>
	<description>a blog on technology in the real world</description>
	<lastBuildDate>Sun, 05 Sep 2010 08:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Path variables in batch files</title>
		<link>http://www.yakk0.org/2010/04/22/path-variables-in-batch-files/</link>
		<comments>http://www.yakk0.org/2010/04/22/path-variables-in-batch-files/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 15:42:33 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[batch]]></category>
		<category><![CDATA[sccm 2007]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.yakk0.org/2010/04/22/path-variables-in-batch-files/</guid>
		<description><![CDATA[This is another post documenting something I used to fix a problem at work so I don’t forget about it. We were pushing out Firefox to all our systems yesterday via SCCM. It’s pushed out using a batch file to configure various things, and I noticed that although the batch file was being called from [...]]]></description>
			<content:encoded><![CDATA[<p>This is another post documenting something I used to fix a problem at work so I don’t forget about it. We were pushing out Firefox to all our systems yesterday via SCCM. It’s pushed out using a batch file to configure various things, and I noticed that although the batch file was being called from the dozen or so distribution points we have, the script was calling back to the main server. I’ve seen this before but never looked into a solution. I started searching for a variable or a way to get the path the script is run from and found <a href="http://www.myitforum.com/articles/8/view.asp?id=12036">this article</a> posted in 2008 on <a href="http://myITforum.com">myITforum.com</a>. It is addressing the exact situation I was encountering. </p>
<p> <span id="more-299"></span>
<p>In short I needed to use the variable <em>%~dp0</em> before the items on the distribution point share. For example I changed <em>“\\SCCM\packages\MozillaFirefox\Firefox Setup 3.6.3.exe”</em> in the script to <em>“%~dp0\Firefox Setup 3.6.3.exe.” </em>I tested it with a test script that echoed out the commands instead of running them, and the paths were correct. </p>
<p>The myITforum article goes into further detail about the other uses of this variable. It’s actually a modification of the %0, %1, %2 convention of dos batch files for referencing command-line arguments. %0 references the script itself, including the full drive and path, %1 is the first argument, and %2 is the second, and so on. The <em>“~d”</em> modifier before the number 0 resolves the variable to the drive letter only and <em>“~p”</em> would resolve it to the path only. Combining the two into&#160; <em>“~dp”</em> resolves it into drive and the path, or in this case the full UNC path. More information can be found by typing <em>“FOR /?”</em> from a command prompt.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yakk0.org/2010/04/22/path-variables-in-batch-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PowerShell: Add printers to DNS</title>
		<link>http://www.yakk0.org/2010/03/08/powershell-add-printers-to-dns/</link>
		<comments>http://www.yakk0.org/2010/03/08/powershell-add-printers-to-dns/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 20:55:52 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[active directory]]></category>
		<category><![CDATA[administration]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.yakk0.org/?p=281</guid>
		<description><![CDATA[I realized today that most of our printers at work did not have DNS entries. This isn’t a big problem for users because they’re on our print server and they get their printers through Group Policy. The Print server has each printer set up to the IPs. We just implemented a management system today, and [...]]]></description>
			<content:encoded><![CDATA[<p>I realized today that most of our printers at work did not have DNS entries. This isn’t a big problem for users because they’re on our print server and they get their printers through Group Policy. The Print server has each printer set up to the IPs. We just implemented a management system today, and it lists the printers by IP and because the DNS entries were “Unknown” for most of them, it wasn’t easy to determine what printer we were looking at.</p>
<p>I found several PowerShell examples on the web for interacting with Microsoft DNS servers, and took a bit from each to come up with this script. It takes the shared printer name and publishes that as the DNS name. This does cause a problem if you have spaces in a share name, but our environment doesn’t, so I didn’t program for that issue.</p>
<p>Here’s the script:</p>
<p><span id="more-281"></span></p>
<p style="font-family: consolas,lucida console; background: #fcfcfc; font-size: 8pt; padding: 5px;"><span style="color: #00008b;">Function</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Add-ARecord</span><br />
<span style="color: #000000;">{</span><br />
<span style="color: #000000;"> </span><span style="color: #0000ff;">Write-Host</span><span style="color: #000000;"> </span><span style="color: #000080;">-ForegroundColor</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">DarkCyan</span><span style="color: #000000;"> </span><span style="color: #8b0000;">&#8220;Importing Printer information&#8221;</span><br />
<span style="color: #000000;"> </span><span style="color: #006400;"># Imports all printers from Print Server</span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$printers</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">(</span><span style="color: #0000ff;">get-WmiObject</span><span style="color: #000000;"> </span><span style="color: #000080;">-class</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$Class</span><span style="color: #000000;"> </span><span style="color: #000080;">-computername</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$printSvr</span><span style="color: #000000;">)</span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$Arecord</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #008080;">[WmiClass]</span><span style="color: #8b0000;">&#8220;\\$dnsSvr\root\MicrosoftDNS:MicrosoftDNS_AType&#8221;</span><span style="color: #000000;"> </span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$class</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">1</span><span style="color: #000000;"> </span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$ttl</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">3600</span><span style="color: #000000;"> </span><span style="color: #006400;"># Time-To-Live in seconds</span><br />
<span style="color: #000000;"> </span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$printers</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">ForEach-Object</span><span style="color: #000000;">{</span><br />
<span style="color: #000000;"> </span><span style="color: #0000ff;">Get</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">the</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">name</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">of</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">the</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Shared</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Printer</span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$name</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">ShareName</span><span style="color: #000000;"> </span><br />
<span style="color: #000000;"> </span><span style="color: #006400;"># Get IP information from TCP/IP port</span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$address</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">portname</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Replace</span><span style="color: #000000;">(</span><span style="color: #8b0000;">&#8220;IP_&#8221;</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;"> </span><span style="color: #8b0000;">&#8220;&#8221;</span><span style="color: #000000;">)</span><span style="color: #000000;"> </span><span style="color: #000000;"> </span><span style="color: #006400;"># output variables for testing</span><br />
<span style="color: #000000;"> </span><span style="color: #006400;">#write-host -ForegroundColor Yellow $server, $zone, $name, $class, $ttl, $address </span><br />
<span style="color: #000000;"> </span><br />
<span style="color: #000000;"> </span><span style="color: #006400;"># create DNS A Records</span><br />
<span style="color: #000000;"> </span><span style="color: #ff4500;">$Arecord</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">CreateInstanceFromPropertydata</span><span style="color: #000000;">(</span><span style="color: #ff4500;">$server</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$zone</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$name</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$class</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$ttl</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$address</span><span style="color: #000000;">)</span><span style="color: #000000;"> </span><br />
<span style="color: #000000;"> </span><span style="color: #000000;">}</span><br />
<span style="color: #000000;">}</span></p>
<p><span style="color: #ff4500;">$Class</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #8b0000;">&#8220;win32_printer&#8221;</span><span style="color: #000000;"> </span><span style="color: #006400;"># WMI class for printers</span><br />
<span style="color: #006400;"># Change to suit your environment</span><br />
<span style="color: #ff4500;">$printSvr</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #8b0000;">&#8220;printsvr&#8221;</span><span style="color: #000000;"> </span><span style="color: #006400;"># Print server</span><br />
<span style="color: #ff4500;">$dnsSvr</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #8b0000;">&#8220;dnssvr&#8221;</span><span style="color: #000000;"> </span><span style="color: #006400;"># DNS Server</span><br />
<span style="color: #ff4500;">$zone</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #8b0000;">&#8220;dnszone&#8221;</span><span style="color: #000000;"> </span><span style="color: #006400;"># DNS Zone</span></p>
<p><span style="color: #0000ff;">Add-ARecord</span></p>
<p>[edit] A couple people left comments that this didn&#8217;t work for them, and I was unable to get it to work for me again. I swear it worked the day I needed it. If anyone can tell me why it doesn&#8217;t work now, I&#8217;d appreciate it.</p>
<p style="font-family: consolas,lucida console; background: #fcfcfc; font-size: 8pt; padding: 5px;">
]]></content:encoded>
			<wfw:commentRss>http://www.yakk0.org/2010/03/08/powershell-add-printers-to-dns/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>blocking IE6</title>
		<link>http://www.yakk0.org/2009/12/07/blocking-ie6/</link>
		<comments>http://www.yakk0.org/2009/12/07/blocking-ie6/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 22:02:26 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[complaining]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.yakk0.org/?p=249</guid>
		<description><![CDATA[Let’s get this out of the way first…I think that IE6 is a horrible browser. Now that that’s done, the sad truth is that many of us have to deal with IE6 on a daily basis. The school district I work for still has one quarter of the computers running Windows 2000. They have been [...]]]></description>
			<content:encoded><![CDATA[<p>Let’s get this out of the way first…I think that IE6 is a horrible browser. </p>
<p>Now that that’s done, the sad truth is that many of us have to deal with IE6 on a daily basis. The school district I work for still has one quarter of the computers running Windows 2000. They have been updating the hardware, but for political reasons were unable to update the operating system for a few years. When I started last January they were halfway through a migration to Vista and had skipped XP entirely. However, there is still 1/4 of the district to go so we’re supporting IE6 for another 7 months or so.</p>
<p> <span id="more-249"></span>
</p>
<p>Today I was covering the helpdesk phone and a user called in unable to get to the website for another school district in the area. That district was running a WordPress <a href="http://www.incerteza.org/blog/projetos/shockingly-big-ie6-warning/" target="_blank">plugin</a> that completely prevents IE6 from accessing the site. This is what my user saw:</p>
<p><a href="http://www.yakk0.org/wordpress/wp-content/uploads/2009/12/ieblock.png"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ieblock" border="0" alt="ieblock" src="http://www.yakk0.org/wordpress/wp-content/uploads/2009/12/ieblock_thumb.png" width="244" height="166" /></a></p>
<p>In my opinion, the administrators for a public school district’s website have the obligation to make the site as accessible as possible. The browser preferences of the site admins should not be allowed to prevent access to the site. If it was a decision by the district administration and not the IT administration, it’s even more stupid. It wouldn’t have bothered me if there was still a way for the older browser to access the site, but they completely block it preventing access by people that have no control over their browser version.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yakk0.org/2009/12/07/blocking-ie6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing IT problems with a hammer</title>
		<link>http://www.yakk0.org/2009/11/20/fixing-it-problems-with-a-hammer/</link>
		<comments>http://www.yakk0.org/2009/11/20/fixing-it-problems-with-a-hammer/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 19:35:40 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[active directory]]></category>
		<category><![CDATA[administration]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.yakk0.org/2009/11/20/fixing-it-problems-with-a-hammer/</guid>
		<description><![CDATA[In a continuing process of cleaning up horrible decisions by our predecessors, we just moved a website off one of our domain controllers. The website was moving from IIS6 to 7 (or 7.5, whatever comes with Server 2008 R2), and it required some tweaking to start working again. One of the parts that didn’t work [...]]]></description>
			<content:encoded><![CDATA[<p>In a continuing process of cleaning up horrible decisions by our predecessors, we just moved a website off one of our domain controllers. The website was moving from IIS6 to 7 (or 7.5, whatever comes with Server 2008 R2), and it required some tweaking to start working again. One of the parts that didn’t work was a self-help page where teachers could unlock student accounts. I set up this web server, and created a service account for it that doesn’t have any special rights on the domain. Because the website runs in IIS as this service account, it could query the domain with no problems, but it didn’t have the rights to unlock accounts. </p>
<p>This is obviously where I differ from a coworker…</p>
<blockquote><p>him: “Just add the service account to Domain Admins”</p>
<p>me: “Why would I want to do that?”</p>
</blockquote>
<p>In the end I remembered I can delegate just the permissions needed to unlock our student accounts to that service account and it works fine. </p>
<p>Why use a hammer when you only need a tiny screwdriver?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yakk0.org/2009/11/20/fixing-it-problems-with-a-hammer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>quick Windows 7 tip</title>
		<link>http://www.yakk0.org/2009/05/18/quick-windows-7-tip/</link>
		<comments>http://www.yakk0.org/2009/05/18/quick-windows-7-tip/#comments</comments>
		<pubDate>Mon, 18 May 2009 16:16:55 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA["windows 7"]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.yakk0.org/2009/05/18/quick-windows-7-tip/</guid>
		<description><![CDATA[Found a quick workaround for my complaint that you can’t pin items that are on network shares to the Windows 7 taskbar. All you have to do is create a folder for shortcuts to all the items, create a new toolbar on the taskbar using that folder. It shows up like the old Quicklaunch toolbar, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.yakk0.org/wordpress/wp-content/uploads/2009/05/toolbar.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="toolbar" border="0" alt="toolbar" align="right" src="http://www.yakk0.org/wordpress/wp-content/uploads/2009/05/toolbar-thumb.png" width="88" height="484" /></a>Found a quick workaround for my <a href="http://twitter.com/yakk0dotorg/statuses/1795818567">complaint</a> that you can’t pin items that are on network shares to the Windows 7 taskbar. All you have to do is create a folder for shortcuts to all the items, create a new toolbar on the taskbar using that folder. It shows up like the old Quicklaunch toolbar, and creates a separate icon on the taskbar when the app is launched, but it kinda solves my problem.</p>
<p> Here’s the steps: </p>
<ol>
<li>Create a new folder with shortcuts to the applications you can’t pin.</li>
<li>Right click taskbar and unlock it.</li>
<li>Right click the taskbar again, select toolbars, then select “New toolbar.”</li>
<li>Browse to the folder you created, and click “select folder.&quot;</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.yakk0.org/2009/05/18/quick-windows-7-tip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
