PathRenameExtension (shlwapi)
Last changed: johnbell149@gmail.com-202.74.138.1

.
Summary
PathRenameExtension - Replaces the extension of a file name with a new extension. If the file name does not contain an extension, the extension will be attached to the end of the string.

C# Signature:

/// <summary>
/// Replaces the extension of a file name with a new extension. If the file name does not contain an extension, the extension will be attached to the end of the string.
/// </summary>
/// <param name="lpszPath">Pointer to a null-terminated string of length MAX_PATH in which to replace the extension.</param>
/// <param name="pszExt">Pointer to a character buffer that contains a '.' character followed by the new extension.</param>
/// <returns>Returns nonzero if successful, or zero if the new path and extension would exceed MAX_PATH characters.</returns>
[DllImport("shlwapi.dll", EntryPoint = "PathRenameExtensionW",  SetLastError = True, CharSet = CharSet.Unicode)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool PathRenameExtension([MarshalAs(UnmanagedType.LPTStr)]System.Text.StringBuilder lpszPath,
              [MarshalAs(UnmanagedType.LPTStr)]string pszExt);

VB.NET Signature

''' <summary>
''' Replaces the extension of a file name with a new extension. If the file name does not contain an extension, the extension will be attached to the end of the string.
''' </summary>
''' <param name="lpszPath">Pointer to a null-terminated string of length MAX_PATH in which to replace the extension.</param>
''' <param name="pszExt">Pointer to a character buffer that contains a '.' character followed by the new extension.</param>
''' <returns>Returns nonzero if successful, or zero if the new path and extension would exceed MAX_PATH characters.</returns>
<DllImport("shlwapi.dll", EntryPoint:="PathRenameExtensionW",  SetLastError:=True, CharSet:=CharSet.Unicode)> _
Public Function PathRenameExtension(<MarshalAs(UnmanagedType.LPTStr)>lpszPath As System.Text.StringBuilder, _
              <MarshalAs(UnmanagedType.LPTStr)>pszExt As String) As <MarshalAs(UnmanagedType.Bool)>Boolean
End Function

VB Signature:

Public Declare Function PathRenameExtension Lib "shlwapi" Alias "PathRenameExtensionA" _
        (ByVal pszPath As String, _
         ByVal pszExt As String) As Long

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

None.

Tips & Tricks:

Please add some!

Sample Code:

Please add some!

Documentation