Thursday, April 30, 2009

Comparison of Windows Virtual PC and Virtual PC 2007

As promised, I got update for you :)

New features to Windows Virtual PC:

  • Integration with Windows XP Mode
  • USB support
  • Seamless application publishing and launching
  • Support for multi threads (each VM in separate thread)
  • Clipboard sharing
  • Printer redirection
  • Smart card redirection
  • Drive sharing
  • Integration with Windows Explorer
  • Known folder integration between host and guest
  • Support for higher resolution (up to 2048x1920)
  • AMD-V and Intel-VT support – even though it looks like it is required?

Windows Virtual PC

As I mentioned before (Windows XP Mode in Windows 7), there is special edition of Virtual PC in Windows 7 – I haven’t tried it yet, however technically I expect it is regular Windows XP with RemoteApp functionality…

That’s however not all – there is also something called “Windows Virtual PC” – obviously it is new version of Virtual PC and I am really interested to see what “new” means ;) Sometimes it was referenced as Virtual PC 7 – don’t do it, Virtual PC 7 was (unofficially) next version of Virtual PC after Connectix acquisition (Virtual PC 2004 I think).

If you try to google it, well, good luck, I haven’t found any real references expect XP Mode – and I am very curious whether that is only difference between Virtual PC 2007 SP1 and Windows Virtual PC or whether there are more changes coming…

I will share with you as soon as possible – I am downloading beta right now :)

Wednesday, April 29, 2009

Strange design of EventLog

Everyone knows EventLog of Windows – you see different event logs and you can see different events in each of them.

For each Event, you can see some information – event type (warning, information…), date and time, source (that is used to see where that event comes from), event id and category…

Well, pretty simple and clear. However what if you are developer?

For my project I wanted to use event log to write entries. Multiple servers are processed and based on event log you can for example see that server x failed – and in description you see why it happened…

S4Matic supports multiple jobs – so for example now I got job for server reboot, server rebuild and emergency update. I wanted to have event logs automatically generated for this, so you could easily see events from separate jobs…

And then I run into problem – you can use source ONLY in one event log. So if you FIRST time use source Security in Security event log, you CANNOT use it in any other event log.

Error occured while processing job Get Citrix servers.
The source 'GEN-Scheduler' is not registered in log 'S4Matic RegularJobs'. (It is registered in log 'S4Matic'.) " The Source and Log properties must be matched, or you may set Log to the empty string, and it will automatically be matched to the Source property.
Script D:\S4Matic\Engine\Runtime\CoreFunctions.ps1, line 28.

Once you FIRST time use “Server1” (server name) in ANY event log, you are not allowed to use it in any other event log.

This is especially annoying with Windows Vista or newer OSs – you got multiple event logs (and therefore I would expect Microsoft would like to see vendors using their own event logs), however with this limitation you run into big risk of conflicts between different event logs. You should use your application name as event source, however then you loose flexibility to use per-application event log (I already know that specific event log is used by my application).

Am I the only one that finds this very annoying??

Windows XP Mode in Windows 7

For those of you that attended my presentation about Terminal Services and XenApp, maybe you remember I was talking about future of application publishing – what I would love to see one day is ability to publish application from within virtual machine (ehm, I know, VMWare Fusion already does that ;)) and ideally ability to move these published applications between computers (because I have laptop and desktop…

Welcome to Windows 7 Windows XP Mode :) This is somehow similar concept to one I mentioned and is ideal for compatibility problems.

In Windows 7, you got native support for VHD files – it is not final yet, however in RC we should get our hands on XPM finally. XPM allows you to run virtual machine with Windows XP on background and access applications (virtually presented to you) from your Windows 7. Technically it is just Windows XP with (kind of) RemoteApp plugin.


What I would however like to see are two (long term) improvements:

  • ability to use RemoteApp on other computers (if VPC is connected to real network and not local only)
  • having standalone RemoteApp plugin for some VPC platforms. That would allow you to use your virtual machines to install some applications and use it on host system without worries. Or to install application to virtual guest first, try it, if it is not what you wanted, you can always undo changes and test competitor ;)


