Archive

Posts Tagged ‘Windows’

Oracle releases VirtualBox 3.2

May 20th, 2010 1 comment

With the Sun now set, Oracle has released VirtualBox 3.2 finally :-) In particular some lovely optimisations for the newer Intel Core i5/i7 processors, Large  Page support (which helps significantly on Windows x64 and Linux) as well as a very welcome optimisation on the networking in VirtualBox as well as multi-monitor support for Windows Guests. Whats more RDP sessions are now accelerated (VRDP).

Amongst the changes from the changelog:

This version is a major update. The following major new features were added:

  • Following the acquisition of Sun Microsystems by Oracle Corporation, the product is now called Oracle VM VirtualBox and all references were changed without impacting compatibility
  • Experimental support for Mac OS X guests (see the manual for more information)
  • Memory ballooning to dynamically in- or decrease the amount of RAM used by a VM (64-bit hosts only) (see the manual for more information)
  • Page Fusion automatically de-duplicates RAM when running similar VMs thereby increasing capacity. Currently supported for Windows guests on 64-bit hosts (see the manual for more information)
  • CPU hot-plugging for Linux (hot-add and hot-remove) and certain Windows guests (hot-add only) (see the manual for more information)
  • New Hypervisor features: with both VT-x/AMD-V on 64-bit hosts, using large pages can improve performance (see the manual for more information); also, on VT-x, unrestricted guest execution is now supported (if nested paging is enabled with VT-x, real mode and protected mode without paging code runs faster, which mainly speeds up guest OS booting)
  • Support for deleting snapshots while the VM is running
  • Support for multi-monitor guest setups in the GUI for Windows guests (see the manual for more information)
  • USB tablet/keyboard emulation for improved user experience if no Guest Additions are available (see the manual for more information).
  • LsiLogic SAS controller emulation (see the manual for more information)
  • RDP video acceleration (see the manual for more information)
  • NAT engine configuration via API and VBoxManage
  • Use of host I/O cache is now configurable (see the manual for more information)
  • Guest Additions: added support for executing guest applications from the host system (replaces the automatic system presimparation feature; see the manual for more information)

Download from VirtualBox or get the Windows build. I’m really hoping the good Oracle keeps VirtualBox open, this is one kickass bit of kit.

  • Share/Bookmark

Beautiful wallpapers for you to relax with.

March 8th, 2010 No comments

Some really cool wallpapers from Windows 7 Technical Evangelist Mike Swanson.

I’ve got the new Audi RS5 wallpapers on my work and home PCs if cars are your thing ;-)

  • Share/Bookmark

Some changes in .NET BCL 4.0

November 21st, 2009 1 comment

I’ve been porting a few products to .NET 4.0 and came across some cool new additions in .NET 4.0 which will be quite useful for developers.

Strings

Streams

Remember writing this before to copy one stream to another?

public static void CopyTo(this Stream input, Stream output)
{
byte[] buffer = new byte[2048];
while (true)
{
int read = input.Read (buffer, 0, buffer.Length);
if (read <= 0)
return;
output.Write (buffer, 0, read);
}
}

Now you don’t need to, just use the Stream.CopyTo() method.

inputStream.CopyTo(output);

Checking for 64bit-ness

Previously to detect a 64bit operating system you would either P/Invoke out and call the IsWow64Process in Kernel32, looked at the “PROCESSOR_ARCHITECTURE” environment variable or even easier (and completely managed code) way of checking the size of a Pointer.

public static bool IsWin64
{
return (IntPtr.Size == 8);
}
public static bool IsWin32
{
return (IntPtr.Size == 4);
}

Now you can simply use the Environment class that comes with two new properties.

WPF 4.0 Improvements

There are simply too many to list, see the article on ScottGu‘s blog about WPF4 and VS2010/.NET 4.0.

One very important tweak are the Text Rendering improvements that TextBlock‘s now have a new TextOptions.TextFormattingMode that greatly improves the quality of text rendering.

