Wednesday, March 25, 2020

Creating a Foot Joystick for the Xbox Adaptive Controller

So my son had a stroke shortly after birth. This has left him with rather reduced mobility on the right side of his body. He loves video games though, but his disability decreased his choices leaving him with a very limited subset of games on the Xbox or PC. He became awesome using a controller one handed. He would use his pinky on one joystick and thumb on the other to move around but had to stop to press buttons or other such actions.

So when Microsoft announced the Xbox Adaptive Controller, my wife and I were way excited for him. We got him one along with various buttons and joysticks to make it work. It is more of a hub then a controller, allowing you to use whatever adaptive components. Many of those components are expensive, but we got the following items:

The one handed joystick he would hold and could control one of the joysticks (view for my son). The 3dRudder controller would then be mapped to the other joystick (movement). 

The biggest struggle we quickly learned with the 3d Rudder motion controller is that a person really needs two functional feet to help control it's rocking motion. It acts similar to a balance board. To move forward the player leans their feet forward to press the front down. To go right they have to push their right foot down. My son can't get that finer grained movement on his right foot. He would tend to push with his left foot, causing his character to move left, but then never had the strength to move it right again. Overall the design worked poorly.
The reality is he has one functioning foot that he can control rather well. So we thought that we needed to get a foot joystick instead that he could control with his left foot. In unrelated news we got a 3d printer for Christmas (Thanks Santa!), and a micrometer for helping to take measurements down to the millimeter. After we got these, we decided I should get another one-handed joystick and convert it to a foot joystick.

The one handed joysticks are nice and very affordable at $20 a piece. At first I thought I would just create a holder that would not involve modifying the joystick. But as you can see from the image on the right, that wouldn't work all too well. So after getting put on work-from-home, which saved my commute and reduced overtime requirements, this idea rose back to the top of my priority list.

Here is how I did it. 
The first step is pulling the joystick apart. This involves taking out a screw from the bottom of the joystick. Once it is out then press on the side in the gap between the two parts. This should cause it to pop a little and open slightly. You can use a flat head screw driver and twist it a little in the gap to force it open. You are not keeping the body, so you don't have to be too careful. Then unscrew two small screws right below the joystick connecting the board to the black joystick housing. After your done then you end up the pieces you see in the image to the left.

I didn't want the front buttons as I figured he would just be moving with his foot and having to pull it off would slow him down, so they had to go. Luckily there are only three cables coming from that circuit board for the buttons connecting it to the main board. I pulled out my soldering gun, heated up the solder, and pulled the cables out one by one. That left me with only the board, which is exactly what I wanted. I plugged it into the Xbox Adaptive controller and made sure it still worked. I was pretty sure it would, but didn't want to spend much time on this if it didn't.

The next phase involved me taking measurements of the sides, length + cord to the gasket portion. Also getting the height. Then I opened 3d builder which is free with Windows 10 as part of Microsoft's "Creators" push a while back. I have found for the basics I use it for it works great. I created the following prototype. The top of the image is the front of the of the controller housing. The back has the cutout for the cord. It involved a ring around it to catch the sides of the board and support them. The two smaller cylinders will serve as the screw posts to secure the board to the plastic. That larger middle cylinder would go through the middle hole in the board. 

After printing this out I realized some adjustments were needed. I wanted another larger cylinder that would support under the joystick so it could be clicked more comfortably. Also around the other cylinders I added a ridge to support the board for it to rest on as it was just being pushed on them. Then I heightened the middle of the cylinders to the height of  the top of the board for a good fit. Also I extended out the bottom of the board to allow me to fit the cord with the gasket on the inside so that it would almost look like the cord did in the old controller.

After printing out the second rendition I ended up with this. Everything actually fit perfectly. I was pretty happy with this as I figured  would need more revisions to this part. I didn't put holes in the two smaller cylinders to allow for the mounting screws to be re-added. So I heated up a needle with a match and pushed it through the middle of both cylinders. I then replaced the board on the cylinders and was able to screw the board down with the screws through those holes. 

 For the top I made the first version with a gap so that both inside and outside it would grip the bottom, but that didn't work well. I was also a little off on the top hole for the joystick. I moved the hold forward a little, made it larger, and removed the inside 1mm used for the inside ridge all the way up to the top. The case is narrow and was making the joystick get stuck and it didn't fit the base well.