Monday, April 27, 2009

What am I missing in Live Mesh?

Live Mesh is really nice product – however it is still not the product I wanted to see ;) There are not many features I am missing – and below is list of them:


  • increase storage – why can’t we have (at least) 25GB as SkyDrive? Or even better, why cannot Microsoft join SkyDrive and Live Mesh (like they combined SkyDrive with sync favorites functionality of toolbar)?
  • make connecting to other users more friendly – if someone sends me invite to his Live Mesh folder, I can see following problems:
    • I cannot browse those folders in advance
    • if I will connect to them, they will decrease size of my Live Mesh storage
  • Specify conflict rules – there are some folders where I would like to have automated conflict handling – for example Favorites folder. Whenever you open favorite in IE, it will write to it and that means that all my favorites are almost always in conflict. I would like to specify rule “last win” for this folder
  • Multi-user environment – I was surprised when I recently found out that if user creates Live Mesh folder, other users on same PC doesn’t (!) have access to this folder. This means that syncing folders like pictures (and I would like to give access to this folder on my pc to my girlfriend), it doesn’t work
  • Get some advanced Live Mesh interface – there are two faces to this – first I would like to specify folders to sync automatically (using scripts) and have option to identify (using scripts) when all folders are synchronized… Second is (and most users will use this IMHO) ability to force sync, stop sync, start sync etc…
  • Delta sync -  do I need to say more? :) Live Mesh will always re-sync, not just do delta sync (it will synchronize complete files, not only changes)
  • Connect to remote desktop without confirmation – why do I need remote desktop when I need to confirm any access to it?

Of course there are tons of small tunes and tweaks, however these are driving Live Mesh as piece of technology that is “nice, however could be much better” :(

End of was one of my favorites applications\sites for last few years… I realized it recently when I reinstalled my pc, that first application I installed was Last.FM and LastPass…

Times has changed however. Maybe you heard about acquisition of Last.FM by CBS – from that moment I was skeptical about future of (free and perfect)

Today I received following mail:

Hi Soulinprague,

Your free trial to Radio is about to end. If you're enjoying it, why not subscribe for only $3.00/month and continue listening to non-stop personalised radio.

Best Regards,

The Team


Time to look for another music site – I don’t want to return to mp3s anymore ;)

I know three alternatives I run into:



Grooveshark (my favorite)

Do you know any other you could recommend? Or did you like any of links?

UPDATE: I was already kicked out. Grooveshark, here I come ;)


Friday, April 24, 2009

Live Mesh problems with Windows 7

As I mentioned before, I am currently working on “my cloud” project… It is not typical cloud implementation – it is NOT business oriented, however it is useful for end users and it is not using single technology, however mix of technologies.

To summarize what I want to achieve – I want to have all my computers (laptop + desktop for development) automatically synchronized and as additional backup I want to have all my resources available in the cloud.

Not long time ago both my computers crashed (I use Windows 7 64b on both of them) – I could simply reinstall both of them without hassling with backups and then just let them join the cloud and they will download everything from cloud.

Well, crashed… They simply started to act really strange. Syndroms (some of them at least) are below:

Taskbar was completely corrupted – new applications were not displayed, live preview didn’t work etc. Notice the stacked icons on right – every new application looked like this:


Whenever context menu was opened, last entry from that context menu was left on screen after context menu was closed:


I wanted to troubleshoot little bit – ouch, task manager was not displaying any information:


All my Live Mesh folders were not accessible – and icons overlay was gone:


Messenger didn’t work – it will get stuck on connecting, however it will never connect… Also start menu didn’t work at all – I could open it, however could click on any icons and indexing didn’t work.

Looks like pretty bad situation, heh? That was my desktop – on my laptop situation was much better, only few apps like Live Messenger won’t work. As I said, it was my development\experimental desktop, so I thought that it was one of my experiments that broke it.

So I reinstalled it (again with 64bit Windows 7) and installed only software I really use – Skype, Gizmo, Live Mesh, Office… Nothing special. It worked for few days – and same syndroms appeared.

