<?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>devtrends.com &#187; Windows XP</title>
	<atom:link href="http://www.devtrends.com/index.php/category/microsoft-os/windows-xp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devtrends.com</link>
	<description>developing trends in information technology</description>
	<lastBuildDate>Tue, 06 Sep 2011 19:27:42 +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>Centralized Desktop and Favorites with a Centralized My Documents?</title>
		<link>http://www.devtrends.com/index.php/centralized-desktop-and-favorites-with-a-centralized-my-documents/</link>
		<comments>http://www.devtrends.com/index.php/centralized-desktop-and-favorites-with-a-centralized-my-documents/#comments</comments>
		<pubDate>Sun, 01 Aug 2010 02:25:37 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[VBScript]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Windows Server 2003]]></category>
		<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[centralized desktop]]></category>
		<category><![CDATA[centralized favorites]]></category>
		<category><![CDATA[migrate desktop]]></category>
		<category><![CDATA[migrate favorites]]></category>

		<guid isPermaLink="false">http://www.devtrends.com/?p=592</guid>
		<description><![CDATA[What about Desktop and Favorites migration? Wouldn’t it be nice if there was a GPO that made the migration of your user’s Desktop and Favorites as easy as the migration...]]></description>
			<content:encoded><![CDATA[<p>What about Desktop and Favorites migration? Wouldn’t it be nice if there was a GPO that made the migration of your user’s Desktop and Favorites as easy as the migration of their My Documents? I think it would be nice. Since there isn’t, I created a script that would do the migration. This script should be run following a successful My Documents migration as the goal would be to put the files in the same location as the My Documents files.</p>
<p>When I first started the project, I was hoping that my script would run prior to showing the desktop. This is important because if it runs while the user has access to the desktop, that user may start using files that would prevent the script from running correctly (file locks). I had no luck; if anyone has an idea on how to do this, let me know. Otherwise, I created a .NET application that covers the entire screen on the primary monitor (if more than 1 monitor, then the second one is still visible).</p>
<p><strong>BlankScreen</strong></p>
<p>The BlankScreen application is written in VisualStudio .NET 2008 using .NET Framework 2.0 if I remember correctly. There are some changes you may want to make on this application to tailor it for your environment. The first change would be to put your logo on the application form. The second change, and really the more important change, is to change the ProcessPath variable to point to the UNC path of where you plan on putting the desktop.vbs file. This application just runs the VBScript.</p>
<p><a href="http://www.devtrends.com/wp-content/uploads/2010/07/BlankScreen.jpg"><img class="alignnone size-medium wp-image-593" title="BlankScreen" src="http://www.devtrends.com/wp-content/uploads/2010/07/BlankScreen-300x236.jpg" alt="" width="300" height="236" /></a></p>
<p>So you might be thinking, why would you have an application that is capable of much more advanced programming run a VBScript? Well, I wrote the script first and didn’t feel like porting it to VB.NET. If you feel like spending the time, go for it.</p>
<p><strong>desktop.vbs</strong></p>
<p>Enough chatter about the other stuff, on to the real product of this blog post, the VBScript.</p>
<p>The VBScript has four basic functions that it completes one after the other based on the success of the previous function. Step 1 is to get the username of the logged in user. Step 2 is to create the folders in the user’s My Documents location and copy the files into that new folders (nothing is moved). Step 3 is to update the registry for the Desktop and Favorites locations to the newly created folders. Step 4 renames the old folders in the C:\Documents and Settings\[user]\ folder to DesktopOLD and FavoritesOLD. I feared losing user files, so I did not make the script perform anything that couldn’t be reversed.</p>
<p>Just as you had to change a string variable in the BlankScreen application for your specific server, you also have to change the location of your user’s folder on the network. In my case it was \\fileserver\users\.</p>
<p><a href="http://www.devtrends.com/wp-content/uploads/2010/07/desktop_vbs.jpg"><img class="alignnone size-medium wp-image-594" title="desktop_vbs" src="http://www.devtrends.com/wp-content/uploads/2010/07/desktop_vbs-300x257.jpg" alt="" width="300" height="257" /></a></p>
<p>The migration will change the registry keys:</p>
<pre>HKCR\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, Favorites
HKCR\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, Desktop
HKCR\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders, Favorites
HKCR\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders, Desktop</pre>
<p>The new locations will look something like this:</p>
<p>Desktop: \\[server]\[share]\[username]\Desktop-[username]<br />
Favorites: \\[server]\[share]\[username]\Favorites-[username]<br />
e.g. \\fileserver\users\aaron\Desktop-aaron\ would be my desktop folder.</p>
<p><strong>Conclusion</strong></p>
<p>Implementing this solution is fairly easy. First modify the VB.NET application and compile it. Place the .exe file in a shared location that your login script for users has permissions. Place the VBScript file in a similar location, as you specified in the VB.NET application, and modify the serverpath variable and email variables. Test with your user account in your login script batch file using something similar to below:</p>
<pre>if %USERNAME% == yourusername (
 rem lets make sure the user has a my documents folder prior to trying to migrate their desktop
 if exist "\\[server]\Users\%USERNAME%" (
  if exist "C:\Documents and Settings\%USERNAME%\Desktop" (
   rem lets make sure they have the 2.0 Framework installed.
   if exist "C:\Windows\Microsoft.Net\Framework\v2.0*" (
    start "Desktop Migration" "\\[server]\[share]\blankscreen.exe"
   )
  )
 )
)</pre>
<p>As a disclaimer, the application AND script are provided without any warranty and is only for educational / informational purposes. If you choose to use it in your environment, production or not, the outcome is your responsibility.</p>
<p><strong>desktop.vbs Code</strong></p>
<pre>On Error Resume Next

'alert user of what is happening...
MsgBox "Please click OK to begin the backup process for your Desktop and Internet Explorer Favorites.  This process could take a few minutes, please be patient and Do NOT Cancel anything, otherwise data could be lost!" &amp; vbCrLf &amp; vbCrLf &amp; "If you have Administrator privileges, your computer will restart after all of your files have been copied!"

'get the current user
user = getUser()
'set the server location, the following \ is required!
serverpath = "\\[server]\Users\"
'if you have a helpdesk solution with email capability:
useemailnotify = 0
smtpfrom = "email@domain.com"
smtpto = "email@domain.com"
smtpserver = "smtp.domain.com"

'create folders
m_cf = createFolderscopyFiles(user)
If m_cf &lt;&gt; 1 Then
	'update the registry and reboot
	m_ur = updateRegistry(user)
	If m_ur &lt;&gt; 1 Then
		'rename the old folders so it does not use them anymore!
		m_rof = renameOldFolders(user)
		'reboot
		Set WSHShell = WScript.CreateObject("WScript.Shell")
		WshShell.Run "C:\WINDOWS\system32\shutdown.exe -r -t 0"
	End If
End If

Function getUser()
	'get the current user environment variable.
	Set oShell = CreateObject( "WScript.Shell" )
	user = oShell.ExpandEnvironmentStrings("%UserName%")

	If Err.Number &lt;&gt; 0 Then
		'we have failure!
		getUser = 1
		Err.Clear
	Else
		getUser = user
	End If
End Function

Function createFolderscopyFiles(user)
	Set objFSO = CreateObject("Scripting.FileSystemObject")

	'lets only do the folder create and file copy if that folder doesn't already exist. Otherwise, its just gonna set the registry and reboot.
	If Not objFSO.FolderExists(serverpath &amp; user &amp; "\Desktop-" &amp; user) Then
		'Create the new Desktop and the Favorites folder.
		objFSO.CreateFolder(serverpath &amp; user &amp; "\Desktop-" &amp; user)
		objFSO.CreateFolder(serverpath &amp; user &amp; "\Favorites-" &amp; user)

		Set oSHApp = CreateObject("Shell.Application")

		'Copy the Desktop files
		Set fromDFolder = oSHApp.Namespace("C:\Documents and Settings\" &amp; user &amp; "\Desktop")
		Set toDFolder = oSHApp.Namespace(serverpath &amp; user &amp; "\Desktop-" &amp; user)
		toDFolder.CopyHere fromDFolder.Items, 16+512

		'Copy the Favorites files
		Set fromFFolder = oSHApp.Namespace("C:\Documents and Settings\" &amp; user &amp; "\Favorites")
		Set toFFolder = oSHApp.Namespace(serverpath &amp; user &amp; "\Favorites-" &amp; user)
		toFFolder.CopyHere fromFFolder.Items, 16+512
	End If

	If Err.Number &lt;&gt; 0 Then
		'we have failure!
		SendEmail user,"failed at createFolderscopyFiles",Err.Description
		createFolderscopyFiles = 1
		Err.Clear
	Else
		createFolderscopyFiles = 0
	End If
End Function

Function updateRegistry(user)
	'lets work on the registry now
	Const HKEY_CURRENT_USER = &amp;H80000001
	Const HKEY_LOCAL_MACHINE = &amp;H80000002

	'update the registry for Desktop and Favorites (User Shell Folders)
	'set Favorites
	Set oFReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &amp; "." &amp; "\root\default:StdRegProv")
	strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
	strValueName = "Favorites"
	strValue = serverpath &amp; user &amp; "\Favorites-" &amp; user
	oFReg.SetExpandedStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue
	'set Desktop
	Set oDReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &amp; "." &amp; "\root\default:StdRegProv")
	strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
	strValueName = "Desktop"
	strValue = serverpath &amp; user &amp; "\Desktop-" &amp; user
	oDReg.SetExpandedStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue

	'update the registry for Desktop and Favorites (Shell Folders)
	'set Favorites
	Set otFReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &amp; "." &amp; "\root\default:StdRegProv")
	strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
	strValueName = "Favorites"
	strValue = serverpath &amp; user &amp; "\Favorites-" &amp; user
	otFReg.SetStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue
	'set Desktop
	Set otDReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &amp; "." &amp; "\root\default:StdRegProv")
	strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
	strValueName = "Desktop"
	strValue = serverpath &amp; user &amp; "\Desktop-" &amp; user
	otDReg.SetStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue

	If Err.Number &lt;&gt; 0 Then
		'we have failure!
		SendEmail user,"failed at updating registry",Err.Description
		updateRegistry = 1
		Err.Clear
	Else
		updateRegistry = 0
	End If