Upon printing out the second one, it fit. I pulled it off the plate a little quick which is why the right side is a little white. Other then that, this is exactly what I was wanting. It is a small flat package that houses the joystick.

So off to testing I went. I realized quickly that it would not stay still on our carpet floor. So I took a page from Jerry Rigs Everything and grabbed a board out of our scrap pile. I used all the extra space at the bottom of my case to drill holes to mount it to the board.

After putting back on the lid and having my son try it again it worked out great! Now he can use his left foot to control his motion in his favorite game, Minecraft. He was getting pretty accurate after 10 minutes being able to select things in his inventory with his foot. Below you can see the foot joystick in action.

Overall it was a grand success. I need to paint the case and cut down the piece of wood more, sand and stain it, but overall I am very happy. I haven't seen him so happy to play Minecraft for awhile. Usually it involved him jumping between the left and right joystick continuously. This is no longer the case for him.


Below is a picture of all the equipment together. Major Kudos to Microsoft for making the Xbox Adaptive controller happen. Also thanks to PDP for making a very simple joystick that I could mod like this. Finally thanks to my wife who helped sanity check me on this as I was working along on this. Definitely one my more favorite projects. :)

If you would like the 3d files they are linked below:

Foot Joystick Box Bottom
Foot Joystick Box Top

If you have any questions then leave me a comment.

Saturday, October 12, 2013

Microsoft Silverlight update repeatedly fails to install with error 0x80070643

The Problem
My wife made me aware that she always had one update to install while shutting down her computer. Being an IT guy by day, it took me a little before I got around to troubleshooting the issue. Anyways a quick glance in the "System" Event Logs revealed that a security update for Microsoft Silverlight seemed to be the issue.

Now my wife doesn't use Silverlight very much and I may have been able to get away with simply uninstalling it. I wanted to figure out the issue though and with that in mind continued on in my troubleshooting.

 It was update KB2890788 and was failing with error 0x80070643. This problem had started on September 8th with the update KB2847559 transitioning to the other update on the 10th.

Up to this point my wife had done the install on update option, so I thought I would try manually installing the update via the Windows Update control panel applet. Selecting only it and pressing install led to a "Preparing to install.." status for quite some time. In the "Application" event logs I was getting informational events from "Windows Error Reporting" basically telling me the update wasn't installing.


 
Never got an error on the Windows Update section, so I closed  it.

The Solution
I then manually downloaded the latest version of Silverlight from Microsoft's site. I then installed it and it upon completion it told me it was successful. You can see in the picture below the install log in the background as well as the successful completion message.

Upon completing the install I had it check for updates again and the update it had been failing on no longer appeared in the list.

So it appears that the install of Silverlight became corrupt and the update was unable to apply. A fresh install corrected the issue.

Friday, July 19, 2013

CIP 007 R2 Ports and Services - Part 1 (Basic Port Enumeration)

Disclaimer: The information I provide is that of my own and does not reflect on the organizations I work for. The information I share should not be the only thing you rely upon for compliance and is provided as-is.

One of the areas of great concern for individuals involved with NERC CIP is CIP standard 007. It is the standard under which most of the work for compliance is done to secure assets. CIP 007 is also the most violated standard. A big offender is standard R2, Ports and Services. It is also a difficult one to comply with since there a large amount of services and ports per asset.

This topic will be broken into multiple posts due to the amount of information that can be shared. Ports and services will also be broken into different posts. I will begin by discussing some areas of overlap.

CIP 007 R2 states, "An entity will disable all unused ports and services not required for normal or emergency operation." The requirement for this standard is interesting. Let's discuss what this means in relation to ports first.

This relates to logical network ports like TCP port 25, which is most often used by SMTP. Ports, as related to compliance and security, considers only listening devices. For those new to network ports this means the network ports that are open and waiting for a connection from other devices or potentially from another process on that computer. NERC CIP does not currently have standards for physical ports on an asset. This does not mean physical ports should not be tracked. As part of its overall security standpoint a company should track and control the physical ports on their devices. Additionally this approach may serve the side benefit of ensuring information is collected when these ports do fall under a compliance standard of one type or another. A person or entity may decide that they want to define what a port and listening port is. As of the time I wrote this post, there was not yet a definition by NERC of either of these, but be sure to check that as new information surfaces daily.

