Windows Phone 7 Series – home-roll an offline installer

April 7, 2010 10:51 am

[Update 2010-05-05: I originally wrote this for the CTP that worked with VS2010 RC. Now that an updated set of tools has been released to work with VS2010 RTM, the folder name has changed. It is now called 30319.31 as far as I can tell. That is likely to change again for future releases, so just be aware of that. The steps should still work.]

If you have several machines that you want to install the Windows Phone 7 Series developer tools on and don’t want to have to wait for the download on each machine, here’s a little tip for how you can make yourself an “offline” installer:

1. Start with a clean Win 7 machine.

2. Download the web installer (vm_web.exe) from Microsoft and save it to a folder of your choice (let’s say C:\WinPhone7). Start the install.

3. Let the download happen, but when the install itself starts, temporarily cancel it (you can let it finish after step 5).

4. Go to %Temp% using Windows Explorer.

5. Copy the folder 30128.39 to your folder of choice from step 2.

6. Create a Install_WP7_Tools.cmd file containing the following:

xcopy 30128.39 %temp%\30128.39 /I /E
vm_web.exe
pause

7. Copy the folder of choice to a USB storage device.

8. Use the Install_WP7_Tools.cmd file on your other systems. The tools should install and skip most of the downloads quickly.

If you don’t start with a clean Windows 7 machine, the files that the vm_web.exe tool collects in the 30128.39 folder may not contain all the files needed for the install, so you may see a few things extra get downloaded while using the .cmd file on other machines.

On my clean 64-bit Windows 7 machine, I got the following files as part of the toolset:

C:\WinPhone7\30128.39\1033\VM_EXP\Ixpvm.exe
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\dotnetframework\dotNetFx40_Full_x86_x64.exe
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\help\HelpSetup_x64.exe
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\mtpack\NetFx_DTP.cab
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\mtpack\NetFx_DTP.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\rdbg\vs_expbsln_x64_enu.cab
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\rdbg\vs_expbsln_x64_enu.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\silverlight4\Silverlight.4.0_Developer.exe
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\silverlight4\Silverlight4_Tools.exe
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\silverlight4\silverlight_sdk.exe
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\vcruntimes\x64\vc_runtime_x64.cab
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\vcruntimes\x64\vc_runtime_x64.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\watson\dw20shared.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\sde_xde64-enu.cab
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\sde_xde64-enu.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\vs_sdeprolightup-enu.cab
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\vs_sdeprolightup-enu.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\WindowsPhoneDeveloperResources.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\WindowsPhoneExtensions.msi
C:\WinPhone7\30128.39\1033\VM_EXP\wcu\windowsphone\XNAGS40_setup.exe

A total of about 320 MB.

Create a multi-lingual / multi-language MSI using WiX and custom build scripts

March 13, 2010 6:53 pm

Some people might find this useful, so I thought I’d write it up. If you want to create a multi-language MSI (Windows Installer package) that works without a bootstrapper executable, this is one possible way to do it. It relies on an undocumented feature of Windows Installer, so proceed with caution/at your own risk. Testing your final output is a must.

Anyway, according to this article at installsite.org, you can embed transforms into an MSI in a way so that Windows Installer will automatically apply them according to the system language when your MSI is loaded. This is the undocumented feature. If your MSI is simple enough that you don’t need dialog boxes/UI, but you just blaze through a default install, yet you want the few messages that show up by default to be localized, what I’m about to describe might be enough for you.

Here’s what you need: WiX (Windows Installer XML toolset), MsiTran.exe and some sample MSI scripts from the Windows SDK, and finally some custom-written scripts to glue the whole thing together.

I’ll assume you already have WiX installed (possibly in conjunction with Visual Studio), and that you have a simple, single-language WiX project handy.

You can get the Windows SDK from Microsoft as an ISO image (this one is for Windows 7). You can then mount this image using Magic Disc, Daemon Tools Lite or some other ISO-peeking utility. If you don’t want to install the entire SDK just to get the MsiTran.exe and MSI script samples, open the ISO up using your tool of choice and find the folder Setup.

To install just the tools package that will give you the MsiTran.exe, run WinSDKTools\WinSDKTools_x86.msi. MsiTran.exe will be found in %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Bin after this. I suggest copying this file to your WiX installer project folder.

To get the script samples, run the MSI WinSDKSamples\WinSDKSamples_x86.msi. Once you’ve done this, you’ll find the sample scripts in %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\SysMgmt\Msi\scripts. Out of all these scripts you only need WiSubStg.vbs and WiLangId.vbs. I suggest copying them to your WiX installer project folder.

