PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → WD10-Doc sur Graveur
WD10-Doc sur Graveur
Débuté par Fabrice Guillaume, 21 déc. 2005 22:47 - 19 réponses
Posté le 21 décembre 2005 - 22:47
Bonsoir,

J'ai téléchargé la version finale, cool, mais je cherche désespérement la documentation sur les fonctions "graveur..."

Merci d'avance

Bonne soirée

Fabrice
Posté le 22 décembre 2005 - 09:27
Dans son message précédent, Fabrice Guillaume a écrit :
Bonsoir,

J'ai téléchargé la version finale, cool, mais je cherche désespérement la
documentation sur les fonctions "graveur..."

Merci d'avance

Bonne soirée

Fabrice


Moi aussi

--
A+

PhL
Posté le 22 décembre 2005 - 12:28
Pareil, en plus, les fonction sont bien présente, ce doit etre une pré-version finale de l'aide.
Posté le 22 décembre 2005 - 14:04
Salut,

Malheureusement ces fonctions n'ont pu être intégrées à temps dans la
documentation. Veuillez nous excuser pour ce manque que je vais essayer de
combler.

Voici une version interne de la documentation sur les fonctions de gravure.
Afin que l'impression soit facilitée et la lecture claire, dans les réponses
ci-dessous, vous trouverez un post par fonction.

Bonne gravure !
--
Ed en Ligne


"Fabrice Guillaume" <guillaume.fabrice@free.fr> a écrit dans le message de
news: 43a9aeb9$1@news.pcsoft.fr...

Bonsoir,

J'ai téléchargé la version finale, cool, mais je cherche désespérement la
documentation sur les fonctions "graveur..."

Merci d'avance

Bonne soirée

Fabrice
Posté le 22 décembre 2005 - 14:08
GraveurAjouteFichier


But
- Ajouter un fichier au CD que l'on veut créer

Syntaxe
Syntaxe :

<résultat>=GraveurAjouteFichier(<Chemin du fichier source>, [<Nom complet du
fichier dans la compilation>])


<résultat> est un booléen.

<Chemin Fichier Source > : Chaîne de caractères. Le chemin complet du fichier que l'on doit ajouter.

[<Nom complet du fichier dans la compilation>] : Chaîne de caractères. Optionnel. Nom complet du fichier sur le CD. Si ce paramètre n'est pas spécifié, le fichier est ajouté à la racine de la compilation.

Le chemin doit toujours commencer par un slash( \)
Le Chemin du fichier dans la compilation doit être de la forme : « \Répertoire\NomduFichier»)

Détail

Les fichiers à ajouter dans un CD de type Audio doivent obligatoirement être
des fichier WAV (44100 Hz, 16 bits)


Notes

Cette fonction est disponible sous Windows XP et supérieur.