There are multiple ways to collect information about a devices ports. Many devices are capable of listing the ports via their management face through a program or internal function. On a windows and linux based box, a person can run the netstat via the command line. Below is just a small sample of the output that may be seen from running "netstat -abno" windows based box.
 
This method is going to usually be the most accurate way to collect ports from a device that supports it.

Another way to collect ports from a device is to use a port scanning tool such as NMAP, Angry IP Scanner, etc. This software works by manually checking ports on the device to see if they are open. Usually the tool is run from a remote device. Remember to verify the full TCP and UDP port ranges 0-65535. Scanning only TCP is not sufficient.

Port scanners are usually the only method to collect ports from devices that do not have an internal method to collect ports information. An example of such a device may be a PLC. The output of an NMAP scan using the Zenmap GUI is shown below:
The benefits of using a port scanning tool is that a person can enumerate ports from devices that are incapable of enumerating ports natively. Additionally, all data is usually stored in one location. Some device vendors, like Allen Bradley, will provide software to scan their devices for open ports. In most cases a person or entity should use what their vendor requires.
There are some negatives to using a Port scanning tool.
  • Port Scanning isn't always consistent, so a port may be missed. Try multiple scans to catch all listening ports on a device.
  • If there are devices such as a firewall, in between the device conducting the scans and the device being scanned, reliable port data may not be retrieved.
  • Some devices do not handle being scanned well. They may lock up, slow down, or function in methods that are not acceptable.
    • This may mean that a person or entity would want to have an identical device in a non production network that can be re-configured in an identical manner. This device than can be scanned to collect port information.
    • Possibly scanning the devices while not in production also may be necessary.
    •   
With all of that in mind I would recommend that when companies purchase new devices they ensure that they are capable of natively enumerating port data. There are many network switches, firewalls, control devices that can do this.
There will always be devices that cannot do this so make sure that the person or entity can reliably enumerate the ports of these devices via a Port Scan. Additionally some malicious software can hide listening ports from native commands such as netstat, so an occasional port scan may be useful for comparison purposes.
In the next NERC CIP related post I will share additional port enumeration information as well as methods to "disable" the ports and start to cover services.

Friday, June 7, 2013

Into to NERC CIP into my Blog


NERC CIP two acronyms  when placed together that strike fear into the heart of any that have been given the responsibility to abide by its requirements. NERC, North American Energy Reliability Corporation, is the entity that is in charge of developing and enforcing the standards used to ensure reliability of the North American bulk power systems. 

There are many standards that are under NERC's umbrella but if you are here reading this it is because you desire to know more about CIP. CIP, Critical Infrastructure Protection,  is the standards that relate specifically to the protection of the electrical control systems. CIP is the combination of standards that are also a bit of a touchy topic for many due to the feel by some that NERC is not doing enough to protect the electrical grid. To any who have had to abide by the full set of NERC CIP standards this is hard to believe since it requires a lot of work. I will not be debating the standards, although I feel that they are forcing many entities to make steps towards security, which is a good thing.

NERC CIP has been my life for the last year.  As with the rest of my blog the intent of this new period will be to share things I have learned to hopefully help all everyone else trying to accomplish their work. Before we get started  there are two tips I want to share.

1st - Compliance is not security and some things it requires will not make sense, but if it is required you must do it.

2nd - If you don't have evidence of something you did, you didn't do it. This is important to remember. A small portion of what you will do will be work, the other large portion of it will be collecting evidence and documenting your work.

This is the first post of many. One area I will be focusing on is the infamous CIP-007. I will still be doing my posts of troubleshooting and such, but NERC CIP is a big part of  my life now. So on to it.
 
For some good reading:
http://www.nerc.com/pa/CI/Comp/Pages/default.aspx

Saturday, February 16, 2013

Problems sending Messages via Voice with Windows Phone 8

Problem
So I started having issues after moving to Windows Phone 8 sending texts via voice. I would press and hold down the Windows key to get it to accept my command.
After doing this I would state my command of "Text (Person's Name)" and if I said it without food in my mouth it would recognize the command and show the next dialog box.
It would then bring up the next screen giving me the option to "say your message"
After stating my message whatever it was, in this case it was "Purple people eater" then it would show me this screen.
Now if I continue to do everything by voice as well as sending then everything works, but their are instances where I manually want to add some additional text that it is having a hard time recognizing. To do this pressing on the pencil in the middle, aka "Edit", allows you to do just that and brings up the next screen. I can then add what I want and then press the "Send" button.
 The problem is that I then get an error shortly after sending it.

