DotNetZip Library

.NET 3.0 provides some support for working with ZIP files. However, it has an important drawback: it only works for packages that are conformant to the Open Packaging Convention standard. Most of the ZIP files are not. Codeplex features a library called DotNetZip that provides support for packing and unpacking in C#, VB.NET or any … Read more

Reference a XAML From Another Project

When you create a WPF application, the start-up window is by default one from the same project (by default called Window1.xaml). < Application x:Class=”WpfApplication1.App” xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml” StartupUri=”Window1.xaml” > < Application.Resources > < /Application.Resources > < /Application > But what if you want to use a window from another project (class library)? The pack URI scheme, … Read more

.NET out string[] to Automation SAFEARRAY**

.NET allows you to expose components as COM and consume them from unmanaged code. There are many references on how to this (and you can only start with MSDN), and I will not talk about that part. What I want to explain here is something different. Suppose you have this interface: [Guid(“2F8433FE-4771-4037-B6B2-ED5F6585ED04”)] [InterfaceType(ComInterfaceType.InterfaceIsIDispatch)] public interface … Read more

Windows API Code Pack for .NET 3.5

MSDN Code Gallery made available an update for the Windows API Code Pack for .NET Framework 3.5 (or above), a library that provides access to some Window 7 features and some existing features in previous operating systems. It includes: Windows 7 Taskbar Jump Lists, Icon Overlay, Progress Bar, Tabbed Thumbnails, and Thumbnail Toolbars. Known Folders, … Read more

More About Code Contracts

In a recent post I wrote about Code Contracts in .NET. Now you can find a more detailed article on this topic at sharparena.com. In this article I’m providing more information and examples on: pre-conditions post-conditions object invariants asserts and assumptions quantifiers In additions, you should check the official user documentation, which can be found … Read more

Code Contracts in Visual Studio 2010

Visual Studio 2010 has support for code contracts that allow to express pre-, post-conditions and invariants to your .NET code. Let’ say you want to create a function to return a random value in a range. This could look like it: class Program { Random rng = new Random(); public int GetRandom(int min, int max) … Read more

Axum, A Language for Building Parallel Applications

Last week Microsoft published on DevLabs a .NET language for building parallel applications, called Axum, and earlier known as Maestro. This new language is build on the architecture of the web, on the principles of isolation, message-passing, fault-tolerance, loose-coupling. It is said to have a more succinct syntax than Erlang, and have the isolation advantage … Read more

Introducere in .NET, 6-8 aprilie

In perioada 6-8 aprilie va avea loc la Bucuresti la sediul Uzinexport un training de Introducere in .NET, sponsorizat de Microsoft Romania. Dupa cum explica Zoli pe blogul sau, acest training este dedicat programatorilor începatori, juniorilor din firmele de software, programatorilor de FoxPro, Visual Basic, Java, dar si programatorilor care nu au reusit sa treaca … Read more