You should know ahead of building the original WiX project which languages and how many languages you’ll end up needing. Your original installer needs to list all of these in a comma separated list in the Summary Stream (and the list can’t contain 0). In WiX that looks like this:

<Package
  Compressed="yes"
  Description="My Installer"
  InstallerVersion="200"
  Comments="My Software Installer"
  Languages="1033,1031,1028,2052,1030,1043,1035,1036,1040,1041,1042,1044,1046,1034,1053,1049,1055,1045,2070"
/>

Once you’ve built the single language MSI using WiX, you run a script for each language you need your MSI localized in that does the following:

  • Copy the original MSI to a new file
  • Modify the newly copied MSI so it contains a different ProductLanguage using WiLangId.vbs
  • Create a transform that captures the difference between the two MSIs using MSITran.exe
  • Embed the transform in the final master installer using WiSubStg.vbs

Here’s the script that does it (I call this CreateEmbedLangTransform.cmd):

set MsiName=%1
set lang=%2
set langcode=%3
copy %MsiName%.msi %MsiName%_%lang%.msi
cscript WiLangId.vbs %MsiName%_%lang%.msi Product %langcode% > CreateLangTransform_%lang%.txt
MsiTran.exe -g %MsiName%.msi %MsiName%_%lang%.msi %lang%.mst >> CreateLangTransform_%lang%.txt
cscript wisubstg.vbs FinalMasterInstaller\%MsiName%.msi %lang%.mst %langcode% >> CreateLangTransform_%lang%.txt
cscript wisubstg.vbs FinalMasterInstaller\%MsiName%.msi >> CreateLangTransform_%lang%.txt

All you have to do as a post-build step (either in Visual Studio or as part of your build engine of choice) is call this script once for each language you’re interested in (I call this CreateLocalizedInstallerAllLanguages.cmd):

if not exist FinalMasterInstaller md FinalMasterInstaller
copy MyInstaller.msi FinalMasterInstaller
call CreateEmbedLangTransform.cmd MyInstaller da 1030
call CreateEmbedLangTransform.cmd MyInstaller de 1031
call CreateEmbedLangTransform.cmd MyInstaller es 1034
call CreateEmbedLangTransform.cmd MyInstaller fi 1035
call CreateEmbedLangTransform.cmd MyInstaller fr 1036
call CreateEmbedLangTransform.cmd MyInstaller it 1040
call CreateEmbedLangTransform.cmd MyInstaller jp 1041
call CreateEmbedLangTransform.cmd MyInstaller ko 1042
call CreateEmbedLangTransform.cmd MyInstaller nl 1043
call CreateEmbedLangTransform.cmd MyInstaller no 1044
call CreateEmbedLangTransform.cmd MyInstaller pt_br 1046
call CreateEmbedLangTransform.cmd MyInstaller sv 1053
call CreateEmbedLangTransform.cmd MyInstaller zh_cn 2052
call CreateEmbedLangTransform.cmd MyInstaller zh_tw 1028
call CreateEmbedLangTransform.cmd MyInstaller ru 1049
call CreateEmbedLangTransform.cmd MyInstaller tr 1055
call CreateEmbedLangTransform.cmd MyInstaller pl 1045
call CreateEmbedLangTransform.cmd MyInstaller pt_pt 2070

You’ll need to look up additional language codes in Microsoft’s documentation if you need more than the ones listed above.

Note that I’ve modified the scripts above from the ones I’m actually using to make them a little more generic, and I haven’t tested every aspect of them, but they give you the gist of it.

Here are the script files zipped up.

Thoughts about Linchpin

January 15, 2010 8:59 am

I’ve just finished my second reading of Seth Godin’s forthcoming book, Linchpin. Seth gave a group of people the opportunity to make a donation to the Acumen fund and in return we received a copy of the book before its public ”ship date” on the 26th of this month.

Photo of Linchpin book saddle

Linchpin is at its core a self-help book. It’s meant to help you realize that if you want a shot at being indispensable, in whatever human realm (but mostly at work), you have to make some hard choices in your life. The reasoning for this takes you on a brief tour of economic systems, psychology, neuroscience and societal systems, including the education system.

