Microsoft released Virtual PC 2004 to manufacturing.
However, it's not available for MSDN yet, but:
Microsoft Virtual PC 2004 will be made available later this year through Microsoft's existing retail and volume licensing channels. It also will be included in Microsoft's MSDN® subscriptions, and volume discounts are available through Microsoft's Open, Select and Enterprise Agreement volume licensing programs.
I'm playing around with C# 2.0 templates a.k.a. generics. I was really missing them in the past, but finally, they're there.
However, the specification for C# 2.0 says in §20.1.1: A type parameter cannot be used directly to declare a base class or interface. Why such a restriction? In some cases you may be able to write your own base class, but often you're not. If I want to extend several existing classes with some additional functionality, I can't. Of course I could derive from each class and add my desired members, but if it's functionality I want to add to a few classes, it's quite impractical.
I've written an example. This generic would write to the console, whenever the base control is clicked:
public class ClickedControl : T where T : System.Windows.Forms.Control
base.Click += new base_Click;
private void base_Click(object sender, EventArgs e)
Console.WriteLine(base.Text + " was clicked");
In your code you could just write
Don't try that home. Well, you may try it, but won't compile. Unfortunately.
Luke Hutteman has released a new version of SharpReader:
SharpReader 0.9.3 is now available for download at sharpreader.net.
Changes since the last version are:
- .NET 1.1 only. Go to windowsupdate.microsoft.com to upgrade if you currently only have .NET 1.0 installed
- Added support for HTTP Authentication (either through a username:pwd@url, or through a popup authentication dialog)
- FeedValidator.org url change
- Multi-select enabled in headline-view
- Handle feed:// protocol. Links to a feed:rss-url will automatically open in SharpReader. For example feed:www.hutteman.com/weblog/rss.xml would open my rss-feed in SharpReader.
- Updated to use log4j 1.2.0 beta 8 - this build no longer has the Win98/WinME bug
- Improved performance of opening new browser windows for users with IE as their default browser.
- Support for the <wfw:commentrss> element.
- Comments are retrieved on demand and are cached across sessions.
- If both <wfw:commentrss> and <slash:comments> tags are present, SharpReader changes the comment-count displayed when you delete comments, and also displays the number of unread items.
- For items no longer in the rss-feed, a "+" is displayed after the comment-count to indicate more comments could have been added since the item disappeared from the feed.
- Fixed bug that sometimes caused an InvalidOperationException (Collection was modified) to occur.
- Save subscriptions right away when new feed is added.
- Load subscriptions.xml even if there was a problem loading settings.xml (previously you would lose all your subscriptions if this happened).
- Added feed-property to specify whether to automatically open the links belonging to an item. Property can be set to "always", "never", or "only if no description is present".
- "Copy IE Proxy Settings on SharpReader startup" option on the proxy-tab.
- Bypass proxy for local URLs
- Systray popup when new items arrive (can be disabled on a per-feed or per-category basis through the properties pane)
- Memory consumption has been reduced by approximately 25%. Startup performance has also been improved.
Yes, the memory consumption is better now, but still high. However, what I really like is the that the option to open links always, never, and only if no description is present is per feed. Some feeds do contain only a few lines of the entire posting, so for these I set the option to always. I really like that.
And finally it provides toasts...
Though I like the UI of FeedDemon much more, I think I'm going back to SharpReader. Maybe Luke will publish the source code some time
SysInternals have released Process Explorer 8.02 a few days ago.
Another major Process Explorer update on the heels of v7.0 brings a slew of enhancements in addition to a more menu options: only non-zero CPU usage is displayed (you'll wonder why Task Manager doesn't do this), replace Task Manager with a new option, see interrupt and DPC time, view context switch counts, look inside .NET processes, configure highlight colors, view CPU usage in a color-coded tray icon, and much more.
[Thanks to Roy Osherove for the SysInternals feed via his SiteFeeder]