Killer .NET 4 feature: Memory Mapped files

“So what is it? A memory mapped file allows you to reserve a region of address space and commit physical storage to a region (hmmm, sounds like virtual memory, isn’t it?) but the main difference is that the physical storage comes from a file that is already on the disk instead of the memory manager. I will say that it has two main purposes:

  • It is ideal to access a data file on disk without performing file I/O operations and from buffering the file’s content. This works great when you deal with large data files.
  • You can use memory mapped files to allow multiple processes running on the same machine to share data with each other.“

OMG! You can even specifiy views on a memory mapped file… from different processes… .NET 4 FTW!

Source: http://blogs.msdn.com/salvapatuel/archive/2009/06/08/working-with-memory-mapped-files-in-net-4.aspx

the .NET Framework sourcecode release and how to unpack it…

It’s great to finally have the .NET sourcecode for debugging purposes – inconveniently it’s in a format you might have your difficulties just browsing along. A little tool is here to help!

After you installed, let’s say the WCF sourcecode and debug symbols you get a directory structure similar to this:

wcfsource

This source.zip.tmp file holds the whole sourcecode as one big package. It can’t be unpacked – even one would suggest that by just looking at that .zip ending in the name of the file.

Instead this is a plain-text file of a certain yet simple format. I wrote me a little tool to unpack this file into it’s original files and directories.

You can get the little tool, including sourcecode, here: UnpackMSSources.zip

To start the magic, you would like to go to the command line and start the tool with two parameters. Parameter 1 is the path and filename of the source.zip.tmp file. Parameter 2 is the part of the Path that needs to be cut-off. For the WCF Sources it’s “/DEVDIV/depot/DevDiv/releases/Orcas/SP/ndp/cdf/src/” for example.

The tool will then start to whirl through the file and extract all the files it founds into directories it’s creating along the way. After some seconds you would end with a directory tree like this:

unpacked

Have fun!

Source 1: http://referencesource.microsoft.com/netframework.aspx
Source 2: http://www.schrankmonster.de/content/binary/UnpackMSSources.zip

DPM 2007 problem – why can’t I install the Remote Agent?

I tried to install a Data Protection Manager 2007 Remote Agent remotely and on the machine locally. Trying to install it remotely will always fail with this error message:

dpmfailed

 

Since “tfs” is the only x86 server we have and everything else including the DPM 2007 Server is x64 this is my only bet – but so far even the local installation (which worked) did not change anything. I installed the remote agent and did the console setup setting the dpm server. I then added the production server to the DPM 2007. But the error message remained. I just don’t know what else to do.

Any ideas?

Visual Studio 2010 and .NET Framework 4.0 CTP available

Unexpected news: Obiously the first CTP of the upcoming Visual Studio 2010 and .NET Framework 4.0 is available for download.

“Welcome to the Visual Studio 2010 and .NET Framework 4.0 Community Technology Preview Feedback page! You can now get an early look at the new features we are working on for the next release by downloading the CTP from the Download Center. The CTP release is available in English only as a Virtual PC image.”

2010

Source: http://connect.microsoft.com/VisualStudio/content/content.aspx?ContentID=9790

Microsoft Small Basic – a learning by doing programming environment

Microsoft just released a small tool with the name “Small Basic”. It’s a all-in-one programming environment for beginners:

smallbasic

“Small Basic is a project that’s aimed at bringing “fun” back to programming. By providing a small and easy to learn programming language in a friendly and inviting development environment, Small Basic makes programming a breeze. Ideal for kids and adults alike, Small Basic helps beginners take the first step into the wonderful world of programming.”

Source: http://msdn.microsoft.com/en-us/devlabs/cc950524.aspx

Mono 2.0 released!!

“Mono 2.0 is a portable and open source implementation of the .NET framework for Unix, Windows, MacOS and other operating systems.”

  • Compiler
    • C# 3.0 compiler implementation, with full support for LINQ.
    • Visual Basic 8 compiler.
    • IL assembler and disassembler and the development toolchain required to create libraries and applications.
  • API
    • ADO.NET 2.0 API for accessing databases.
    • ASP.NET 2.0 API for developing Web-based applications.
    • Windows.Forms 2.0 API to create desktop applications.
    • System.XML 2.0: An API to manipulate XML documents.
    • System.Core: Provides support for the Language Integrated Query (LINQ).
    • System.Xml.Linq: Provides a LINQ provider for XML.
    • System.Drawing 2.0 API: A portable graphics rendering API.

