MBS Plugin Documentation

Search:

Statistics   -   FAQ   -   Plugin Parts (All, Dependencies)   -   Class hierarchie

New in Version 7.0 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 9.0

The list of the   themes,   classes,   controls,   modules,   global methods by category,   global methods by name,   screenshots,   licenses   and   examples.

Platforms to show: All Mac Windows Linux Cross-Platform

FAQ.How can I get the short name from a filename?
Feedback.

Answer: Try this function:
Example:
Function fGetShortPathName(sLongPathName As String) As String
dim lpShort,lpLong As MemoryBlock
dim iBuff,iLen As Integer

#IF TargetWin32 then
Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (lpszLongPath As Ptr, lpszShortPath As Ptr, cchBuffer As Integer) As Integer

lpShort = newmemoryBlock(255)
lpLong = newMemoryBlock(len(sLongPathName)+2)
iBuff = 254
if right(sLongPathName,1) <> "\" then
lpLong.CString(0) = sLongPathName+"\"
else
lpLong.CString(0) = sLongPathName
end if
iLen = GetShortPathName(lpLong,lpShort,iBuff)

if iLen > 0 then
Return lpShort.CString(0)
else
return "### Error Getting GetShortPathName: " + sLongPathName
end if

#endif
End Function

Notes: The MBS plugin has several functions for this in the folderitem class which work even on Windows NT where this declares fail.