You’ll read about Karl Marx, Friedrich Engels and Adam Smith and how a system is emerging that leaves an opening for a new role in economic systems: so-called “linchpins,” people who don’t need access to capital in the traditional sense, whose contributions are difficult to make interchangeable/replaceable and who make these contributions for the sake of contributing, not for the sake of making money. Making money, argues Godin, comes as a byproduct of the contribution that a linchpin makes. In a way, part of this book is about how the emerging global economic situation is made up of Communism and Capitalism remixed. And the best (perhaps the only) way to get by in this emerging system is to become a linchpin - an artist who gives of his or her creativity, ingenuity and humanness freely without desire for reciprocation. Linchpins are intrinsically motivated.

The self-help aspect of the book is that Seth is trying to convince you that this is the kind of role YOU want to play, because doing otherwise is a dead-end in the system that’s now emerging worldwide. Seth’s reasons for wanting you to become a linchpin are well-meaning and honest. He’s attempting to give you the best advice he can, based on the way he sees things unfolding right now. It’s hard to accurately summarize what the book says constitutes the behaviors and attitudes of a linchpin, and it would probably diminish the experience of reading the book. There are plenty of examples and inspiring stories in the book, and they make for really interesting reading.

At times it feels like the book is a collection of somewhat distantly related blog post blurbs, woven together loosely by a few underlying threads. It’s a little hard to follow at times, keeping up with the jumps and turns, and maybe this is just a logical consequence of Seth frequently sharing a lot of his thoughts in blog post format. It’s become his style. That doesn’t make the underlying threads any less important, though.

In a way, the case for the linchpin idea is made with a hermetically sealed argument. If you want to argue that the idea won’t work for you, the book has the counter-argument ready that this is your “lizard brain” speaking. It is the most ancient part of the brain (speaking in terms of evolutionary age), the part that is most concerned with survival and basic biological functions. Given the chance, your lizard brain will win over the more developed, more “recent” parts of your consciousness. It takes hard work and tricks to overcome the resistance that the lizard brain represents. The book takes a long, hard look at all that. In fact the book says that your lizard brain hates it when you read books like Linchpin.

I have no doubt that the book is spot on in saying that we don’t need more things cheaper, faster and more average. We’ve lived in a system focused on that for only a short time (a couple of generations), but it seems like forever (we have bad memory). We’re ready for getting back to outstanding things. Art that moves us, makes us feel connected, builds us up, helps us form new tribes. We’re hungry for real, human interactions, ready for forming new bonds with people in whatever way that might happen. We’re tired of the simple exchange, the transaction that leaves us distanced from each other. We look for ways to get more involved, to matter to each other. Linchpin shows us how, by encouraging us to bring all of ourselves into each part of our lives, at work and at home (but it’s mostly about work).

That being said, I don’t think everyone can be a linchpin. All large systems (ecosystems, societies, companies) have hierarchies and layers. Ecosystems, for example, have tons of species that are needed “below” to feed the outstanding species at the top. I think it’s similar in the workplace. And in a way, the book has an answer for that. Nobody is a linchpin all the time. Even the most successful people spend most of their time doing ordinary things. It’s the moments of extraordinary acts that make them linchpins.

I also think that the road to becoming a linchpin is long and hard. The “resistance” can’t be overcome “suddenly.” It’s a slow learning process. In fact, the book argues that the best way to beat the resistance is to slowly try to build a platform that looks “harmless” to the resistance, so that when you’re finally ready to take the leap, you have a network of “friendlies” that are ready to see what you have to give. A lot of the arguments the book makes depend on an assumed network that supports linchpins. For example, you shouldn’t be afraid of getting fired for breaking rules, because it will be obvious to others that you have linchpin characteristics, and they will hire you in a heartbeat. This requires that you’re well-kown. The hard part is getting noticed. The Internet accelerates the “race to the bottom” (outsourcing, standardization, commoditization) and at the same time makes it harder to be remarkable because you have to stand out among a vastly bigger crowd. Seth says you don’t have to be an outlier (probably in the Malcolm Gladwell sense) to become a linchpin, but it seems to me that somehow you do, at least a little bit. Maybe not an outlier in a “global” sense, like a world-famous movie star or musician, but certainly in your local environment.

Linchpin encourages everyone to contribute “art,” saying that it’s the only thing that is hard to commoditize. I wonder if a flooding of the marketplace with “art” won’t commoditize it somehow anyway. Another question in my mind is how today’s megacorporations can become more human, more remarkable? It certainly isn’t going to happen overnight. There’s a lot of inertia in big systems. I suppose the only thing to do is to focus on “art” that’s within your grasp, and slowly build from there.

