[This is preliminary documentation and is subject to change.]

Called to execute a file on the plugin's file system, or show its property sheet. It is also called to show a plugin configuration dialog when the user right clicks on the plugin root and chooses 'properties'. The plugin is then called with RemoteName="\" and Verb="properties" (requires TC>=5.51).

Namespace: Tools.TotalCommanderT
Assembly: Tools.TotalCommander (in Tools.TotalCommander.dll) Version: 1.5.3.38916 (1.5.3.38916)

Syntax

C#
[EditorBrowsableAttribute(EditorBrowsableState.Never)]
[CLSCompliantAttribute(false)]
public int FsExecuteFile(
	HWND__* MainWin,
	sbyte* RemoteName,
	sbyte* Verb
)
Visual Basic
<EditorBrowsableAttribute(EditorBrowsableState.Never)> _
<CLSCompliantAttribute(False)> _
Public Function FsExecuteFile ( _
	MainWin As HWND__*, _
	RemoteName As SByte*, _
	Verb As SByte* _
) As Integer
Visual C++
[EditorBrowsableAttribute(EditorBrowsableState::Never)]
[CLSCompliantAttribute(false)]
public:
int FsExecuteFile(
	HWND__* MainWin, 
	signed char* RemoteName, 
	signed char* Verb
)
F#
[<EditorBrowsableAttribute(EditorBrowsableState.Never)>]
[<CLSCompliantAttribute(false)>]
member FsExecuteFile : 
        MainWin:nativeptr<HWND__> * 
        RemoteName:nativeptr<sbyte> * 
        Verb:nativeptr<sbyte> -> int 
JScript
JScript does not support APIs that consume or return unsafe types.

Parameters

MainWin
Type: HWND__*
Parent window which can be used for showing a property sheet.
RemoteName
Type: System..::..SByte*
Name of the file to be executed, with full path.
Verb
Type: System..::..SByte*
This can be either "open", "properties", "chmod" or "quote" (case-insensitive).

Return Value

Return Yourself if Total Commander should download the file and execute it locally, OK if the command was executed successfully in the plugin (or if the command isn't applicable and no further action is needed), Error if execution failed, or Symlink if this was a (symbolic) link or .lnk file pointing to a different directory.

Remarks

Meaning of verbs:
verbmeaning
openThis is called when the user presses ENTER on a file. There are three ways to handle it: For internal commands like "Add new connection", execute it in the plugin and return OK or ErrorLet Total Commander download the file and execute it locally: return YourselfIf the file is a (symbolic) link, set RemoteName to the location to which the link points (including the full plugin path), and return Symlink. Total Commander will then switch to that directory. You can also switch to a directory on the local harddisk! To do this, return a path starting either with a drive letter, or an UNC location (\\server\share). The maximum allowed length of such a path is MAX_PATH-1 = 259 characters!
propertiesShow a property sheet for the file (optional). Currently not handled by internal Totalcmd functions if Yourself is returned, so the plugin needs to do it internally.
chmod xxxThe xxx stands for the new Unix mode (attributes) to be applied to the file RemoteName. This verb is only used when returning Unix attributes through FsFindFirst(SByte*, _WIN32_FIND_DATAW*)/FsFindNext(Void*, _WIN32_FIND_DATAW*)
quote commandlineExecute the command line entered by the user in the directory RemoteName . This is called when the user enters a command in Totalcmd's command line, and presses ENTER. This is optional, and allows to send plugin-specific commands. It's up to the plugin writer what to support here. If the user entered e.g. a cd directory command, you can return the new path in RemoteName (max 259 characters), and give Symlink as return value. Return OK to cause a refresh (re-read) of the active panel.

This function is called by Total Commander and is not intended for direct use

See Also