Back in November I finally took the plunge and upgraded my home computer to the 64bit version of Windows Vista Ultimate via a clean install. One thing I did immediately after the install was to move the \users directory from c:\users to f:\users. I did this for two reasons. First, the drive Vista was installed on was only 250GB and I could see running out of room pretty quickly given all of the documents, pictures, videos, etc. I had on the system. The second reason for the move is that I wanted to separate my data from the operating system as much as possible to make upgrades and backups easier to manage.

Unfortunately, there's no easy way in Vista to relocate the \users directory. If you know what you're doing you can change the location during install by using an unattended install, but this can be very complicated to do and is something that's beyond most casual users. In the end I settled on moving all of c:\users over to f:\users and using symbolic links to point from c:\users to f:\users. That way programs could continue to reference c:\users but the operating system would be smart enough to know and forward all requests to f:\users. Following the directions here I was able to move the directories and files and create the required symbolic links. Everything worked well until I got back from vacation last week and my wife tried to login to her account to pay some bills and was greeted by the following error: "The User Profile Service service failed the logon. User profile cannot be loaded." This seemed odd because she had successfully logged into her account only a few weeks ago.

Searching the web for answers turned up this site, which nearly everyone else experiencing the problem linked to.

My problem boiled down to this. I could log in to vista using my (Admin) account and create as many new users as I wanted to via the User Management tools in the control panel. In the User Management tool, I could see each and every one of the new accounts. When I booted up the system or choose to Switch Users, all of the newly created accounts showed up on the log in screen. However, any attempt to log in using any of those accounts resulted in the same "The User Profile Service service failed the logon. User profile cannot be loaded" error.

The recommended solution involved making changes to a specific registry entry that had become corrupted and contained a backup entry. After looking through the recommended solutions, it was obvious to me that my problem was a little different from the majority of users posting to the site. In my case, there was no corrupt registry entry and no backup key to work with. In fact, there were no registry entries for any user accounts other than my working Admin account. I also didn't have a system restore point that went back far enough before I was convinced that the problem had started. From what I could tell, the problem started after an automated Windows update had been applied. The recommendation made to me and others on the forums with the same problem was to reinstall Vista, something I wasn't keen on doing.

At this point, it seemed to me that something must be wrong with the initial creation of a user's profile the first time they log on to Vista. When you create a new user account from the User Manager, Vista doesn't actually create the user's directories until their first log in. When a user logs in for the first time, Vista uses the contents of c:\users\default as a template for the directory/file structure for that user. In the case of the "The User Profile Service service failed the logon. User profile cannot be loaded", I was getting the new user directory (and associated registry entry) was never getting created.

A little more digging through the various Windows log files turned up something interesting. In addition to all of the errors stemming from the user not being able to log in successfully was a warning that a particular filename/extension was to long to be copied. Here it turns out that Vista ran into a problem while trying to copy the default profile during the account creation/log in process. Specifically there are two directories preventing the default profile from being created. The first is:

c:\users\default\AppData\Local\Application Data

As you can see in the following screen shot, the root Application Data folder contains a lot of recursively added \Application Data folders. My best guess is that something went wrong during one of the Windows update processes, resulting in all of the extra recursive \Application Data directories. From the research I've done this doesn't appear to be limited to a single specific Windows update as people have reported the problem as far back as 2007.

Screen1

The second directory you'll need to take a look at is:

C:\users\default\Local Settings\Application Data

Again, if you look in this directory you should find several more levels of \Application Data appended to the top level \Application Data:

Screen2

In both cases, what you'll need to do is to delete all of the additional occurrences of \Application Data below the root level. Once you've done this any user experiencing the "The User Profile Service service failed the logon. User profile cannot be loaded" error should be able to login.

Looks like the Lightroom 2.1 update has officially been released. For those waiting for it, the 2.1 release includes Adobe Camera Raw 5.1 as well as a long list of bug fixes. For the full list, see the ReadMe (PDF).

Windows Version

Mac Version

Over the past year, I've upped my digital photography skills quite a bit. One of the tools I now find I can't live without is Adobe Lightroom. I've been running version 1.x for the better part of a year now, and am happy to announce that version 2.0 has just been released.