mono2

Source: http://www.mono-project.com/Main_Page

the Hyper-V Server 2008 is available… for free…

I virtualization heaven! I am currently using VMWare Server on most of the machines I am doing virtualization on – but the fact that the Microsoft Hypervisor “Hyper-V” is available for free now is really cool:

“Microsoft Hyper-V Server 2008, a bare metal hypervisor-based server virtualization product, is now available as a no-cost Web download at http://www.microsoft.com/Hyper-VServer. Microsoft Hyper-V Server 2008 provides a simplified, reliable and optimized virtualization solution for customers to consolidate Windows or Linux workloads onto a single physical server or to run client operating systems and applications in server-based virtual machines in the data center. Microsoft Hyper-V Server 2008 allows customers to leverage their existing provisioning, updating, management and support tools, processes and skills.”

hypervsetup1

Source: http://hypervoria.com/

freebie day? Another Vista Ultimate game is available…

It seems that today it’s the freebie day (well… for some of us). Because today the next Windows Vista Ultimate Extra is available: Tinker.

Tinker – to shorten up things – is a Sokoban interpretation with some interesting twists.

tinker_update

“Being a small robot isn’t always easy. Being a small robot marooned in a surreal world of clockwork, obscure mechanisms and infuriating puzzles, even less so. In Tinker, a puzzle game that pushes the boundaries of robot frustration, you’ll guide your robot through switches, lasers, teleporters, and a host of other contraptions to reach the exit. He’ll only do what you command. He’ll only go where you tell him to. Will you lead him home, or will you doom him to eternal confusion?

Featuring captivating visuals, an original music score, and 60 levels that range from the facile to the infuriating, Tinker is an isometric, two-dimensional puzzler published exclusively as an Ultimate Extra for Windows Vista Ultimate Users. Tinker features tutorial level, and will include regularly released level packs to expand the experience. Want even more? Download the level builder, and create masterworks of ingenuity to keep your friends scratching their heads. What are you waiting for? Start Tinkering.”

tinkergame

It’s good looking, fun, the music is great and it’s free…

And it’s got it’s own Level Editor:

tinkereditor

Source: http://www.fuelgames.com/

create panoramic images with a free tool

There was the Digital Image Suite and several other tools like Hugin and Cool360 which I used over the last years to create panoramic images. Now there’s a new tool available in 32 and 64 bit (for really really huge images!) from Microsoft Research. It’s free at this point and if you’re on Windows it’s definitely worth the try.

msice

“Microsoft Image Composite Editor is an advanced panoramic image stitcher. You shoot a set of overlapping photographs of a scene from a single location, and Image Composite Editor creates a high-resolution panorama incorporating all your images at full resolution. Then save your stitched panorama in a wide variety of formats, from common formats like JPEG and TIFF to multi-resolution tiled formats like HD View and Silverlight Deep Zoom.”

Source: http://research.microsoft.com/ivm/ice.html

If you need to edit XML files…

…take the XML Notepad.

“Handy features include:

  • Tree View synchronized with Node Text View for quick editing of node names and values.
  • Incremental search (Ctrl+I) in both tree and text views, so as you type it navigates to matching nodes.
  • Cut/copy/paste with full namespace support.
  • Drag/drop support for easy manipulation of the tree, even across different instances of XML Notepad and from the file system.
  • Infinite undo/redo for all edit operations.
  • In place popup multi-line editing of large text node values.
  • Configurable fonts and colors via the options dialog.
  • Full find/replace dialog with support for regex and XPath.
  • Good performance on large XML documents, loading a 3mb document in about one second.
  • Instant XML schema validation while you edit with errors and warnings shown in the task list window.
  • Intellisense based on expected elements and attributes and enumerated simple type values.
  • Support for custom editors for date, dateTime and time datatypes and other types like color.
  • Handy nudge tool bar buttons for quick movement of nodes up and down the tree.
  • Inplace HTML viewer for processing xml-stylesheet processing instructions.
  • Built-in XML Diff tool.
  • Support for XInclude
  • Dynamic help from XSD annotations.
  • Goto definition to navigate includes and XSD schema information. “

xmlnotepad

Source: http://www.microsoft.com/downloads/details.aspx?familyid=72d6aa49-787d-4118-ba5f-4f30fe913628&displaylang=en