My own attempt at this (giving things away through this blog) have so far been – how do I put it - interesting. Interesting in the sense that I have given things to people without expecting anything in return, and in specific instances where personal contact was involved, haven’t even gotten back a “thank you.” Maybe what I’m capable of giving away online is not “art” enough. Maybe I have made it too hard to receive.

To me, Linchpin is a perfect specimen of a self-help book, because you really have to do it all yourself. Nobody can help you. Want to make artful gifts, as the book argues linchpins do? You have to figure out what your art is. Want some help figuring it out? Sorry, there is no map (not entirely true; there are seven characteristics a linchpin exhibits, but you still have to figure out how to apply them to yourself or how to develop them). Hesitant to start? That’s your lizard brain holding you back.

100000 Views – Thank You!

December 25, 2009 12:01 am

A while ago (around December 3, 2009) this blog passed the 100,000 views mark. A milestone for any blog, so I thought I’d show you some of the stats from around that time:

100000_views_100024_crop 
Proof that it happened. 100024 views.

100000_views_days_crop
Daily stats leading up to 100000 views.

100000_views_weeks_crop  
Weekly stats leading up to 100000 views.

100000_views_months_crop
Blog stats all the way from the beginning to 100000 views.

People usually reflect on what got them to 100000 views. I guess for me it’s been my involvement with the community site that is connected with the TouchSmart PC. I’ve posted some things here specifically in response to stuff that happened on the community site. As you can see from the dip above, my blog is not particularly popular just for its own sake. It’s usually when something big happens around a release of TouchSmart that people start looking.

Here’s a list of the top posts in case you are into that kind of stats:

Top_posts_crop 

For some reason people like to read about my experience with Crossloop. Whoda thunk?

Anyway, no matter what prompted you to pay a visit – thank you!

And Merry Christmas!

HP TouchSmart SDK 3.0 – Giveaways at PDC 09

November 17, 2009 9:00 am

To mark the release of the TouchSmart 3.0 SDK, HP has a goodie to give away at the Microsoft PDC 09: A super-slim 2 GB USB memory stick (embedded in a hard-plastic business card with a nice imprint). It contains the new SDK and a few documents about a software development partner program HP is starting.

If you see me at PDC, say hi, and I may be able to hand you one of these puppies. I only have a limited supply, though. 15 to be precise.

Check out the pictures:

IMG_3135

Front of the card

 

IMG_3136

Back of the card

 

IMG_3137

Back of the card with USB memory stick flipped open/out

 

IMG_3138 

Front of the card with USB memory stick flipped open/out

New SDK for HP TouchSmart software development – out now!

November 16, 2009 8:30 am

TS3SDK01

Today HP is announcing a new Software Development Kit for helping you write apps that play well in the HP TouchSmart “shell” environment. The new SDK still contains the general guidelines that outline both what makes a good app that’s optimized for touch interaction and the general rules you have to play by in order to “fit” into the HP TouchSmart shell.

But this time around there’s more: For the first time there is also documentation for a WPF library that you can use to more quickly write an app that heeds all of the rules that need to be followed. This library has actually existed for a few releases already, but it was not documented until now (for HP TouchSmart 3.0).

There are also two sample applications. One that demonstrates the basics of the WPF library (and that shows you what the shell does to the apps on a pretty detailed level – it’s great for seeing what registered messages are sent to the app, how the app gets sized, etc.) and one that’s a little game. To round out things, there’s some skeleton sample app code as well, so you can get started quickly with your app idea.

Here are a few screenshots of the two sample apps:

TS3SDK03

“Hello world” Wide-interactive tile

 

TS3SDK08

“Hello world” Large tile

 

TS3SDK10

Notification with CircleX icon

 

TS3SDK11

Notification with CircleCheck icon

 

TS3SDK02 

“Hello Mole” Wide-interactive tile

 

The documentation is provided in two forms: PDF for easy printing and reading offline as well as in Windows Help format for easy searching and looking at class library details.

You’ll notice that most of this only applies to WPF development. If you’re not using WPF yet (why aren’t you? – it’s a great platform), the general guidelines still apply and work. The shell is actually technology agnostic, since all it cares about, really, is the window (handle) your app produces. As long as your technology stack produces a Win32 window, you can “play”. The essence of that is something I’ve talked about before.