In case you are wondering what Lightroom is, or why you would want to use it over something like Photoshop, let me first say that I use both Lightroom and Photoshop CS3 for most of my post processing. I use Lightroom to "develop" my digital images (from RAW and jpg) and to catalog them. For organization, it's much better than Adobe Bridge. I also make lots of corrections in Lightroom such as straightening and cropping images, tonal adjustments, etc. All of those corrections are non-destructive, so you can always go back to the original image at the click of a button. Lightroom also has plugins for exporting directly to Flickr.

Lightroom 2.0 takes things up a notch by adding lots of heavily requested features such as:

  • Local adjustment brush
  • Enhanced organizational tools
  • Volume management
  • Extensible architecture
  • Multiple monitor support
  • Flexible print package functionality
  • Streamlined Photoshop CS3 integration
  • Enhanced output sharpening
  • 64-bit support for Windows® and Mac OS

Of all these enhancements, Local Adjustments is probably the most important. In previous versions of Lightroom, all editing applied to the entire image. With local adjustments, you can now apply editing such as dodging and burning to selected parts of an image - something you could previously do only in Photoshop. This means that photographers will be able to spend more time in Lightroom for tasks that previously required Photoshop, which should help increase workflow productivity overall.

I tried Lightroom 2.0 during the beta, and now I'm really excited about upgrading from my current version.

Due to the amount of comment spam getting by the captcha these days, I've decided to remove the captcha and instead turn on moderated comments. I hate to have to do this, but the amount of comment spam was starting to get ridiculous, and I really hate to see people who have left legitimate comments on the blog get hammered by spammers.

So, please stick with me while I transition to moderated comments. I'll try to get legitimate comments approved as quickly as possible. If your comment doesn't show up right away, don't worry, I haven't forgotten about you, and I certainly won't censor non-spam comments.

Just a quick note that I'll be speaking at Adobe MAX 2008 in San Francisco. My topic this year is Advanced ColdFusion Caching Strategies. I'll be covering ways to improve application performance and scaling using both ColdFusion's built-in caching mechanisms as well as distributed caching systems such as Memcached JCS, and EHCache.

It's been a while since I've spoken at a ColdFusion conference. The last time was at MAX 2004 in New Orleans where I presented 5 sessions on Coding for Scalability. I'm hoping that this year's presentation on Advanced ColdFusion Caching Strategies will be something people find both interesting and useful as I think it's a topic that's often overlooked but can play a big part in both performance and scalability.

Matt Riley, one of our Sr. Engineers at Amkor has just released his first open source project, dubbed the Deployment Server. It's a ColdFusion application (Mach-II 1.5, ColdSpring, EXT 2.0, Java SE 6, Ant 1.7.0, SVN, SQL Server) that's designed to make deploying applications to various server environments simple, auditable, and secure.

We have a very rigorous SDLC at Amkor, and an even more rigorous internal and external audit. As part of that, it's important that we have a clear segregation of duties between developers, QA, approvers, and those that can promote code. In order to make our lives easier, Matt's created an application that provides a security layer around SVN and ANT that allows our operations group (or anyone else defined in the security policies) to specify which builds/tags are to be deployed, and to which server(s).

The application is highly configurable, but because of that, it's not just something you can download and run out of the box - it has to be customized/configured to meet the needs of your particular environment and process. For more information, or to download, check it out on the RIAForge website.

Any and all feedback is welcome.

I've seen a lot of discussion around pricing for the upcoming Tuning Adapter being developed for Tivo Series 3 and Tivo HD boxes to allow for access to channels delivered via SDV, but nothing official has been announced - until now.

I just received a letter from Cox Communications in Phoenix stating that the tuning adapter is expected later this year (no official date), and that it will be provided by Cox at NO ADDITIONAL CHARGE. This is excellent news for Tivo owners concerned about access to programming.

PDF scan of the front of the letter is linked below (enclosures).

In all, Cox is moving/adding a total of 51 channels to SDV, all of them standard definition for now. Included in the list are DIY, Fuse, Fit TV, G4, and several sports, Spanish language, and public safety channels.

A recent post on Brian Kotek's blog about future directions for ColdFusion sparked a lot of debate over whether or not ColdFusion should support AS3 server-side. I want to change the focus here a bit and talk about a feature I've been thinking about that would be potentially useful to a lot of people. I'd like to see ColdFusion 9 support deployment of various services across multiple JVMs - without having to have multiple instances of the full ColdFusion server.