So it was obvious something is really wrong. I tried to create new account and for that account it worked – but my Live Mesh folders were not available. I tried to uninstall Live Mesh – and after reboot everything works fine.

Because I didn’t have access to Programs & Features anymore, I used PowerShell to uninstall it:

$(Get-WmiObject Win32_Product | Where {$_.Name –eq “Live Mesh”}).Uninstall()

After reboot everything was back to normal. Obviously there is some problem with integration to Explorer…

Anyone from Live Mesh team? ;)

Friday, April 17, 2009

Why I hate being betatester for Microsoft…

When I do beta testing, I want to achieve following:

  • get to know upcoming products
  • report bugs
  • request features
  • complain about new features\changes
  • understand upcoming trends

When I do beta testing for Microsoft, I feel like I am only supposed to report bugs.

Microsoft site for beta products is – however I think they should re-design it and make it MUCH easier to navigate…

BUT it is not only one way communication – it’s not only our job to report bugs, it’s also Microsoft’s job to provide some feedback. I must say that I REALLY love approach of Windows 7 team – they do not only tell us “This is how it is and it’s too late to change it”, they are also sharing information about “Why”. I am talking about official Windows 7 blog – even in case you are not interested in Win7, it’s highly recommended to read it to understand how MS works.

Microsoft should provide some (easy to use) voting system – which features got high priority for Microsoft? Which features got high priority for home users? Which features got high priority for professionals?

Anyone can submit feature requests to Connect – and most time he will get reply “We will consider it for future release”.

I would like to see information being pushed to me – beta testers would have ability to “subscribe” to particular products. Anyone could request new feature – if that feature will make any sense (and that should be determined by MS employees), feature request will be forwarded to distribution list of beta testers… Simple email, with description and YES\NO buttons (or stars for rating).

Results should be visible – after this voting round we should be able to see some numbers. As I said, there are many features that simply doesn’t make sense (for example one of most favorites Live Mesh requests is to wake remotely PC – which is technically not possible without using another PC), therefore these forwarded requests should be filtered by responsible product team first.

Second extremely important change should be CHANGE LOG, CHANGE LOG, CHANGE LOG! Why is it that hard to provide change log at least during beta phases? Right now I must investigate differences between new releases – and sometimes find small bits at 3rd party websites or blogs.


Keyboard shortcuts for windows in Windows 7

Yesterday I had discussion with friend of mine and we discussed also UltraMon – pretty famous utility for managing multi-monitor setups.

I am not huge UltraMon fan – I used it few years ago, because it was the one and only, these days I prefer Actual Window Manager.

One of reasons he mentioned why he is still using UltraMon is that he really likes keyboard shortcuts (geeks ;)) – and he was complaining about fact that there are no keyboard shortcuts for easy window management built-into Windows.

Well, there are… At least since Windows 7 ;)

The ones I am using every day are below:

Win + Up –> Maximize window

Win + Down –> Restore window

Win + Left –> Dock window to left

Win + Right –> Dock window to right

Win + Shift + Left|Right –> Move window to left\right monitor

You can find full list here – I use only ones mentioned above…

Interesting fact is that if you have multi-mon setup, Explorer doesn’t allow you to dock to inner borders (two borders where your monitors are touching), however if you use keyboard combinations, it works :)

I got used to this when I was using AeroSnap (gives you same functionality as Win7, however also with ability to snap to inner borders).


Thursday, April 16, 2009

Citrix XenApp vs. Terminal Services

I know Terminal Services are dead – however using RDS wouldn’t say too much to many people :)

Today I got presentation about this two products. Below you can find my powerpoint presentation, however it will be mostly live demo:


If this topic is interesting for you, I can post more detailed article about it…



PowerShell naming design guidelines

A must see for anyone writing code for PowerShell:


S4Matic is currently using custom function names (technology\verb-noun), however one of reasons is that in future we want to easily migrate to Posh V2.

So situation is that naming convention applied now is NOT according to standards, but once Posh V2 will get adopted, it will be immediately following new naming convention. That allows us to easily migrate without changing any code at customer sites.