So where can you get this newfangled contraption? Head right over to http://www.touchsmartdevzone.com/download/file/2074-27 to start downloading. There’s still a license agreement in the installer (to make the lawyers happy), but I believe you can now download the thing without having to consent to the agreement first.

Upgraded your HP TouchSmart IQ500/800 to Windows 7? A tip on installing the new apps.

October 31, 2009 11:19 am

(Update 2009-11-05: Looks like one more application is now made available for IQ500/800 customers: Twitter)

(Update 2010-02-05: The “shell” has been updated from 3.0.32.0 to 3.0.35.0 on HP’s support site. I’ve updated the link here as well)

I can’t get into every detail of the upgrade process (how to install Windows 7, drivers, etc.), but I thought I would list the HP TouchSmart software applications that are currently available for download and suggest a good order of installation to you. This is all just interim, personal information until something official is made available.

So what’s currently up there on the HP support site? Here’s the list (as of the time of this post) in the order that would be good to follow when installing (again, this may differ from whatever official guidance may come out later; it’s my personal take on it as of right now):

Note that the Live TV application only works with a certain set of TV tuner models. I snagged the links in this post (which may get outdated over time) from the updates page for the IQ527. Since your model may be different, the Live TV app may not work for you. That’s partly why it’s listed last.

So there it is, a refresh to work with Windows 7 for all the original applications that came with the IQ500/800, plus three new ones (Netflix, Hulu and Live TV.) A total of 390 MB of new software. All for just the cost of download bandwidth and your time to install everything.

Design changes in the TouchSmart 3.0 software – what’s new and different from 2.x

October 26, 2009 10:48 pm

There are plenty of tutorial videos for the TouchSmart 3.0 software available (see a longer list at the bottom of this post). For those of you who would rather read about things, here is a little overview of what’s new and changed in TouchSmart 3.0:

HP TouchSmart 3

Direct interaction / tile size: The biggest change is that the top row of tiles is much bigger and wider in 3.0. This enables direct interaction with the content of the tiles, something the 2.x software didn’t allow for most tiles. This means that you can no longer scroll the top row of tiles by just touching them anywhere and then moving your finger. To scroll you have to use either the colored bar at the top of the tile or the semi-transparent border around the tile.

Resource usage: In order to let you better manage resource usage while running the TouchSmart software, tiles that are placed in the bottom row no longer present any live data as they did in 2.x. So if you find little use for all but two tiles, for example, put the ones you don’t use much in the lower row. That way only two apps have to run (each tile corresponds to an app) and the computer will have more resources available for other tasks.

Tile states: TouchSmart 3.0 still has the concept of two app states: the state a tile is in when it’s in the top row (called “wide-interactive”) and the state it’s in when you “launch” it (called “large”). The difference is more academic in 3.0, since you can now interact with tiles whether they’re wide-interactive or large. In 2.x you could only interact with “large” tiles. To “launch” a tile to the large state, you tap on the colored bar or the semi-transparent border around the tile. Tiles in the large state have access to more screen area, and thus may present more functionality in that state than they do in the wide-interactive state (Canvas is a good example of this.)

Speedy scrolling / “throwing”: One of the more fun interactions in TouchSmart 2.x was the ability to “throw” tiles, giving them momentum with a quick flick of your finger, and letting them spin until they came to rest. You could do this in the top row and the bottom row. TouchSmart 3.0 still lets you “throw” tiles, but now there is a beginning and an end to the row; things no longer just spin. That should make it a little easier to find a tile you may be looking for. Also, a “throw” will now take you to the next “set” of tiles and will always center on a tile. If you’re about to go past the end of the row, a snap-back effect will indicate that there are no more tiles in that direction. This snap-back effect is most pronounced in the lower row, since a “throw” there will take you “further”. None of the tutorial videos actually show these “throw” effects, so play around a bit to experience them for yourself. I think they’re fun, anyway.

More apps, more features: TouchSmart 3.0 introduces a whole bunch of new apps: Canvas, Link, Live TV, Netflix, Recipe Box, Twitter and Hulu. You can read much more about these on the HP TouchSmart product page.

   HP TouchSmart Programs

Also, the “main” apps (Music/Photo/Video) have been improved substantially, allowing for home network discovery of media files (support for USB/network/Media Server locations) as well as providing access to Pandora and Rhapsody Internet music services.

Personalization: An area that got a major overhaul in the “Shell” application (branded “HP TouchSmart” proper, but really named SmartCenter by the developers) is Personalization. The introduction of the colored bar at the top of each wide-interactive tile enabled bringing in lots more “color”. Let’s take a more in-depth look at the personalization screens:

