65.9K
CodeProject is changing. Read more.
Home

Dealing with long file names in VB.NET

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0 vote)

May 23, 2013

CPOL
viewsIcon

9822

downloadIcon

192

A class using Win32 Unicode calls to handle file names/paths longer than 254.

Introduction

This article explains using Win32 Unicode calls to handle long file names and paths.

Using the code

This code is basically untested. The FileEnumerator.vb class is straight from Microsoft. Win32Delcares.vb from Microsoft with the declarations changed to Unicode. ioWin32 has: CopyFile_Win32, DeleteFile_Win32, CreateDir_Win32, CopyDir_Win32, GetFilesIncludeSubDirs_Win32, GetDirsIncludeSubDirs_Win32, GetDirs_Win32, GetFiles_Win32, FileExists_Win32, DirExists_Win32, DeleteDir_Win32.

Dim sFiles() As String = IOWin32.UnicodeWin32.Functions.GetFiles_Win32("C:\temp\")
instead of
dim sFiles() as string = system.io.directory.getfiles("C:\temp\")