|
|
|
|
- Procedure for handling each added file
- Taking the listed files into account
- Compilation
- Adding several identical files
- Required configuration
BurnerAddDirectory (Function) In french: GraveurAjouteRépertoire Adds all the files found in a directory to the compilation. Once all the desired files have been added to the compilation, the CD or DVD can be burned ( BurnerSave). For each added file, BurnerAddDirectory automatically calls a specific procedure written in WLanguage. This procedure is used to handle the current file. // Burn a data CD BurnerMediaType(mediaType_CD_ROM_XA) // Add the files found in "C:\MyDirectory" // The ProcAddFile procedure will be automatically called for each added file ResAdd is boolean ResAdd = BurnerAddDirectory("C:\MyDirectory", "", ProcAddFile) // To view the entire example, click the "Example" link
// Burn an audio CD BurnerMediaType(médiaType_CDDA_CDROM) // Add the ".WAV" files found in "C:\MyMusic" ResAdd is boolean ResAdd = BurnerAddDirectory("C:\MyMusic\*.WAV")  // To view the entire example, click the "Example" link
Syntax
<Result> = BurnerAddDirectory(<Directory to add> [, <Directory on CD or DVD> [, <WLanguage procedure> [, <Pointer>]]] [, <Options>])
<Result>: Boolean - True if the files found in the directory have been added to the compilation,
- False otherwise. To get more details on the error, use ErrorInfo.
Remark: A CD or a DVD must be found in the burner. This CD or DVD must have enough space to burn a new session.
<Directory to add>: Character string Path and generic name of the files that will be added to the compilation (up to 260 characters). A full path, a relative path or a UNC path can be used. Generic characters (* and?) are allowed. For an audio compilation, these files must correspond to ".WAV" file (44100 Hz, 16 bits).
<Directory on CD or DVD>: Optional character string Path of directory on the CD or DVD. This path must start with a backslash character ("\"). By default, the tree structure of the directory will be re-created from the root of the CD/DVD. This parameter is ignored for an audio compilation. Indeed, all the files will be automatically added at the root of the CD/DVD. <WLanguage procedure>: Name of optional procedure Name of WLanguage procedure ("callback") called for each added file. This procedure is used to handle the current file. This procedure has the following format:
PROCEDURE <Procedure name>(<Path>, <File name>, <Change>, <Procedure pointer>) The parameters of this procedure are optional. There is no need to pass parameters to this procedure. Indeed, these parameters are automatically filled whenever a file is processed. The file will be added (or not) to the compilation according to the value returned by this procedure (see the Notes. <Pointer>: Optional integer Pointer passed to <Procedure name>. <Options>: Combination of Integer constants, optional parameter Type of browse performed to add the files found in the directories: | | burnerInterruptibleAddition | The browse can be interrupted by pressing the ESC key.
| burnerNonRecursiveAddition | The browse is a non-recursive browse. Subdirectories are ignored. | burnerRecursiveAddition (Default value) | The browse is recursive. Subdirectories are automatically taken into account. |
Remarks Procedure for handling each added file For each added file, BurnerAddDirectory automatically calls the <Procedure name> procedure. This procedure is a local or global procedure. This procedure must be declared as follows: PROCEDURE <Procedure name> (<Path>, <File name>, <Change>, <Procedure pointer>) - <Path> is the path of file used (it always ends with a "\" character; "C:Files\" for example).
- <File name> is a character string containing the name of file found.
- <Change> is a constant set to:
- flFirstFile when the file is the first file listed in <Path>,
- flChangeDir when the file is the first file listed in a subdirectory of <Path> (which means that the directory has changed),
- flFile in all the other cases.
The different values that can be taken by <Change> are as follows:
| | Current file | <Change> |
---|
Dir\File 1 | flFirstFile | Dir\File n | flFile | Dir\SubDir 1\File 1 | flChangeDir | Dir\SubDir 1\File m | flFile | Dir\SubDir 2\File 1 | flChangeDir | Dir\SubDir 2\File x | flFile |
- <Procedure pointer> is an integer whose value is the one passed to the <Pointer> parameter of BurnerAddDirectory. If <Pointer> is not specified, <Pointer> is set to 0.
To get the value of <Procedure pointer>, its value must be assigned to the value of <Pointer> in the procedure with Transfer. Remark: The parameters of this procedure are optional: you have the ability to specify the name and the path for example. Specify (if necessary) the return value of the procedure via the RETURN keyword. The possible values are as follows: - 0: the file is not added to the compilation and the file enumeration stops.
- 1: the file is added to the compilation and the file enumeration continues.
- 2: the file is not added to the compilation and the file enumeration continues.
Example: PROCEDURE AddElement(Directory, Name, Change) Trace(Directory + TAB, Name + TAB, Change + TAB) // Burn the file and continue the enumeration RESULT 1 // Don't burn the file and stop // RESULT 0 // Don't burn the file and continue // RESULT 2
Taking the listed files into account For each listed file, you can: - add the file to the compilation and continue the enumeration of the files. Use the following line of code in the <Procedure name> procedure:
- add no file to the compilation and continue the enumeration of the files. Use the following line of code in <Procedure name>:
- add no file to the compilation and stop the enumeration of the files. Use the following line of code in <Procedure name>:
If the <Procedure name> procedure returns no value, the file is added to the compilation and the enumeration of the files continues. Compilation A compilation corresponds to the set of files that must be burned on a CD or DVD. This compilation will be taken into account next time BurnerSave is called. A compilation is automatically created during the first call to BurnerAddFile or to BurnerAddDirectory. A single compilation can be created at a time. A compilation is automatically deleted: - when changing the type of CD/DVD to burn (BurnerMediaType).
- when selecting the default burner (BurnerSelect).
- after the call to BurnerSave (only if the burn process was started, <Result> is set to True).
- when canceling the burn process (BurnerCancel).
- when closing the current WINDEV application or WEBDEV site.
Adding several identical files If the same file is added several times to the compilation: - for an audio CD/DVD: this file will be found on the CD/DVD as many times as it was added.
- for a data CD/DVD: only the last added file (same name, same destination directory) will be found on the CD/DVD.
This page is also available for…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|