Attention : Le nom du fichier (+l'extension) ne doit pas dépasser 31
caractères ou il sera tronqué. Le répertoire du fichier n'entre pas dans le calcul.


Exemple
- Ajout d'un fichier dans un CD de type données :

GraveurAjouteFichier("C:\MonRep\MonFichier.txt", "\MonRep\MonFichier.txt")
SI ErreurDétectée ALORS
Erreur(ErreurInfo(errComplet))
FIN

- Ajout d'un fichier dans un CD de type Audio :
GraveurAjouteFichier("C:\MonFichier.wav")
SI ErreurDétectée ALORS
Erreur(ErreurInfo(errComplet))
FIN


--
Ed en Ligne



"Ed en ligne" <edenligne@pcsoft.fr> a écrit dans le message de news:
43aa9566$1@news.pcsoft.fr...

Salut,

Malheureusement ces fonctions n'ont pu être intégrées à temps dans la
documentation. Veuillez nous excuser pour ce manque que je vais essayer de
combler.

Voici une version interne de la documentation sur les fonctions de
gravure.
Afin que l'impression soit facilitée et la lecture claire, dans les
réponses
ci-dessous, vous trouverez un post par fonction.

Bonne gravure !
--
Ed en Ligne


"Fabrice Guillaume" <guillaume.fabrice@free.fr> a écrit dans le message de
news: 43a9aeb9$1@news.pcsoft.fr...

Bonsoir,

J'ai téléchargé la version finale, cool, mais je cherche désespérement la
documentation sur les fonctions "graveur..."

Merci d'avance

Bonne soirée

Fabrice


Posté le 22 décembre 2005 - 14:14
GraveurAjouteRépertoire

But
- Ajoute récursivement tous les fichiers du répertoire et de ses
sous-répertoires.

- Appelle GraveurAjouteFichier pour tous les fichiers trouvés.


Syntaxe : <résultat>=GraveurAjouteRépertoire(<Chemin du Répertoire source>, [<Chemin du Répertoire dans la compilation> [, <Nom de la procédure> [,Pointeur]]] )

<résultat> est un booléen.

<Chemin Répertoire Source > : Chaîne de caractères. Le répertoire duquel ajouter les fichiers. Les fichiers sous-répertoires sont également ajoutés. Il est possible de définir un filtre sur les fichiers à ajouter. Voir doc de fListeFichier pour les détails du filtre.

[<Chemin Répertoire cible>] : Optionnel. Chaîne de caractères. Le chemin complet du fichier sur le cd.

CD de données : Si le chemin n'est pas spécifié, les fichiers sont ajoutés à la racine du CD. Les fichiers des sous-répertoires sont ajoutés dans les sous-répertoires correspondants.

CD Audio : Ce paramètre est ignoré si le format du CD est audio. Tous les fichiers sont ajoutés à la racine du disque.

<Nom de la procédure> : Chaîne de caractères. Nom de la procédure W-Langage ("callback") appelée pour chaque fichier listé. Cette procédure permet de manipuler le fichier en cours.

Cette procédure est de la forme : Procédure <Nom de la procédure> (<Chemin>, <Nom du fichier>, <Change>, <Pointeur de la procédure>)

Les paramètres de cette procédure sont optionnels. Si la CallBack renvoie VRAI, le fichier est ajouté à la compilation et l'énumération des fichiers continue. Si la CallBack renvoie FAUX, le fichier n'est pas ajouté à la compilation et l'énumération s'arrête là.

<Pointeur> : Entier optionnel. Pointeur passé à la procédure <Nom de la procédure>.
Paramètre passé à la fonction.

Détail

Attention : Le Chemin du Répertoire dans la compilation doit être de la forme : « \Répertoire\»). Le chemin doit toujours commencer par un slash( \). Si le format du CD est "audio", tous les fichiers seront ajoutés à la racine du CD.

Limitations
Dans cette version, les répertoires vides ne sont pas gravés.

Notes
Cette fonction est disponible sous Windows XP et supérieur.

Exemple
- Ajout d'un Répertoire à la racine du CD

GraveurAjouteRépertoire("C:\MonRep", "", "CallBack_GraveurAjouteRépertoire", 0)
SI ErreurDétectée ALORS
Erreur(ErreurInfo(errComplet))
FIN


Exemple de CallBack
PROCEDURE CallBack_GraveurAjouteRépertoire(Repertoire, Nom, Change)

Trace(Repertoire + TAB, Nom + TAB, Change + TAB)


--
Ed en Ligne


"Ed en ligne" <edenligne@pcsoft.fr> a écrit dans le message de news:
43aa9566$1@news.pcsoft.fr...

Salut,

Malheureusement ces fonctions n'ont pu être intégrées à temps dans la
documentation. Veuillez nous excuser pour ce manque que je vais essayer de
combler.

Voici une version interne de la documentation sur les fonctions de
gravure.
Afin que l'impression soit facilitée et la lecture claire, dans les
réponses
ci-dessous, vous trouverez un post par fonction.

Bonne gravure !
--
Ed en Ligne


"Fabrice Guillaume" <guillaume.fabrice@free.fr> a écrit dans le message de
news: 43a9aeb9$1@news.pcsoft.fr...

Bonsoir,

J'ai téléchargé la version finale, cool, mais je cherche désespérement la
documentation sur les fonctions "graveur..."

Merci d'avance

Bonne soirée

Fabrice


Posté le 22 décembre 2005 - 14:16
GraveurAnnuleGravure

But
- Annuler la gravure en cours de réalisation

Syntaxe : <résultat>=GraveurAnnuleGravure()