Why would you want to do this? Let me lay out a few scenarios and see if this starts to make more sense. Imagine you have a ColdFusion application deployed on a 32-bit Windows server with 4 GB of memory. The ColdFusion application in question does a lot of XML manipulation and PDF document generation. If you've ever had a similar application in a similar environment, then you know that your ColdFusion application can really only make use of about 1.6 GB of RAM as that's a limit of the JVM on 32 bit platforms. You also know that both XML parsing and PDF document generation are very expensive operations, especially from a memory utilization perspective. Now imagine if you could configure your ColdFusion application such that it was able to off-load the PDF document generation and the XML parsing and transformation to separate JVMs. This would allow your core application to handle the majority of your application functionality while off-loading the processing intensive operations to separate specialized JVMs (as opposed to separate threads on the same JVM). The difference here is that the additional JVMs wouldn't require a full instance of the application server - just the specific processing parts that can be off-loaded. This is exactly how most Enterprise Service Buses deal with distributed processing and I think it would be a killer feature for ColdFusion to have in its bag of tricks.

Of course the benefit isn't limited to just memory limited JVM instances in 32 bit environments. In 64-bit environments, it makes just as much sense as you are still segmenting processing, allowing for better thread utilization, and potentially allowing you to scale out just the type of processing you need to.

What do you think? Does this make sense?

Live blogging from SAPPHIRE 2008 in Orlando. Andre Salazar from Adobe is giving a session on creating engaging experiences for SAP using Adobe technology.

Main themes are Adobe has an entire group for managing the SAP partnership. Technologies highlighted include Flash, Flex, Air, PDF, and LiveCycle.

Partnership started in 2002 to replace SAP SmartForms with PDF Forms. Today, the partnership includes other technologies including Enterprise Learning (Acrobat Connect) and user experiences (Flash/Flex dashboards for SAP Analytics, RIA's within SAP).

SAP has licensed Flex for Visual Composer as well as several new areas, launching later this year.

Right now Andre is concentrating on Air. SAP is interested in Air for desktop/off-line capabilities. I'm not completely sure the way he's explaining it is connecting with the SAP audience. He's bouncing back and forth between Flex and Air, and I think that's further confusing people. They do seem to be respoding positively to the UI's that are being shown.

He's showing an example now of a company that put a Flex front end on top of SAP CRM. It's a (very) simple dashboard with charts and graphs. SAP is shipping an app later this year called Spend Analytics that's built in Flex and exposes cost and spend analysis. It's available in both Flex and Air.

Flex Islands inside of WebDynPro, also available later this year lets you embed Flex components inside the WebDynPro environment.

Excelsius (Business Objects) makes heavy use of Flex to generate rich dashboards from Excel data.

At Adobe, they use Flex and SAP for MDM Management internally.

He's now showing some more demos. The first one is the Adobe Customer Response Tool, built in Air. It's lined with SAP CRM for customer trouble ticket resolution. I see Christine Lawson's name on the demo screen ;-)

Next demo is the Adobe Directory, also built in Air. It's a little search widget that ties in with their LDAP as well as SAP's HCM system and MS Exchange. If someone in the search is available, you can pull up a map of the office and see where they sit. The latest version has voice chat too. Pretty slick.

Adobe has interactive forms internally for Travel Authorization. When you download the form, it's already pre-filled for lots of the information. It links to the travel policy via javascript (from intranet). Form has cost calculations and can be routed to managers for approval. The form is also available both online and offline.

He's now showing Acrobat Connect. It's amazing how much better Acrobat Connect is than WebEx and LiveMeeting.

Well, that's about it. Time to move on to my next session.

I had an issue with my new T-61 recently where I would put the laptop in hibernate mode, only to have it start back up about 5 seconds after shutting down. At first I thought there was something defective with my docking station, but trying the laptop on a separate on yielded the same problem.

After a little more digging, it turns out that the problem was the result of BIOS and driver settings. You see, for some reason the Network setting in my BIOS had Wake on LAN set to Yes. This meant that when my laptop was connected by cable to a network (such is the case with my docking station), any network traffic coming to my machine would cause the laptop to wake up from hibernation. Simply turning Wake on LAN off, however, didn't solve my problem entirely. I also needed to go in to the properties for my network adapter (via Window's Device Manager) and turn off Wake on LAN there as well (for me, it was under the Power Management tab). Once I took care of this, my hibernation restart problem went away.

More Entries




Copyright 1995-2009 Rob Brooks-Bilson. All rights reserved.
Aura skin for Raymond Camden's BlogCFC inspired by Joe Rinehart & Steven Erat. This blog is running version 5.9.004.