This project is read-only.

About Long Paths for .NET

This is a .NET 2.0/Visual Studio 2008 compatible fork of the Long Path library from the Microsoft Base Class Libraries project ( The long path wrapper provides functionality to make it easier to work with paths that are longer than the current 259 character limit of the System.IO namespace. Using the long path classes, projects can now use paths up to 32,000 characters.

Initially, this was going to be submitted as a patch to on the BCL project, however, Microsoft probably doesn't want to focus their efforts on this supporting multiple runtimes, so this project was created instead for those who need it.

For more information about the library, visit the official Microsoft code written for .net 4.0 / Visual Studio 2010

Basic Changes from the Official Microsoft Version:

To make the code .NET 2.0 compatible, the main change was removing a few .NET 4.0 exclusive features. However, the API between the two are exactly the same, and the functionality is complete. The code will compile under any runtime greater than v2.0.

New! as of 3/25/2011 - Recursive Entity Listings!

Support was added for lazily-loaded recursive entity listings. New methods were added with an additional parameter, System.IO.SearchOption. This has the same functionality as Directory.GetFiles, however with the LongPath support in this library.

UNC Pathing

As of 3/24/2011, the official Microsoft version of this experimental library doesn't support UNC pathing. This code has been updated to allow UNC pathing.

Last edited Mar 30, 2011 at 5:04 AM by ccurrens, version 8