If you have a sharp eye then you noticed in the last two pictures it is actually showing two recipients. Now I never added the second recipient. When you press "Edit" it for some reason adds just the last name of your recipient. This last name does not have any number associated so it errors out although for some reason it thinks it has an email address of the last name as shown below:
 
This can be re-created as many times as you want. I am using Windows Phone 8 running on a Nokia Lumia 920 running the portico the latest update through ATT. Now enough with the problem.
 
Solution

So I started thinking it was odd that it was just the last name. I remember there was a way to change how contacts were displayed in the "people" hub. So if you go under "Settings" and then "Applications." Clicking on "people" brings up the people settings.
Now changing the "Sort list by" either to "First name" or "Last name" results in the same behavior. So I decided to change the "Display names by" setting from "Last, First" to "First Last."
 
Upon testing the same procedure show above, clicking on "Edit" shows the following message screen.
As you can see above there is only one name now. Sending this message does not result in any error being displayed later.
 
So if you are facing the follow behavior you can either change your "Display names by" to "First Last" or you can delete the last name of your contact out of the "To:" field each time. Either way I hope this gets fixed in a future patch.
 
Sorry for the large number of images, just wanted to properly document this bug.
 

 
 

Friday, January 11, 2013

Communication Error when Printing PDFs from Windows 8 Reader

The Problem
I recently installed Windows 8 and did an upgrade from Windows 8. This worked great and I have been enjoying it for the last couple of days. Today I ran into an issue though. I was trying to print out a PDF using Microsoft's Reader.

With Windows 8 you do this by bringing up the charm bar on the right of the screen in the app you want to print and clicking on devices.

To bring up the charm bar for a device with keyboard/mouse press "Windows Key + C" or take your mouse to the very upper-right or lower-right of the screen and it will appear

After clicking on Devices it should display your printer as well as some other devices. You then click on your printer. After doing this you should get a Print Preview as well as some options that allow you to print out the document.

In my case though instead of getting the preview as you see to the left I got an error, which I wish I had print screened but sadly didn't. It stated something along the lines of not being able to communicate with the printer. This was odd for me and I guessed it had some issue with the driver. The odd thing though was that when I was in the "Desktop" mode than the printer printed fine. I guessed then that the driver from Windows 7 was not compatible with the Metro section of Windows 8.

This was odd to me since the print drivers for Windows 8 are awesome in that they are supposed to provide basic print functionality for pretty much every printer. Meaning that unlike what many people did when they upgraded to Vista or 7 you don't need to purchase a new printer. You can read more about this here: MSDN Blog Article: http://blogs.msdn.com/b/b8/archive/2012/07/25/simplifying-printing-in-windows-8.aspx

The Solution
I went into the printer properties for my printer and it showed the right driver. I then deleted my printer. I then went to re-added my printer. I noticed one of the other ways didn't work so the way that worked for me to find my printer was to open "Devices and Printers" and click on "Add a Printer"

My printer was then discovered and I added it. It then used one of the class drivers which provide compatibility with printers that are not compatible with Windows 8, called "Brother Laser Leg Type2 Class Driver". This was for a Brother HL2070N.

I thought that the fact that Windows 8 had picked this driver I was probably in a better place. Sure enough opening my PDF, bringing up the charm bar then devices and clicking on my printer brought up the print preview and allowed me to successfully print out my PDF.

So my recommendation for people having printer problems would be to delete them and then re-add them. Windows 8 will select the best driver and you should be good to go.

Hope this helps everyone using the Microsoft Reader, athough I am guessing this would have been a problem with Adobe Reader too if it is metro compatible.

 

Sunday, January 6, 2013

Windows Phone Time and Battery Status

Problem
I am a Windows Phone user of which previously I owned the LG Quantum, Nokia Lumia 900, Samsung Focus Flash, and currently a Nokia Lumia 920. I really enjoy the OS. It allows me to quickly move from one task to the next while staying productive. Additionally full versions of Office are a must for a Business professional or a user desiring to be productive.