End Function

Function renameOldFolders(user)
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	objFSO.MoveFolder "C:\Documents and Settings\" &amp; user &amp; "\Desktop", "C:\Documents and Settings\" &amp; user &amp; "\DesktopOLD"
	objFSO.MoveFolder "C:\Documents and Settings\" &amp; user &amp; "\Favorites", "C:\Documents and Settings\" &amp; user &amp; "\FavoritesOLD"

	If Err.Number &lt;&gt; 0 Then
		'we have failure!
		SendEmail user,"failed at renaming old folders",Err.Description
		renameOldFolders = 1
		Err.Clear
	Else
		renameOldFolders = 0
	End If
End Function

Sub SendEmail(user,contnt,contntB)
	'if the setting is to send an email, then do it, otherwise...nada.
	If useemailnotify = 1 Then
		'send an email!!
		Set objEmail = CreateObject("CDO.Message")
		objEmail.From = smtpfrom
		objEmail.To = smtpto
		objEmail.Subject = "Desktop and Favorites Migration Issue for " &amp; user
		objEmail.Textbody = "User had a Desktop files migration error." &amp; vbCrLf &amp; vbCrLf &amp; contnt &amp; vbCrLf &amp; vbCrLf &amp; contntB
		objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
		objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = smtpserver
		objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
		objEmail.Configuration.Fields.Update
		objEmail.Send

		If Err.Number &lt;&gt; 0 Then
			'we have failure!
			MsgBox "Your Desktop migration didn't go very well."
			Err.Clear
		Else
			'YAY!
		End If
	End If