<résultat> est un booléen (vrai si la fonction à réussi faux sinon) Attention : Cette fonction avertit MAPI que l'annulation de l'opération est demandée. Elle renvoie VRAI si la demande a été prise en compte. Cela ne signifie pas que l'opération est déjà annulée. Utilisez la fonction GraveurEtat pour savoir si l'opération est effectivement terminée.

Cette fonction est disponible sous Windows XP et supérieur.

Exemple
GraveurAnnuleGravure()
SI ErreurDétectée ALORS
Erreur(ErreurInfo(errComplet))
FIN

--
Ed en ligne
Posté le 22 décembre 2005 - 14:22
GraveurChemin

But
- Obtenir le chemin du graveur sélectionné sous la forme (« H:\ » par
exemple )

Syntaxe : <résultat>=GraveurChemin()

<résultat> est une chaine contenant le chemindu graveur sélectionné terminé
par un BackSlash ( \ )

Notes : Cette fonction est disponible sous Windows XP et supérieur.

Exemple
-Récupération du chemin du graveur utilisés

CheminGraveur est une chaîne
sCheminGraveur = GraveurChemin()
Trace(" Le graveur est accessible par le lecteur : " + sCheminGraveur)


--
Ed en Ligne
Posté le 22 décembre 2005 - 14:23
GraveurEfface

But
- Effacer le disque présent dans le tiroir du graveur.

Syntaxe : <résultat> = GraveurEfface( [<bEffaceComplet> [,<bEjecte>]
[,<sNomCallBack> [, nParamCallBack]]]))

<bEffaceComplet> est un booléen. Optionnel. Faux par défaut. Si
bEffaceComplet est égal à vrai, alors le disque sera complètement effacé.
Sinon, un effacement rapide du disque sera effectué.

<bEjecte> est un booléen. Optionnel. Faux par défaut. Si bEjecte est égal à
vrai, alors le disque est ejecté après l'effacement..

<sNomCallBack> est une chaine = Nom de la procédure WL de CallBack.Voir
doc de GraveurEnregistre.

<NparamCallBack> est un entier = Paramètre à repasser à la CallBack

<résultat> est un booléen (vrai si la fonction à réussi faux sinon)

Notes : Cette fonction est disponible sous Windows XP et supérieur.


Exemple
SI PAS GraveurEfface() ALORS
Erreur(ErreurInfo(errComplet))
FIN

--
Ed en Ligne
Posté le 22 décembre 2005 - 14:28
GraveurEjecte

But
- Ouvrir le tiroir du graveur sélectionné

Syntaxe : <résultat>=GraveurEjecte()

<résultat> est un booléen (vrai si la fonction à réussi faux sinon)

Notes : Cette fonction est disponible sous Windows XP et supérieur.