There is an issue that I have seen many people claim is a problem, although I think they have just been trained this way, which is the inability to know what time it is, or the current battery level at all times. IOS(iPhone/iPad) and android have a static status bar that shows these things and people have grown accustom to this. Windows Phone does not use a always on status bar instead freeing it up for the user. Change is a rough thing for us people, but it can be for the better.

Solution
There are a couple of ways to see the time and battery status of a Windows Phone device at any time. First when you wake up your phone it will show you the time and battery status on your phone, on the lock-screen as well as the date and your next appointment and various other tidbits.

This is great for when you use your phone in spurts but what about if you are using it in length and want to know your current batter status there are three other quick ways to determine this. On the home screen as well as in some other applications just touch above the top of screen and swipe down just slightly onto the top portion of the screen and the status icons appear, although they only stay about 10 seconds or so. Some applications do not support this though.

Another application that I use a lot that allows for a quick way to determine the time and battery status is Internet Explorer. IF you are browsing in IE. while holding you phone vertically instead of horizontally.Click in the address bar or swipe up on the three dots that are in the bottom right corner. This will cause the status bar to appear at the top of the screen. This is probably the one I use most besides the other three methods.

The last method can be used anywhere and at anytime is probably the one I haven't seen shared before, although it might have been, so I will display the whole picture so you can see it more clearly. No matter where you are, just click and hold the back button until the app swapping screen pops up. Touching right above the top of the screen and swipe down onto the screen at which point the status bar appears. I see this as the most powerful method since it can be done anywhere and anytime.

It can also be done in horizontal mode swipe the same way and from the same spot above the screen or on the speaker swipe your finger onto the screen. and the status appears.

Conclusion
I favor Windows Phones for numerous reasons particularly Nokia due to the amount of software they provide for free for their phone owners. Windows Phone can do what is wanted by most users, its just a method of thinking differently. Hope this helps.














Saturday, September 29, 2012

New Job = New Angle

So I transitioned jobs in June. Actually June 11th was my new start date. Due to this then I don't have access to the old equipment that I found fixes for in reference to my posts(ie Windows Server EBS 2008 and Avaya IP Office). I mention this because if someone asks me about that stuff I can't really help out there, except from memory. This is part of why there has been a drop in the number of posts I put here. Also this comes from the fact that I have less time with the new job and doing school.

With that in mind than I will try and post information that I find useful at home. Now my new job will also allow me to share helpful information on different products, but I will have to be a tad more vague due to the sensitivity of my new job. I also may post information that describes best security or network practices.

I hope to begin posting useful stuff again soon.
Thanks

Sunday, April 29, 2012

Best Buy $1000 Gift Card Text Scam

I was recently contacted by someone regarding a text they got from Best Buy. It said the following: "Your entry last month has WON! Goto http://www.bestbuy.com.wgmc.biz/?claimid=912" They were asking me if it was a legit offer. Well it wasn't much longer tell I received the text myself later. Here is a picture of it:
The Scam in text form
At first appearance it may look like a legit link. Sadly that is not the case. The first sign of this being bad is that at the tail end of the link you see: .wgmc.biz. Sadly someone has registered wgmc.biz and then created a subdomain to add the info in front to make it appear as if it was from bestbuy. You can look at the whois info by following this link:  http://www.networksolutions.com/whois-search/wgmc.biz
The above picture is a screenshot of the scam intro. Here you are supposed to put in the winning code. Another bad sign though is that you can actually type in whatever code and it always says that you have a winning code and then takes you to another link. This one is biggerbidder.net, so another sign to stop, even though it shows the BestBuy images below:
I put in a a fake GMail account and random zip code info. If you proceed past this then you get a pop up and some additional offers. It also forces you to sign up for two different offers. At this point I stopped. At this point it is obviously a scam. These guys should be dealt with since our phones shoud be a sanctuary from scam, but guess it was only a matter of time.

Bottom line this  is a SCAM

Note: It says the call is from: 1 (310) 849-7742. Hopefully someone stops them.

UPDATE 5/4/2012 - I noticed the scam they used in the text they sent me for the scam no longer works, either it got pulled down or the server did. Either way I am sure they have rebounded and using new domains and/or servers. So even though it may not match the URL everything else should still apply. Be Safe

Friday, April 13, 2012

Remote Assistance, VNC, and UAC Prompts

Intro
Many of us as tech professionals are quite busy and reducing time doing unnecessary tasks is necessary so we can still complete the ever growing tasks being asked of us. One of the ways to do this is remove travel whenever it is possible. When someone has a problem and you need to resolve it then often we run down to do it ourselves.