<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<StackPanel xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'
xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'>
<TextBox TextOptions.TextFormattingMode="Ideal" FontSize="11">ThushanFernando.com - Ideal</TextBox>
<TextBox TextOptions.TextFormattingMode="Display" FontSize="11">ThushanFernando.com - Display</TextBox>
<TextBox TextOptions.TextFormattingMode="Ideal" FontSize="16">ThushanFernando.com - Ideal</TextBox>
<TextBox TextOptions.TextFormattingMode="Display" FontSize="16">ThushanFernando.com - Display</TextBox>
</StackPanel>
</Grid>
</Window>

Here’s a pretty picture showing the difference between using Ideal and Display. The difference is noticable for text sizes below 15.

MainWindowAlternatively you can place it in the Window so all child controls will render nicely.

<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow - Display" Height="350" Width="525"
TextOptions.TextFormattingMode="Display">
<Grid>
<StackPanel xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'
xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'>
<TextBox FontSize="11">ThushanFernando.com</TextBox>
<TextBox FontSize="16">ThushanFernando.com</TextBox>
</StackPanel>
</Grid>
</Window>

There are LOTS more coming in .NET 4.0 that will make anyone doing .NET development today just wet their pants over, just read the article on MSDN by Justin Van Patten about Whats new in the BCL in .NET 4.0 and also posted on the BCL team blog.

  • Share/Bookmark

