@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: Creates a unique filename based on an existing filename !!!!C# Signature: [DllImport("shell32.dll", EntryPoint="PathYetAnotherMakeUniqueName", CharSet=CharSet.Unicode)] internal static extern bool PathYetAnotherMakeUniqueName ( StringBuilder pszUniqueName, string pszPath, string pszShort, string pszFileSpec); For older systems such as Windows 2000 that do not have the entry point PathYetAnotherMakeUniqueName name defined, the function is accessible through its' ordinal value: [DllImport("shell32.dll", EntryPoint="#75", CharSet=CharSet.Unicode)] internal static extern bool PathYetAnotherMakeUniqueName ( StringBuilder pszUniqueName, string pszPath, string pszShort, string pszFileSpec); !!!!VB Signature: <DllImport("shell32.dll", EntryPoint:="PathYetAnotherMakeUniqueName", CharSet:=CharSet.Unicode)> _ Friend Shared Function PathYetAnotherMakeUniqueName( _ ByVal pszUniqueName As StringBuilder, _ ByVal pszPath As String, _ ByVal pszShort As String, _ ByVal pszFileSpec As String) As Boolean End Function !!!!Sample Code: const int MAX_PATH = 260; StringBuilder buffer = new StringBuilder(MAX_PATH); string folderSpec = @"d:\longfilename.log"; string fileSpec = "longfilename.log"; bool result = NativeMethods.PathYetAnotherMakeUniqueName(buffer, folderSpec, null, fileSpec); Debug.WriteLine(string.Format("File: {0}", buffer.ToString())); !!!!Alternative Managed API: Do you know one? Please contribute it! Documentation: PathYetAnotherMakeUniqueName@msdn on MSDN
Edit shell32.PathYetAn...
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.