Andrej Tozon's blog

In the Attic


Here we go... again - .NET Framework 3.0 RTM

Yup, after a year from the .NET Framework's 2.0 release, and it's time for another release... .NET Framework 3.0 just RTM'ed yesterday...

Here's the link rundown, taken from .NET Framework 3 News and Announcements page:

  • .NET Framework 3.0 Runtime Components
  • Windows SDK for Vista and the .NET Framework 3.0 
  • Visual Studio 2005 Extensions for .NET Framework 3.0 (Windows Workflow Foundation)
  • Visual Studio 2005 Extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP
  • To complement this collection, there's also Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System (VSTO 2005 SE), which should nicely go along also RTM'ed Office 2007 System...

    Less than a month to Windows Vista and Office 2007?

    Looks like we're finally getting there - Windows Vista and Office 2007 will be made available to business on November 30th, while home users will have to wait till public release in January. I'm running Vista RC2 on my laptop and Windows XP + IE7 (final IE7 has been available for download for more than a week now, now also available through Automatic Windows Updates) and I'm ready for the switch. I guess this is also the right time to buy a new working box to raise that experience factor and make Vista happy. Some other stuff I've been installing lately include Windows Live Messenger 8.1 Beta, XNA Game Studio Express Beta 2, Windows Live Writer Beta Update (Build 145) and Microsoft Visual Studio 2005 IDE Enhancements. It's just too bad I don't have more time to play with all these - time's just flying when you're having fun...

    A really big mistake... :)

    This one just made my early morning today... When trying to sign up for invitation to Soapbox on MSN Video Beta, the following error popped up:

    The message is in Slovenian language and could roughly translate to "It looks like we made a really big mistake by not being available right now. Try again later."

    Somebody has a sense of humor, I like that... :)

    VS2005 SP1 Beta is out

    Yes, the very much anticipated Visual Studio 2005 Service Pack 1 Beta is now available through Microsoft Connect. If you signed up for this Beta a week or so ago, you should now have the access to download it! Separate downloads are available for Standard/Pro/Team* and Express editions. The service pack file for non-Express editions takes about 370 MB, and the list of included HotFixes looks long enough... :) I'm just installing it on my usual Beta/CTP suspect - my NX7010 laptop, currently running Vista RC1. Let's see what happens ;)

    According to Somasegar's post, the final version will be shipped in the next 3-4 months. The post also discusses the Windows Vista and .NET Framework 3.0 support, so make sure you read it in full...

    [Update: looking good...]

    Visual Basic 2005 Power Packs

    If you're a VB6 developer, who is just about to migrate to the new, VB 2005 (.NET 2.0) environment, you'll probably going to miss some of the old tools and features you loved to use in good old VB6. To ease up the migration process for you, Microsoft just launched a new site, dedicated to VB 2005 Power Packs, which fill feature downloadable (free) "Add-Ins, Controls, Components, and Tools for you to use with Visual Basic 2005 to make developing great applications even easier".

    Currently, there are two packs already available to download: Microsoft Interop Forms Toolkit will allow you to easily extend your VB6 applications with new WinForms controls by generating all necessary COM wrappers around those controls with a simple click of a button, which in the end allows you the slow, step by step migration to the new environment.[Update: see this blog post for a 6-minute screencast on this toolkit.] The second pack, Microsoft PrintForm Component, simply brings back the feature of printing your application's forms (including print previews).

    You can check for other packs in the making on the Power Pack Suggestion Center (on Microsoft Connect), where you can also vote for your favorite packs and make suggestions for a new pack you'd want to see and use in the future. There's at least one pack already in the making, which I'm sure you already miss - The Line and Shape Controls.

    Installing Windows Vista on NX7010 - blank screen

    I'm receiving quite a few question about installing Windows Vista on HP NX7010 notebook, mainly because of the Radeon 9200 video driver issue, causing the notebook's screen go blank towards the end of installation - by default, Microsoft's Radeon 9000 driver is installed and it obviously doesn't work well with the video card. With the recent, 5536 Vista build, this happens after the last installation reboot, just before you're asked about regional and other settings. I'm going to describe the steps which helped me finish the installation by reinstalling the original Radeon 9200 (for Windows XP) driver.

    Things you'll need in the process:
    1. Vista installation CD (with the serial number),
    2. The latest original (Windows XP) ATI 9200 Radeon driver (downloadable from HP's site),
    3. Extra monitor, ready to plug it in your VGA expansion port on the back panel of your notebook (I'm using a KVM switch to control more computers with the same Keyboard/Monitor/Mouse, so my main desktop monitor is always available for these kind of issues).

    The steps:
    1. Plug in your extra monitor in the VGA port.
    2. Start the Vista Setup and follow the installation steps. After a second (I think) reboot, the screen will stay blank (but not completely, as when the computer is turned off - you'll see some illumination on the edges).
    3. Switch the screen to your extra monitor (by pressing Fn+F4 keys - until you see the screen appear on your extra monitor).
    4. Complete the installation. If notebook reboots again, repeat step 3.
    5. When your system is set up, download the video driver (if you already have it stored on a CD or other media - even better).
    6. Unpack your video driver, but don't run the installation (on my system, the installation is copied to c:\swsetup\SP30204\ folder.
    7. Go to Control Panel | Appearance and Personalization | Personalization | Display Settings.
    8. Press Advanced Settings button and Properties button under Adapter Type - the properties dialog appears.
    9. Select Driver tab and press Update Driver...
    10. Select Browse my computer for driver software and browse for the folder, where video driver's files are located.
    11. Press Next and follow the steps to finish the driver installation. The system will ask you to reboot. Do that.
    12. After the reboot, the notebook screen should again be operational and set to the highest, 1680x1050 resolution.

    This is the procedure I'm taking when installing Windows Vista on my NX7010. I've done this 3-4 times with different vista builds, installing it from scratch or upgrading from a previous version. Described steps might vary from case to case, but the idea of installing the original Windows XP driver should work.

    Some notes: obviously, Radeon 9200 (along with mentioned XP driver) is currently not supported by Vista, so you can count on some unpredicted system failures - my system sometimes crashes when put in hibernation or never wakes up after put to sleep. However, this happens rarely with 5536 build. Also, forget about Aero glass effect and Flip 3D, and your Windows Experience Index will always be set to 1.

    Right now, I wouldn't recommend installing Vista on NX7010, if the notebook is your primary/main working computer. Of course, it is still an unfinished product, and upgrading to the final RTM version probably won't work. But, if you can't wait to see the Vista, it's certainly worth a look.

    I hope this post will help you get your NX7010 working with Windows Vista. Feel free to leave a comment about your installation experience here.

    On a side note: Vista RC1 [b5600] was just released on Friday [with .NET FX 3.0 RC I'd guess]

    Smart, meet beautiful

    "Smart, meet beautiful" - this is the message you're greeted with towards the end of Microsoft Vista Pre-RC1 installation. And yes, Vista continues to look better with each new build [but I'm hardly getting any smarter...]. The latest build (5536). available for download for the first 100.000 people, appears to run a bit faster (graphics/drawing) on my notebook, making me comfortable doing my regular work in Visual Studio 2005 and Office 2007. IE7 appears to perform better too. Now, with the first RC just behind the corner, the wait for the late January release continues...

    Also, XNA Game Studio Express Beta has just been released. If you ever wanted to build a good looking game for Windows (who hasn't?) or Xbox 360 (!), now you can do it using C# and Visual Studio 2005 (C# Express). Now, C# Express Edition is required on the system before installing XNA GSE even if  VS2005 (Standard or higher) is already installed) - it's somewhat a double install but both versions of Visual Studio can coexist on the same machine without interfering with each other.
    I installed it and tried to run the included "Spacewar Starter Kit", but without luck - my video card on this machine is way behind the required standard (DirectX 9.0c). On hold till final release...

    Windows Forms controls - controlling the z-order

    Talking to other developers and hanging around newsgroups and forums I noticed quite a few people have problems arranging controls on a windows form in design time. A typical problem is the overlapping of docked controls. For example, put a Panel and a MenuStrip on a blank form (in that exact order) and set Panel's Dock property to Fill [MenuStrip should already be docked to top]. This results in Panel's top area being hidden behind the MenuStrip:


    Why's that? The way how controls on a form are docked is determined by the z-order [how controls are layered along the form's Z-axis - depth]. The control's z-order is determined by its position in container's Controls collection, with the first control in the collection being at the front (top layer) and the last at the back.

    Thus, in the previous example, the form's Controls collection order is: [0: MenuStrip, 1: Panel], and since higher-layered controls can overlap those behind them, the Panel, having Dock set to Fill, can take all the space it needs, without MenuStrip blocking its way.

    Now, as you've already guessed, we need to change control's z-order to make things look right. If Panel was put in front of MenuStrip, MenuStrip would still be visible (it's docked to Top) and Panel would only occupy the remaining of form's space.

    To fix this at design time, we have a few options:

    • Right-click on the Panel and select "Bring to Front". This will change Panel's position in form's Controls collection to 0, making it the top of z-order. Similarly, you could right-click on MenuStrip and choose "Send to Back".
    • Select the Panel and choose "Format | Order | Bring to Front" from Visual Studio's menu. There are also two icons on the Layout toolbar that do the same thing.

    • Visual Studio 2005 also includes a very useful tool window called Document Outline (menu: View | Other Windows | Document Outline, shortcut: Ctrl+Alt+T), allowing you to rearrange controls by simple drag and drop operations, moving it among different containers and changing their z-order:

    At run time, when adding controls dynamically, you can change control's z-order programmatically: every control, derived from Control class, has BringToFront() and SendToBack() methods:

    Panel panel = new Panel();

    There's many ways you can control the layout of your forms and controls, changing z-order is just one of them. Setting your controls' margins, padding, anchoring and docking properties properly will help you create powerful layouts, which will automatically adjust to various screen resolutions and form's sizes, without the need of additional coding for adapting user controls when user resizes the form.

    [Update: images above were copied directly to WLW and published using FTP Image publishing feature. Issues encountered were image blurring - see above - and numerous errors/republish attempts to upload all images successfully. Also, pictures were "taken" on Windows Vista July CTP]

    Accessing (more) old posts with WLW

    I thought about moving some of my posts from my old blog to this one - Windows Live Writer doesn't really have an option to copy posts between blogs (yet?), but since it supports the Blogger API, it's easy to access and open those old posts nobody wants to read anymore...

    So I added a new weblog account to WLW and connected to Blogger and immediately got my blogger theme look and feel in Writer's document area - this works great. The problem was with how to access all of my old posts since WLW only offers the listing of maximum 25 (latest) posts... To show more, registry tweaking is required: open the registry editor and scroll down to the WLW Preferences section: HKEY_CURRENT_USER\Software\Windows Live Writer\Preferences\PostEditor\RecentPostDefaults, where you'll find a list of guids, representing your blog configurations. In the Data column, you'll see currently set numbers of posts to be displayed (5, 10, 15, 20 or 25). Simply double click on these items and set the higher number - 50, 100, ... When you return in WLW the number will be (re)set to that number and you'll be able to access much more posts than before.

    Now, to republish old posts in my current blog, I'd have to copy the post into a new blog post, set its original date and title and publish it in the new blog.

    [Be careful when editing registry settings - changing wrong keys can lead to unpredictable results. Don't try to do this if you're not sure of what you're doing...]

    Better late then never...

    ... for my Windows Live Writer post... I just love this tool! A bunch of helpful add-ins are already popping up (here, here, here), and if you want to make your own - here's how.

    Also, I'm writing this on Vista July CTP, which also is a major improvement compared to Beta 2. No more (wireless) network problems (at least in my case), VS2005 and SQL2005 install without problems (although suggesting applying SQL2005 SP2...). IIS is also back (with IIS6 compatibility)... However, the NX7010/Radeon 9200 issue remains..

    The address of this blog has also changed, RSS subscriptions should remain the same (thanks to FeedBurner) and is now running on Community Server 2.1. The upgrade process, like always, wasn't going as expected... My online CS database is probably very messed up by now...

    And here's where I live [testing Windows Live Map :)]...



    [Update: apparently, WLMap coordinates get screwed up somewhere in the process, since it put my location about 50km west of actual location I entered...]