Exemple
- Ouverture du tiroir du graveur.
SI GraveurEjecte() ALORS
Info(« Le tiroir du graveur est ouvert »)
SINON
Erreur(« Impossible d'ouvrir le tiroir du graveur », ErreurInfo())
FIN


--
Ed en Ligne
Posté le 22 décembre 2005 - 14:28
GraveurEnregistre

But
- Démarrer la gravure effective du CD.
- Attention : la compilation est réinitialisée après la gravure (même si la
gravure est juste une simulation). => il faut refaire tous les
GraveurAjouteXXX.

Syntaxe :<résultat>=GraveurEnregistre([<sNomCompilation>, [<bSimule>,
[<bEjecte>]] [, <sNomCallBack> [, nParamCallBack]]])

<résultat> est un booléen.

<sNomCompilation> est une chaîne de caractère. Ce paramètre correspond au
nom qui va être donné au CD

<bSimule> est un booléen . Vrai si l'on doit seulement procéder à une
simulation, Faux (valeur par défaut) pour effectivement graver le CD.

<bEjecte> est un booléen. Vrai si l'on doit ejecter le cd à la fin de la
gravure, faux sinon

<sNomCallBack> est une chaine = Nom de la procédure WL de CallBack.

<NparamCallBack> est un entier = Paramètre à repasser à la CallBack

Détail
Par défaut, il n'y a pas de simulation et le CD n'est pas éjecté à la fin
de la gravure.

Notes
Cette fonction est disponible sous Windows XP et supérieur.

Exemple
- Graver le CD

GraveurEnregistre("MonCD", "CallBack_Progress")
SI ErreurDétectée ALORS
Erreur(ErreurInfo(errComplet))
FIN


Exemple de code de CallBack :


PROCEDURE CallBack_Progress(nIDNotification est un entier, sMessage est une
chaîne, nParamPerso est un entier, nParam1 est un entier, nParam2 est un
entier)

// Cette CallBack est générique et peut être passée en paramètre à
GraveurEnregistre et GraveurEfface (Rappel : vous pouvez aussi utiliser des
callbacks différentes pour chaque fonction)
// Les paramètres sMessage, nParam1 et nParam2 ne sont pas utilisés pour
tous les évènements. Si un paramètre n'est pas utilisé, il est initialisé à
"" ou 0.


SELON nIDNotification
CAS GraveurNotificationAbandon:
SI OuiNon("Voulez vous vraiment abandonner la gravure ?") ALORS
// appeler la méthode d'annulation de la gravure de IMAPI
RENVOYER Vrai
FIN
// Continuer la gravure
RENVOYER Faux

CAS GraveurNotificationErreur:
// nParam1 : contient le code d'erreur utilisateur
Erreur("Une erreur a été détectée pendant la gravure." , sMessage )

CAS GraveurNotificationAjoutFichier:
// nParam1 : Etape actuelle
// nParam2 : Nombre total d'etapes
Trace("Ajout des fichiers en cours. Etape " + nParam1 + " / " + nParam2)

CAS GraveurNotificationFermetureCD:
// nParam1 : Durée estimée en secondes
Trace("Fermeture du disque. Temps estimé = " + nParam1 + " secondes.")

CAS GraveurNotificationFinEffacement:
// nParam1 : Etat du graveur. 0 si aucune erreur.
Trace("Effacement du disque terminé. Statut = " + nParam1)

CAS GraveurNotificationFinGravure:
// nParam1 : Etat du graveur. 0 si aucune erreur.
Trace("Gravure du disque terminée. Statut = " + nParam1)

CAS GraveurNotificationGravureBloc:
// nParam1 : Bloc actuel
// nParam2 : Nombre total de blocs
Trace("Gravure des données en cours. Etape " + nParam1 + " / " + nParam2)

CAS GraveurNotificationGravurePiste:
// nParam1 : Piste actuelle
// nParam2 : Nombre total de Piste
Trace("Gravure des pistes en cours. Piste " + nParam1 + " / " + nParam2)

CAS GraveurNotificationPrepareGravure:
// nParam1 : Durée estimée en secondes
Trace("Préparation de la gravure. Temps estimé = " + nParam1 + "
secondes.")

AUTRE CAS:
Trace("Statut inconnu = " + nStatut + ", sMessage = " + sMessage + ",
nCompletedSteps = " + nParam1 +", nTotalSteps = " + nParam2)

FIN

--
Ed en Ligne
Posté le 22 décembre 2005 - 14:28
GraveurEtat

But
- Obtenir l'état actuel du graveur sélectionné (grâce à la fonction
GraveurSélectionne)

Syntaxe : <résultat>=GraveurEtat()

<résultat> est un entier contenant les informations sur l'état du graveur

Détail
<résultat> est une des constantes suivantes :
GraveurInactif:
GraveurUtiliséExlusivement:
GraveurGrave:

ou -1 en cas d'erreur

Notes
Cette fonction est disponible sous Windows XP et supérieur.

Exemple
- Récupération de l'état du graveur

nEtat est un entier = GraveurEtat()

sTexte est une chaîne

SELON nEtat
Cas GraveurInactif :
sTexte="GraveurInactif"
Cas GraveurUtiliséExlusivement:
sTexte="GraveurUtiliséExlusivement"
Cas GraveurGrave:
sTexte="GraveurGrave"
FIN

--
Ed en Ligne
Posté le 22 décembre 2005 - 14:32
GraveurInfoMédia

But
- Obtenir des informations sur le media présent dans le graveur

Syntaxe : <résultat>=GraveurInfoMedia(IDInfo)

<IDInfo> est un entier correspondant à l'information à récupérer :
- MédiaType : renvoie l'une des valeurs suivantes :
.. MédiaType_CDDA_CDROM
.. MédiaType_CD_ROM_XA
.. MédiaType_CD_EXTRA
.. MédiaType_CD_I
- MédiaFormat : renvoie une combinaison des valeurs suivantes :
- MédiaFormat_Vierge
- MédiaFormat_RW
- MédiaFormat_R
- MédiaFormat_Inutilisable
- MédiaTailleTotale : renvoie la taille en blocs
- MédiaTailleLibre : renvoie la taille en blocs
- MédiaTailleUtilisée : renvoie la taille en blocs
- MédiaNombreSessions : renvoie la taille en blocs

Renvoie -1 en cas d'erreur.

Notes
Cette fonction est disponible sous Windows XP et supérieur.

Les différentes tailles renvoyées sont en blocks,
1 seconde = 75 Blocks
2048 octets = 1 blocks

Exemple
Trace(GraveurInfoMedia(MédiaTailleTotale))


--
Ed en Ligne
Posté le 22 décembre 2005 - 14:32
GraveurListe

But
- Obtenir la liste des graveurs installés sur le poste en cours d'utilisation.

Syntaxe : <résultat>=GraveurListe([bDétails])

<bDétails> est une booléen :
- Vrai s'il faut renvoyer les informations détaillées,
- Faux (valeur par défaut) : seulement l'identifiant du graveur

<résultat> est une chaine contenant les informations sur modules utilisés
par le processus.

Détail
si bDétails est Faux :
<résultat> est de la forme suivante:
<id Graveur 1>+ RC
<id Graveur 2>+ RC...


si bDétails est Vrai :
<résultat> est de la forme suivante:
<id Graveur>+ TAB +<Marque> + TAB + <Modèle> + TAB + <Firmware> + RC.

<id Graveur> : Chaine de caractère permettant d'identifier le graveur
<Marque> : Chaine de caractère contenant la marque du graveur (ex SONY,
LITE-ON, PHILIPS..)
<Modèle > : Chaine de caractère contenant la modele du graveur
<Firmware> : Chaine de caractère contenant la version du Firmware du
graveur.

Notes
Cette fonction est disponible sous Windows XP et supérieur.

Exemple
sListe est une chaîne = GraveurListe()
Trace(sListe)
ListeSupprimeTout(COMBO_Graveurs)
ListeAjoute(COMBO_Graveurs, sListe)
ListeSelectPlus(COMBO_Graveurs, 1)


--
Ed en Ligne
Posté le 22 décembre 2005 - 14:33
GraveurPropriété

But
- Obtenir des informations sur le media présent dans le graveur

Syntaxe : <résultat>=GraveurInfoMedio(IDInfo)

<IDInfo> est un entier correspondant à l'information à récupérer :
- GraveurVitesse
- GraveurSmartBurn
- GraveurSecondesEntrePistes

Notes : Cette fonction est disponible sous Windows XP et supérieur.

Exemple
Trace( " GraveurVitesse = " + GraveurPropriété(GraveurVitesse))
Trace( " GraveurSmartBurn = " + GraveurPropriété(GraveurSmartBurn))
Trace( " GraveurSecondesEntrePistes = " + GraveurPropriété(GraveurSecondesEntrePistes))

--
Ed en Ligne
Posté le 22 décembre 2005 - 14:37
GraveurSélectionne

But
- Sélectionne le graveur à utiliser lors des futurs appels des fonctions
Graveur.
- (Par défaut le graveur sélectionné est le premier graveur de la liste des
graveurs renvoyée par GraveurListe.)

Syntaxe 1 : <résultat>=GraveurSélectionne( <Id Graveur> )

<ID Graveur> est l'indice ou le nom du graveur dans la liste des graveurs.
Il faut utiliser la fonction GraveurListe pour récuperer la liste des
graveurs.

<résultat> est un booléen (vrai si la fonction à réussi faux sinon)

Notes
Cette fonction est disponible sous Windows XP et supérieur.


Exemple
GraveurSélectionne(1)

ou

// COMBO_Graveurs est une combo remplie avec GraveurListe
GraveurSélectionne(COMBO_Graveurs..ValeurAffichée)

--
Ed en Ligne
Posté le 22 décembre 2005 - 14:37
GraveurTypeMédia

But
- Sélectionner le format du CD que l'on veut créer (Données ou audio)
- Dans le cas où on redéfinit le format , l'appel de cette fonction vide le
contenu actuel de l'image du disque à créé (contenu défini par
GraveurAjouteFichier et GraveurAjouteRépertoire)

Syntaxe : <résultat>=GraveurTypeMédia([<nFormat>])

<résultat> est un entier .

[<nFormat>] : Entier. Une des constantes définies ci-dessous.

Dans le cas, ou <nFormat> est renseigné, il s'agit d'un modification. La
valeur de retour <nRésultat contient 1 si la fonction a réussie, et 0 sinon.
Dans le cas, ou <nFormat> n'est renseigné, il s'agit de la récupération du
format actuellement défini.. La valeur de retour <nRésultat contient une des
constantes suivantes :

MédiaType_CD_ROM_XA: Le graveur est configuré pour un CD de données
MédiaType_CDDA_CDROM: Le graveur est configuré pour un CD audio

Détail
Par défaut, lors de la sélection du graveur à l'aide de la fonction
GraveurSélectionne, le CD est défini comme étant de type « données »
(correspondant à la constante MédiaType_CD_ROM_XA).

Notes
Cette fonction est disponible sous Windows XP et supérieur.

Exemple
-Récupération du format du CD actuel :

nType est un entier = GraveurTypeMédia()
sTexte est une chaîne
SELON nType
CAS MédiaType_CDDA_CDROM: sTexte="MédiaType_CDDA_CDROM"
CAS MédiaType_CD_ROM_XA: sTexte="MédiaType_CD_ROM_XA"
CAS MédiaType_CD_EXTRA: sTexte="MédiaType_CD_EXTRA"
CAS MédiaType_CD_I: sTexte="MédiaType_CD_I"
CAS MédiaType_CD_Autre: sTexte="MédiaType_CD_Autre"
AUTRES CAS : sTexte="Type inconnu : " + nType
FIN

- Affectation du Format du CD :

nRésultat est un entier = GraveurTypeMédia(MédiaType_CDDA_CDROM)
SI nRésultat = 1 ALORS
Info(" L'affectation du format au type audio a réussi ")
SINON
Erreur(" L'affectation du format au type audio a réussi ", ErreurInfo())
FIN



--
Ed en Ligne
Posté le 22 décembre 2005 - 14:37
Constantes Graveur

En paramètre de GraveurInfoMédia
MédiaFormat
MédiaType
MédiaTailleTotale
MédiaTailleLibre
MédiaTailleUtilisée
MédiaNombreSessions


Renvoyées par GraveurInfoMédia(MédiaFormat)

MédiaFormat_CDDA_CDROM
MédiaFormat_CD_ROM_XA
MédiaFormat_CD_I
MédiaFormat_CD_EXTRA
MédiaFormat_CD_Autre / Média_CD_Other
MédiaFormat_Spécial

Renvoyées par GraveurInfoMédia(MédiaType)
MédiaType_Vierge
MédiaType_RW
MédiaType_R
MédiaType_Inutilisable


Renvoyées par GraveurEtat()
GraveurInactif
GraveurUtiliséExlusivement
GraveurGrave

Passées en paramètres à la callback de GraveurEnregistre
GraveurNotificationAjoutFichier
GraveurNotificationGravureBloc
GraveurNotificationGravurePiste
GraveurNotificationFermetureCD
GraveurNotificationFinGravure
GraveurNotificationFinEffacement
GraveurNotificationErreur
GraveurNotificationAbandon


En paramètre de GraveurPropriété
GraveurVitesse
GraveurSmartBurn
GraveurSecondesEntrePistes


--
Ed en Ligne
Posté le 22 décembre 2005 - 14:38
plus drôle : taper GraveurSélectionne et l'infobulle donne comme syntaxe :GraveurOuvreImage ????

taper ensuite GraveurOuvreImage et la la fonction est inconnue, y a comme un bug
Posté le 22 décembre 2005 - 15:33
Y a t'il des problèmes particuliers avec certains graveurs ou avec Windows 2003 Server ?
Pour ma part, les fonctions plantent sur mon serveur équipé d'un graveur CD/DVD.