Luckily Microsoft has us covered by including remote assistance and for some the preference or need means VNC. Both of these programs allow us to complete tasks remotely without leaving our desk. Many of us also follow LUA, aka Least-Privileged  User Account, meaning most of our users run as limited users. Because of this when you connect to a computer using the two previous methods you would have to use various "Run As" methods to remotely change some settings or install software.

With Windows XP this wasn't a problem, as long as you knew the various ways run as methods to get into various control panels, software installs, and other tasks that you might be called upon to complete.

Problem
With the advance of Windows Vista and 7 came UAC and "secure desktop." These things were great but when you wanted to use Remote Assitance or VNC then anytime something deemed that administrative rights were required you would get a blank screen with a Pause symbol on Remote Assistance and with VNC I believe it turned everything a pink color and in both cases you lost control. The user than would be displayed a prompt to put in credentials.(In Group Policy it may not be set to display credentials so your behavior may be slightly different.

This effectively reduced the functionality these tools brought us quite heavily to the point that trips were sometimes made instead. The reason this was happening is that UAC was set to display only on "Secure Desktop." For a good article on this behavior you can read a Microsoft Article here.

Solution
Security settings can be changed on the computer to fix this issue. Remember though you are loosening some the settings so read up on the changes and determine if you are fine taking the associated risk. If you are using Group Policy this makes life a lot easier. If not you can change these locally on the computer by going into "Local Security Settings" and deploy this using various methods.

Under Group Policy\Domain then you will take the following path:
Computer Configuration>Policies>Windows Settings>Security Settings> Local Policies>Security Options

Under Local Security Policy:
Local Policies>Security Options

Remote Assistance
If you are using Remote assistance then you will need to change the following settings to Enabled:
User Account Control: Allow UIAccess applications to prompt for elevation without using the secure desktop

This will allow Remote Assistance to disable "secure desktop" for UAC so you can also see the prompts allowing for you to do what is needed. For information on this setting click here.

VNC (Other Viewers such as TeamViewer should fall under this settings)
Now if you installed VNC as a service than the later version may work by just changed the above settings. If they are installed as an application, or if just changing the above setting didn't work then you need to Disable the following setting:
User Account Control: Switch to the secure desktop when prompting for elevation

This will disable "Secure Desktop" for all prompts. I recommend again reading the first link mentioned in this article so you can determine for yourself if you are OK with the potential security risks. For more information about this setting you can also read this article here.

Taking the above step might also require a reboot. After the appropriate setting is changed though you should now be able to use your favorite tool to complete and RunAs remotely.

Monday, April 9, 2012

Java 1719 Uninstall Error

The Problem
So I had a computer I was cleaning up for use by another and was uninstalling unneeded software. There was an older version of Java, Version 6 Update 7, that wouldn't uninstall. It would error out with the following error. I looked around and everyone recommended various fixes by starting up and stopping services, or checking the registry.

The Solution
After looking at a couple than I tried my own fix. I went to filehippo, one of my favorite places for downloading files for multiple reasons, and downloaded the same version 6u7. I ran it and it asked me "This software has already been installed on your computer. Would you like to reinstall it?"

Go ahead and click "Yes." Eventually it will come up with the normal Welcome setup box that we are all used to. Walk through the setup like normal. When it is done hit "Finish."

Now, try uninstalling it again. It should let you uninstall it now.

Friday, March 30, 2012

Windows Update Failing with Error 80243004

The Problem
I have 8 computers that due to the software they have on them I must some and update them manually once a month. Upon doing this I had three that failed with the error to the right. The Screen sat with the status "Preparing to Install" for quite a long time then all of them failed with the error 80243004.
I had one of the computers "Try again" with no avail it just failed again. After doing that I ran around the Internet searching for a solution. I found the following thread on Technet and in it my solution here.

The Solution
The solution is strange. It has to do with the notification area of the taskbar. See by default the notification area in Windows 7 and Server 2008 hide most of the notification icons in an area found by clicking on the skyward pointing white arrow shown to the right. Well if you look at this area after this error you will see the notification area is huge with tons of blank spaces. If you are seeing this then the solution to your update problem follows below.
Right-click on some blank space on the taskbar and select "Properties" about half-way down the screen you will see a button that says "Customize...", click it. On the next screen you will see the option displayed in the picture below: "Always show all icons and notifications on the taskbar", place a check by it and click "OK" to close out that window and do it again for the notification properties window as well.

 It will then display all of the notifications now in the taskbar as you see in the picture below. Go ahead and have Windows Update "Try Again" now. It should complete successfully. After that you can revert your notification area back by going back and unchecking the setting you see in the picture above.

Conclusion
You should now be good to go. After checking the Windows Update Log located at C:\Windows\WindowsUpdate.lob I found the following error lines:

Can not perform non-interactive scan if AU is interactive-only
AU setting pending client directive to 'Install Complete Ux'
WARNING: Pending directive, 'Install Complete Ux', is not applicable
Successfully wrote event for AU health state:0

Now I was installing these updates under a standard user account and I know from UAC group policy a standard user is also referred to as "interactive-only" in some policies. I don't know if it was trying to display something to me and choked, hopefully Microsoft finds out. Either way thanks to all in that thread who discovered this wierd fix.

UPDATE:
I found that changing this setting while Windows Update is displaying "Preparing to Install" seems to actually kick start it so if the above solution doesn't work for you try checking or unchecking that setting and mousing over the notification area while windows update is displaying "Preparing to Install." 

Friday, January 27, 2012

Primary account cannot be removed from Outlook

The Problem
I was remotely setting up a new user. Instead of resetting up everything under a new user we just re-use the existing user setting up new email and changing relative information like the username. After I had setup the new users email account for exchange, I tried to remove the old account and got the following error:"The primary account cannot be removed unless it is the only account in the profile. You must remove all other Exchange accounts before removing the primary account." So I couldn't remove his unless I deleted the account. That wasn't really a path I cared to take.

The Solution
Open up the Control Panel and click on "Profiles." Then click on "Add..." It will ask you for the information for the new exchange email account go ahead and put this info and step through the wizard.

Remove the old profile which has the old email account by clicking on it and then on the button labeled "Remove." Click on "OK" when done to close out the mail dialog box and then open outlook

You now only have one email account in the account settings.

Bottom Line
Outlook 2010 doesn't like removing the first Exchange account setup under a profile. At this point I have seen no way to get around this. The best solution  when removing the account and/or adding another exchange account is to remove the old Outlook Profile and create a new one.

Monday, January 16, 2012

Windows Folder too large - The cause CSC and Offline Files

No Room
The Problem
Well we use folder redirection for the "My Documents" and "Desktop" folders point them to a server. One of the computers had ran out of space recently and I had spent about 2 hours removing stuff and freed up enough space. This computer was running Windows XP.

About three weeks later it was out of space again as you can see as well from the picture on the right side. This time I quickly checked the size of the windows folder and it hit over 100GB. I knew this was my most likely culprit. After setting explorer to allow me to view Hidden & System files/folders then I looked around and found out my CSC folder was chewing up over 103GB.

I had actually dealt with this problem before with another computer that had the same issue. The following link is what I ended up using before and is what I used this time:
http://support.microsoft.com/kb/230738/EN-US/

NOTE:Don't try deleting files or folders from the CSC folder. This can really hose it. I don't have experience from this but that is what gets mentioned in fine print on the KB article and across the web by others.

The Solution
Folder Options
Microsoft recommends re-initializing the Offline files cache and database. Apparently sometimes they can become corrupt and this is what causes the folder to grow so large. One hint that is recommended is to not be logged in as the user or users that usually uses the computer. For me I used the Domain Admin Account. To start open up "Windows Explorer" or "My Computer." Click on "Tools" and "Folder Options." Then go to the "Offline Files" tab.

Folder Options/Delete Files
Then while holding down the CTRL + SHIFT on the keyboard click on "Delete Files..." If you did this right than you should get the box displayed below. Click "Yes".
Re-Initialize Offline folders and data

You should then click the "OK" button on the Folder Options Dialog. It will then pop-up the following box telling you should restart. Click "Yes"

After logging back in over the course of about 5 minutes my free space kept climbing until I had 103GB of free space. I then checked the size of my CSC folder and it was now 2.76MB. Over time as my users start to use this folder again it should grow but hopefully will stay in the preset limits now. Also remember to re-hide the hidden and system folders/files again if you unhid them earlier. Hope that helps.