FsGetLocalName
FsGetLocalName must not be implemented unless your plugin is a temporary file panel plugin! Temporary file panels just hold links to files on the local file system.
Declaration:
BOOL __stdcall FsGetLocalName(char* RemoteName,int maxlen);
Description of parameters:
RemoteName In: Full path to the file name in the plugin namespace, e.g. \somedir\file.ext
Out: Return the path of the file on the local file system, e.g. c:\windows\file.ext
maxlen Maximum number of characters you can return in RemoteName, including the final 0.
Return value:
The function has to return one of the following values:
true The name points to a local file, which is returned in RemoteName.
false The name does not point to a local file, RemoteName is left unchanged.
Important note:
If your plugin is a temporary panel plugin, the following functions MUST be thread-safe (can be called from background transfer manager):
- FsGetLocalName
- FsLinksToLocalFiles
- FsFindFirst
- FsFindNext
- FsFindClose
This means that when uploading subdirectories from your plugin to FTP in the background, Total Commander will call these functions in a background thread. If the user continues to work in the foreground, calls to FsFindFirst and FsFindNext may be occuring at the same time! Therefore it's very important to use the search handle to keep temporary information about the search.
FsStatusInfo will NOT be called from the background thread!