Windows 7 NetBIOS Kernel Crash, 1997 all over again :(

November 12th, 2009 No comments

Looks like Windows 7 is vulnerable to an SMB remote exploit.

Unfortunatly this SMB2 security issue is specificaly due to a MS patch, for another SMB2.0 security issue:
KB942624 (MS07-063)
Installing only this specific update on Vista SP0 create the following issue:

SRV2.SYS fails to handle malformed SMB headers for the NEGOTIATE PROTOCOL REQUEST functionnality.
The NEGOTIATE PROTOCOL REQUEST is the first SMB query a client send to a SMB server, and it’s used to identify the SMB dialect that will be used for futher communication.

Reminds me of the days of WinNuke.

  • Share/Bookmark

Apple’s and Linus’s take on Windows 7

October 23rd, 2009 No comments

Apple Propaganda, I mean PR

I posted about Microsoft’s four new Windows 7 commercials the other day and yes, they *are* commercials -- they tell you a bit about the product they’re advertising. Now let’s take a look at Apple’s attempts -- great PR btw! I think they were going for: ‘lets create the most douchebaggy thing to publicise our product and have people post blogs about it’. Well here’s some free PR work courtesy of Apple.

Bill Gates may go down in history for the BSoD for Windows 98 but lest we forget that little kid in school who was always jumping up and down for attention, teasing the smarter kids because he just wasn’t getting any attention.

“Now what is this? I dunno, but it works.” -- Steve Jobs

“It’s pretty awesome when it works.” -- Steve Jobs

It sure is Steve, it suuuuure is. Think Different. It just works. I wonder how they’ll cover having an ad-supported Mac OS X operating system in the future?

Linus Torvalds

Anyway I much prefer the suttle attitude that Linus Torvalds took at the Japan Linux Symposium.

He’s got a sense of humour (and coolness) and as a Linux user (#412328) I’m ever grateful for his operating system. Damn I miss Japan :(

  • Share/Bookmark

Four new Windows 7 Ads

October 22nd, 2009 No comments

Here’s four new Microsoft Windows 7 commercials, 7 seconds to talk about Windows 7.  Short, sweet functionality and to the point. Oh  and look, they don’t seem to need to be bashing their competitors (awww!).

Having used Windows 7 now for close to 2 months I have to say its nothing but pure awesomeness. If you have MSDN there’s no excuse not to try it out. I’ve been too busy to even blog about it :(

  • Share/Bookmark

InvokeRequired with anonymous delegates for threading in WinForms!

September 12th, 2009 1 comment

Here’s a little cookie from the cookie jar. To quote the legendary Jon Skeet from Threading with Windows Forms:

There are two different ways of invoking a method on the UI thread, one synchronous (Invoke) and one asynchronous (BeginInvoke). They work in much the same way – you specify a delegate and (optionally) some arguments, and a message goes on the queue for the UI thread to process. If you use Invoke, the current thread will block until the delegate has been executed. If you use BeginInvoke, the call will return immediately. If you need to get the return value of a delegate invoked asynchronously, you can use EndInvoke with the IAsyncResult returned by BeginInvoke to wait until the delegate has completed and fetch the return value.

Here’s a simple, uncluttered version you can utilise and reuse – this example just adds a list item to the listview.

        public void Add(ListViewItem item)
        {
            if (m_ListView.InvokeRequired)
            {
                m_ListView.BeginInvoke(new MethodInvoker(() => Add(item)));
            }
            else
            {
                m_ListView.Items.Add(item);
            }
        }

First we check whether we’re executing on the GUI thread or not (InvokeRequired), then execute a delegate thats parsed into the MethodInvoker calling itself using a lambda expression. This code is VS2008 compatible (.NET 2.0 +).

For a non lambda version:

        public void Add(ListViewItem item)
        {
            if (m_ListView.InvokeRequired)
            {
                m_ListView.BeginInvoke(new MethodInvoker(delegate
                                                             {
                                                                 Add(item);
                                                             }));
            }
            else
            {
                m_ListView.Items.Add(item);
            }
        }

The advantage of using an anonymous delegate is that by design, delegates are able to use local variables and parameters scoped in the containing method. Therefore we didn’t need to create a custom delegate with the signature to pass onto the method.

  • Share/Bookmark

Lets Get The Party Started: Windows 7 House Party!

September 3rd, 2009 No comments

Excited about Windows 7 launch to the public in October? Organise a party and get some swagger!

Choose a day from October 22-29 and if you’re selected, you’ll not only receive a special Signature Edition of Windows® 7 Ultimate but your very own Windows® 7 Party Pack.

Windows 7 Partaye!

Countries allowed to partaye!

  • Australia
  • Canada
  • France
  • Germany
  • HongKong
  • India
  • Italy
  • Japan
  • Mexico
  • Spain
  • UK
  • USA

Get the details and lets get this party started. (Did I mention I don’t like Pink?)

  • Share/Bookmark

Ars Technica reviews Mac OS X 10.6 Leopard

September 2nd, 2009 No comments

The only review you’ll ever need to read for the newly released Apple OS X 10.6 Leopard from Ars.

Having used 10.6 for a few days now (yes believe it or not I do have a couple of Macs at home!) I’ve felt it to be snappier than the original Leopard the Macbook and iMac shipped with. Still my main box is a Windows 7 machine :-) But I’d highly recommend installing 10.6 if you’re running 10.5 *after* you’ve made sure all your software is compatible, unfortunately Adobe CS3 is not supported in 10.6 (I mean not working in Snow Leopard), so I went out and got CS4 for Mac.

[Update: No one said anything about CS3 being "not supported" on Snow Leopard. The plan, however, is not to take resources away from other efforts (e.g. porting Photoshop to Cocoa) in order to modify 2.5-year-old software in response to changes Apple makes in the OS foundation.]

Lovely.

  • Share/Bookmark

Windows 7 available for MSDN and Technet subscribers!

August 8th, 2009 1 comment

A bit late on this one, Windows 7 has finally hit MSDN and Technet subscribers, go grab your product key and ISO.

Windows 7 MSDN

As posted earlier the Windows 7 hashes remain the same. Dont forget to grab the latest Windows 7 SDK and the RTM version of the Windows API Code Pack for .NET Framework.

From Channel 9:

Enjoy, I’m house hunting this weekend!

  • Share/Bookmark