|
|
|
|
- Special cases
- WLanguage procedure
fTrackDirectory (Function) In french: fSurveilleRépertoire Detects the modifications performed on the content of a directory. Only the modifications performed on the files found in the directory are detected. If a change is made, a specific procedure is executed in a thread.
// Name of directory to track sDirectoryName is string = "C:\Temp\MyDir" // The fTrackDirectory_Callback procedure will be called // when a file or directory in the "C:\Temp\MyDir" directory is modified. IF fTrackDirectory(sDirectoryName, fTrackDirectory_Callback, ftCreateFile + ... ftModifyFile + ftDeleteFile + ftRename) THEN // Inform the user that the directory will be tracked Info("The " + sDirectoryName + " directory will be tracked.") ELSE // Inform the user that the directory will not be tracked Info("The " + sDirectoryName + " directory will not be tracked.") END
// Code of the procedure PROCÉDURE fTrackDirectory_Callback(sDirectoryName, sFileName, nAction, sOldFileName) ExecuteMainThread(AddTable,sDirectoryName, sFileName, nAction, sOldFileName)
// Procedure that acts on the main thread PROCEDURE AddTable(sDirectoryName, sFileName, nAction, sOldFileName) sActionDesignation is string // The designation of the action depends on nAction SWITCH nAction CASE ftCreateFile: sActionDesignation = "Creating files" CASE ftDeleteFile: sActionDesignation = "Deleting files" CASE ftModifyFile: sActionDesignation = "Modifying files" CASE ftRename: sActionDesignation = "Renaming files" END // Add a line containing the information about the modification // into the TABLE_MODIFICATIONS table TableAddLine(TABLE_MODIFICATIONS, sDirectoryName, sFileName, , ... sActionDesignation, sOldFileName)
Syntax
<Result> = fTrackDirectory(<Directory to track> , <WLanguage procedure> [, <Modifications to notify> [, <Subdirectory>]])
<Result>: Boolean - True if the directory is tracked,
- False otherwise. To get more details on the error, use ErrorInfo.
<Directory to track>: Character string Full name of the directory to track. <WLanguage procedure>: Procedure name Name of the WLanguage procedure ("callback") called when a change is made in the specified directory. <Modifications to notify>: Optional Integer constant (or combination of constants) Modifications performed in the content of the directory to track and for which the procedure must be run: | | ftAll | All the possible actions will be tracked. Corresponds to ftCreateFile + ftModifyFile + ftRename + ftDeleteFile. | ftCreateFile | Creating a file or a directory. | ftDeleteFile | Deleting a file or a directory. | ftModifyFile | Modifying a file or a directory. | ftRename | Renaming a file or a directory. |
<Subdirectory>: Boolean - True (default) to process the sub-directories.
- False otherwise.
Remarks Special cases - fTrackDirectory only monitors the contents of the directory. The changes of directory name or location are ignored.
- To stop tracking the directory, use fTrackStop and fTrackStopAll.
- To track the modifications performed in a file, use fTrackFile.
- Limitation: Only 5 directories can be tracked at the same time.
WLanguage procedure The WLanguage procedure is run in a WLanguage thread. Caution: The following processes cannot be run in the threads: - opening windows with WLanguage functions such as Open, Use, Close, ... A specific management mode must be implemented if some windows must be handled in threads (rare case). For more details, see Opening a window in a secondary thread.
- managing events.
- managing timers.
This page is also available for…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|