HP TouchSmart 3 Personalize - Manage Tiles

On this screen (Manage My Tiles) you can pick a tile to customize in the list on the right (hitting a letter on the keyboard takes you around the list quickly). Then you can choose a color for the tile’s bar on the left, using the various buttons or the rainbow color picker (with an optional RGB color input field for access to all colors). You can also delete a tile. If you do that, and the tile was one of the TouchSmart apps, you can get it back via the Create Tile button (pick the button called HP TouchSmart Program).

You can create a new tile using the Create Tile button:

HP TouchSmart 3 Personalize - Create Tile

Creating a Windows Program tile looks like this:

HP TouchSmart 3 Personalize - Create Windows Program Tile

You can choose from a list of programs found on your computer (the list is filtered a bit to suppress irrelevant programs) or use the Advanced button to define everything “by hand”:

HP TouchSmart 3 Personalize - Create Windows Program Tile - Advanced

Here you can name the tile, type in the full path to the executable (exe) and define any command line arguments in the Parameters box. You can also pick an icon (if the exe has a suitable icon you can use it, or you can pick from a list of icons provided by HP TouchSmart.) If you find the list of icons too limiting, you can place icon files of your liking (best to use 256*256 PNG files with transparency) in the folder %LocalAppData%\Hewlett-Packard\TouchSmart\SmartCenter 2.0\Icons and they should get added to the list [This is for all you fellow geeks out there.]

Creating a Website tile is quite similar, except here the list is made up of Favorites from Internet Explorer:

HP TouchSmart 3 Personalize - Create Website Tile

Typing in your own URL (aka website address) also works.

Tapping the Delete button for a tile just brings up a confirmation screen:

HP TouchSmart 3 Personalize - Delete Tile

If you delete a TouchSmart Program tile, you can recover it later via the Create Tile button by choosing the HP TouchSmart Program button as mentioned above. That will look a little like this:

HP TouchSmart 3 Personalize - Recover Tile

TouchSmart 3.0 comes with a lot more choices of background pictures as well. You can select one from the Choose Background screen in Personalize (see the three buttons towards the top: Manage My Tiles, Choose Background and – on the far right – About):

HP TouchSmart 3 Personalize - Choose Background

You may not have all of these since my screenshots are from a custom install on a test machine. To add your own background pictures to this selection screen, just copy some pictures to the “HP TouchSmart” folder in the Public Pictures folder of Windows 7. Sadly, the ones I managed to get included in 2.x are now gone :(

The last area of Personalize is the venerable “About” screen. Here you’ll find the version number of the SmartCenter program itself as well as a “build” number (in parentheses, here you see “build” 32):

HP TouchSmart 3 Personalize - About

I hope you enjoyed this little guided tour around the TouchSmart 3.0 “shell” and learned something new in the process!

If you’re a developer and want to know how you can add your own apps to the 3.0 “shell”, stay tuned. More information on that will be coming out soon.

P.S.: Here’s a list of direct links to some more TouchSmart 3.0 tutorial videos:

General
Canvas
Demo
Recipe Box: Overview
Recipe Box: Headset
Recipe Box: Add a recipe
Recipe Box: Voice control
Recipe Box: Troubleshooting
Touch Tips
Live TV: Setup
Live TV: Watch and Record
Video: Make Videos

Windows 7 Upgrade discs: Shiny, happy holograms!

7:55 pm

Just in case you’re wondering (yeah, I know, you probably AREN’T) what you’re missing by buying a new PC (such as the HP TouchSmart 600xt – hint, hint ;-) ) with Windows 7 preinstalled, here are some pictures of a Windows 7 upgrade DVD that recently showed up at my doorstep:

Copy of IMG_3067 Copy of IMG_3068 Copy of IMG_3069

Not only is more “happy” coming with Windows 7, as Kylie is fond of saying, if you buy an upgrade, it also brings you a lot of “shiny”.

Pictures from Agile Open California 2009, Day 2

October 16, 2009 7:41 pm

More pictures from Agile Open 2009.

IMG_3052
Agile Open art by Elizabeth McClellan

 IMG_3053
Agile Open art by Elizabeth McClellan

 IMG_3054
Agile Open art by Elizabeth McClellan

 IMG_3055
Agile Open art by Elizabeth McClellan

 IMG_3057
Agile Open art by Elizabeth McClellan

 IMG_3058
Conference center stage