End Sub
</pre>
<p><strong>Downloads</strong></p>
<p><a href="http://www.devtrends.com/downloads/BlankScreen.zip" target="_self">BlankScreen.zip</a> &#8211; VB.NET application</p>
<p><a href="http://www.devtrends.com/downloads/desktop.zip" target="_self">desktop.zip</a> &#8211; VBScript</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtrends.com/index.php/centralized-desktop-and-favorites-with-a-centralized-my-documents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bart&#8217;s Preinstalled Environment (BartPE) Windows LiveCD</title>
		<link>http://www.devtrends.com/index.php/barts-preinstalled-environment-bartpe-windows-livecd/</link>
		<comments>http://www.devtrends.com/index.php/barts-preinstalled-environment-bartpe-windows-livecd/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 16:30:39 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[LiveCD]]></category>
		<category><![CDATA[Rescue]]></category>
		<category><![CDATA[Windows PE]]></category>

		<guid isPermaLink="false">http://www.devtrends.com/?p=518</guid>
		<description><![CDATA[As much as I love the old school Disk Operating System (DOS) environment, the benefits of working with DOS, even for firmware updating, is fading away. Who has a floppy...]]></description>
			<content:encoded><![CDATA[<p>As much as I love the old school Disk Operating System (DOS) environment, the benefits of working with DOS, even for firmware updating, is fading away. Who has a floppy drive any more? Well I do, I purchased one with my Dell laptop and even though it is the slide in type (pull out the CD/DVD drive), it has a USB connector on the side of it. However, when it came time to create a bootable floppy, I couldn&#8217;t find any disks laying around. So, create a bootable DOS CD &#8211; still has limitations if you try to emulate a floppy.</p>
<p>Regardless, the 1.44MB limitation is irritating at minimum. Working with 1.44MB floppies today is almost as bad as working with old DOS programs in Windows 95 that can&#8217;t figure out how to use extended memory (above 640KB). It seems that many firmware updates are larger than a floppy, and if you try to fit it along with the bootable files, MSDOS.SYS et cetera, you&#8217;ll be quite unsuccessful. So, screw DOS boot disks &#8211; let&#8217;s make a Windows LiveCD!</p>
<p><strong>BartPE</strong></p>
<p>To ensure that everyone knows, Bart Lagerweij is the master mind, I am merely shareing my experiences with his exceptional work.</p>
<p>Go ahead and review <a href="http://www.nu2.nu/pebuilder/" target="_blank">Bart&#8217;s PE page</a>. Download and install the latest PEBuilder application from that link. You should also review the licensing notice.</p>
<p>In this example we are going to create a Windows XP PE LiveCD. To get started you will need a Windows XP Professional non-OEM CD, which Bart&#8217;s pebuilder application will use to create the bootable LiveCD, and a blank CD for the final product.</p>
<p><em>Note: unless you have two CD drives, I would recommend copying the contents of your Windows XP cd to your hard drive.</em></p>
<p><a href="http://www.devtrends.com/wp-content/uploads/2010/02/PE-Builder-1.jpg"><img class="alignnone size-medium wp-image-519" title="PE Builder 1" src="http://www.devtrends.com/wp-content/uploads/2010/02/PE-Builder-1-300x252.jpg" alt="" width="300" height="252" /></a></p>
<p>Open Bart&#8217;s PE Builder and set the source to the location where the Windows XP files reside. Under media output, choose &#8220;Burn to CD/DVD&#8221;. Click on the Builder menu and choose &#8220;Build ISO/CD (F5)&#8221;.</p>
<p><a href="http://www.devtrends.com/wp-content/uploads/2010/02/PE-Builder-2.jpg"><img class="alignnone size-medium wp-image-520" title="PE Builder 2" src="http://www.devtrends.com/wp-content/uploads/2010/02/PE-Builder-2-300x252.jpg" alt="" width="300" height="252" /></a></p>
<p>Assuming you receive no errors during the build and burn process, you should now have a bootable Windows XP LiveCD.</p>
<p>-Aaron Gilbert</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtrends.com/index.php/barts-preinstalled-environment-bartpe-windows-livecd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Microsoft SteadyState as a Kiosk</title>
		<link>http://www.devtrends.com/index.php/using-microsoft-steadystate-for-a-kiosk/</link>
		<comments>http://www.devtrends.com/index.php/using-microsoft-steadystate-for-a-kiosk/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 17:04:11 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Kiosk]]></category>
		<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[SteadyState]]></category>

		<guid isPermaLink="false">http://www.devtrends.com/?p=170</guid>
		<description><![CDATA[Making a publicly accessed computer safe can be a challenging project, especially if you are concerned about what web sites are allowed. Although there are quite a few methods for...]]></description>
			<content:encoded><![CDATA[<p>Making a publicly accessed computer safe can be a challenging project, especially if you are concerned about what web sites are allowed. Although there are quite a few methods for making a kiosk, such as pre-engineered hardware and software, there is always a cheaper method of accomplishing the same task. I am not here to argue that one is better than the other, only to share my experiences with creating a kiosk using products and knowledge I already had around.</p>
<p>There are a few pieces to the puzzle for any kiosk:</p>
<p>1. computer hardware, preferably equipment that can be physically locked down.<br />
2. user interface restriction software, including Internet access restriction.<br />
3. operating system state lock down.</p>
<p><strong>Piece 1</strong></p>
<p>For piece 1, I have used machines such as a Dell Optiplex and an Intel-based Apple Mac Mini. The Mini was a much better because of the size of the case and limited drives (one CD). For some public areas, I would recommend a physical enclosure for the computer case to prevent any physical access.</p>
<p><strong>Piece 2 and 3</strong></p>
<p>In some cases, the Microsoft <a title="SteadyState" href="http://www.microsoft.com/windows/products/winfamily/sharedaccess/default.mspx" target="_blank">SteadyState</a> product can handle 2 and 3. Prior to SteadyState, step 3 would require an additional product such as <a title="DeepFreeze" href="http://www.faronics.com/html/deepfreeze.asp" target="_blank">DeepFreeze</a> to &#8220;lock&#8221; the operating system state. You might be thinking, can SteadyState stand up to the 13 year old hacker that is going to break into your Kiosk? Unfortunately, I do not have the answer &#8211; however, a quick Google search might help you determine that because DeepFreeze is more popular there are more articles towards cracking it versus SteadyState.</p>
<p>Besides the disk &#8220;freezing&#8221;, SteadyState locks down the operating system using Windows policy configuration. Obviously if the computer is joined to a domain, the group policy objects (GPO) will override similar SteadyState configuration.</p>
<p><strong>More on Piece 3</strong></p>
<p>Controlling web access has been a problem in enterprises for years and a Kiosk is no exception. From a legal standpoint, you can&#8217;t fire outside users of a Kiosk if they do something inappropriate. This means that control of Internet has to be even more restricted, which can be quite difficult.</p>
<p>I would recommend the combination of two applications: (a) using a product such as NetNanny to lock down inappropriate categories; and (b) build a custom web browser such as shown in my article, <a href="http://www.devtrends.com/index.php/creating-a-custom-web-browser/" target="_self">creating your own custom web browser</a> using Microsoft Visual Studio Express 2008. The custom web browser will allow you to control functionality of Internet Explorer programmatically, such as a minimal interface, predefined control bar, et cetera.</p>
<p>As a final note, SteadyState allows the administrator to lock Internet Explorer down to specific web URLs. To save space on domain name restriction, (there is a character limit), use the following format to get the entire domain, *devtrends.com.</p>
<p><a href="http://www.developingtrends.net/wp-content/uploads/2009/11/lockdown.jpg"><img class="alignnone size-medium wp-image-481" title="lockdown" src="http://www.devtrends.com/wp-content/uploads/2009/11/lockdown-300x218.jpg" alt="lockdown" width="300" height="218" /></a></p>
<p>Have fun and do your research before you put a Kiosk out for everyone to use! As with all of my other posts, I am not responsible for your failures and guarantee nothing. Article is for educational purposes only.</p>
<p>-Aaron Gilbert</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtrends.com/index.php/using-microsoft-steadystate-for-a-kiosk/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>VGA Resolution Identification and Windows</title>
		<link>http://www.devtrends.com/index.php/vga-identification-pin-and-windows/</link>
		<comments>http://www.devtrends.com/index.php/vga-identification-pin-and-windows/#comments</comments>
		<pubDate>Sun, 20 Sep 2009 02:22:05 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Projector]]></category>
		<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[Pin 9]]></category>
		<category><![CDATA[VGA]]></category>
		<category><![CDATA[VGA DDC2]]></category>
		<category><![CDATA[VGA Resolutions]]></category>

		<guid isPermaLink="false">http://www.devtrends.com/?p=267</guid>
		<description><![CDATA[Have you ever wondered why some monitors/cables automatically have the correct video settings available in Windows and on occasion others do not? When was the last time you extended your...]]></description>
			<content:encoded><![CDATA[<p>Have you ever wondered why some monitors/cables automatically have the correct video settings available in Windows and on occasion others do not? When was the last time you extended your VGA cable to a monitor or other output device with a 50 foot cable? Did you even think to check if all 15 pins were manufactured into the cable you just bought? Me neither &#8230; and that does not change the fact that it matters.</p>
<p>The &#8220;optional&#8221; Sense pin, pin 9, is used by the graphics card to send +5V DC to the connected device, which plays a significant part in allowing the computer to determine resolution capabilities. This pin is crucial to monitor identification features of the VGA DDC2 standard &#8211; it is likely that without this power to the monitor, the graphics card / computer has no idea what type of monitor is plugged in&#8230;</p>
<p>According to <a href="http://pinouts.ru/Video/VGA15_pinout.shtml" target="_self">pinouts.ru</a>, the VGA DDC2 standard uses pins 9, 12 and 15 to communicate the capable screen resolutions of the device connected. So, if pin 9 is missing, then you will get a standard set of resolutions in your Windows display settings.</p>
<p>I recently purchased a 50 foot premium VGA cable, similar to this one on Cables to Go. Notice in the photograph of the cable end that pin 9 is missing.</p>
<p><a href="http://www.cablestogo.com/product.asp?cat_id=3414&amp;sku=09462" target="_blank">Cables to Go &#8211; 50&#8242; VGA</a></p>
<p>Next time you are running a long video cable to a projector, plasma, LCD, et cetera, you might want to spend a few &#8220;less&#8221; dollars and purchase a cable that has all 15 pins:</p>
<p><a href="http://sewelldirect.com/VGAMaletoVGAMale50Foot.asp" target="_blank">Sewell Direct &#8211; 50&#8242; VGA</a></p>
<p>I hope you find this BEFORE you waste an hour trying to figure out why you can&#8217;t use the native resolution of your LCD or Plasma&#8230;</p>
<p>Aaron Gilbert</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtrends.com/index.php/vga-identification-pin-and-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SteadyState and Screensavers</title>
		<link>http://www.devtrends.com/index.php/steadystate-and-screensavers/</link>
		<comments>http://www.devtrends.com/index.php/steadystate-and-screensavers/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 03:19:32 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Kiosk]]></category>
		<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[Screensaver]]></category>
		<category><![CDATA[SteadyState]]></category>

		<guid isPermaLink="false">http://www.devtrends.com/?p=183</guid>
		<description><![CDATA[I had a requirement with a kiosk that required me to fade the screen 50% during any idle use. I had initially thought, great, this will be easy! However, SteadyState...]]></description>
			<content:encoded><![CDATA[<p>I had a requirement with a kiosk that required me to fade the screen 50% during any idle use. I had initially thought, great, this will be easy! However, SteadyState messes up your screensaver settings if you use the &#8220;Log off when idle (x) minutes&#8221; option. Hmm, I wonder if Microsoft cut corners and used the built-in Windows screensaver functionality as the timer for auto-log off?</p>
<p>According to a post I found on MSDN forums, SteadyState will continually change the screensaver for the user that is locked down, as configured. Although I am not certain if unchecking the &#8220;idle logoff&#8221; option will alleviate the issue, I do know that if you need a screensaver on your kiosk, you may have to conjure something unique, such as my <a href="http://www.devtrends.com/index.php/creating-a-custom-web-browser/" target="_self">custom web browser</a>.</p>
<p>I&#8217;m out&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtrends.com/index.php/steadystate-and-screensavers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Memory Stick Not Assigned a Drive Letter</title>
		<link>http://www.devtrends.com/index.php/memory-stick-not-assigned-a-drive-letter/</link>
		<comments>http://www.devtrends.com/index.php/memory-stick-not-assigned-a-drive-letter/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 02:53:28 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[Mapped Network Drives]]></category>

		<guid isPermaLink="false">http://www.devtrends.com/?p=30</guid>
		<description><![CDATA[This is a common issue with Windows XP Pro and mapped network drives. Occasionally corporations will use mapped network drives for easy access to various network shares. You may notice...]]></description>
			<content:encoded><![CDATA[<p>This is a common issue with Windows XP Pro and mapped network drives. Occasionally corporations will use mapped network drives for easy access to various network shares. You may notice this error on networked computers that have more than average local drives. An example would be 2 hard drives (C: and D:) and two CD or DVD drives (E: and F:).</p>
<p>A mapped network drive apparently does not “lock” the use of the drive letter and Windows will allow other devices that are attached at a later time to assign themselves a drive letter that is already in use via a mapped drive. As stated above a system with 4 physcial drives would use 4 drive letters which would normally take A: through F: (A: and B: are automatically assigned to floppy drives regardless if you even have a floppy drive).</p>
<p>So if you map a network drive <a href="file://server/share">file://server/share</a> to drive letter G:, and then plug in a memory stick, there is a good chance that Windows will assign drive letter G: to the memory stick. The mapped drive will continue to work, but you will not be able to access your memory stick.</p>
<p>Resolution:</p>
<ol>
<li>Make sure the memory stick is plugged in.</li>
<li>Right click on My Computer and choose Manage.</li>
<li>Under Storage \ Disk Management you should see the memory stick, and which drive letter it assigned it.</li>
<li>Right click that Memory Stick entry and choose Change Drive Letter and Paths.</li>
<li>Choose an unused drive letter. It should stick with this newly set drive letter everytime for that memory stick.</li>
</ol>
<p>Note: This guide is for informational purposes only. Use the information provided at your own risk. I am not responsible for your actions or the outcome of any method or instruction given or used in this article.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devtrends.com/index.php/memory-stick-not-assigned-a-drive-letter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

