OVH Cloud OVH Cloud

scruter l'appel d'un fichier .wav

12 réponses
Avatar
Bruno
Je voudrai récupérer dans une appli tournant en tache de fond, un historique
des appels d'un fichier wav.

Est-il possible de savoir, par scrutation d'un paramètre de fichier ou par
tout autre mécanisme, si un fichier .wav vient d'être joué par une
application quelconque.

Merci.
Bruno

10 réponses

1 2
Avatar
Jean-Marc
"Bruno" a écrit dans le message de
news:417a7d28$0$832$
Je voudrai récupérer dans une appli tournant en tache de fond, un


historique
des appels d'un fichier wav.

Est-il possible de savoir, par scrutation d'un paramètre de fichier ou par
tout autre mécanisme, si un fichier .wav vient d'être joué par une
application quelconque.




Non, c'est impossible. Il est facile de montrer pourquoi:
je peux copier le fichier "toto.wav" en "titi.wav". Je
peux jouer titi.wav, puis detruire titi.wav.
Meme en supposant que cette action (lecture de titi.wav)
est logguée quelque part (ce qui n'est de toute façon pas
le cas), tu ne saurais tout de même pas que j'ai en fait
joué "toto.wav".

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
Avatar
Gloops
Salut,

Une chose qu'on pourrait imaginer, c'est que le programme de
confidentialité (style Internet Security, de McAfee) considère les
fichiers WAV comme protégés, et ne donne accès à ces fichiers qu'à un
certain programme. La lecture se ferait par ce programme (qui reste à
écrire, à ma connaissance -probablement sous la forme d'une DLL), qui en
même temps enregistre le chemin dans un fichier texte. Quand je clique
sur NNDBASE.TXT, mon programme de sécurité me demande si Explorer a le
droit d'accéder à NNDBASE.TXT. Si je réponds non, pas moyen d'en faire
une copie. Si je réponds oui, il faut que je donne le mot de passe de
l'administrateur (et tant que le mot de passe n'est pas bon on me repose
la question).

Mais alors si on veut jouer un son en dehors de l'application, il y a du
mourron à se faire.

J'ai lu quelque part sur un site web "En informatique, tout est
possible, mais ce n'est pas toujours évident" :)

Bon là il faut reconnaître que ça promet d'être une usine à gaz à mettre
au point.

Sinon, si on n'a pas affaire à des petits filous, et qu'on veut
seulement enregistrer l'utilisation du son par un certain programme VB
qu'on est en train d'écrire, alors le programme VB réalise la lecture
par une fonction LitSon(chemin As String), qui reçoit le chemin du
fichier son, qui joue le son et écrit le chemin, la date et l'heure dans
un fichier texte (plutôt la date et l'heure en premier, car la longueur
est fixe). Si le fichier texte n'est pas toujours le même ça fait un
deuxième paramètre pour la fonction. La fonction peut retourner une
valeur différente si elle a occasionné une erreur, pour ça voir On Error
Goto.
________________________________________
Jean-Marc a écrit, le 23/10/2004 18:35 :

"Bruno" a écrit dans le message de
news:417a7d28$0$832$

Je voudrai récupérer dans une appli tournant en tache de fond, un



historique

des appels d'un fichier wav.

Est-il possible de savoir, par scrutation d'un paramètre de fichier ou par
tout autre mécanisme, si un fichier .wav vient d'être joué par une
application quelconque.





Non, c'est impossible. Il est facile de montrer pourquoi:
je peux copier le fichier "toto.wav" en "titi.wav". Je
peux jouer titi.wav, puis detruire titi.wav.
Meme en supposant que cette action (lecture de titi.wav)
est logguée quelque part (ce qui n'est de toute façon pas
le cas), tu ne saurais tout de même pas que j'ai en fait
joué "toto.wav".



Avatar
Gloops
Enfin dans cette approche j'ai oublié l'expression "appli tournant en
tâche de fond".
_____________________________________
Gloops a écrit, le 24/10/2004 05:20 :

Sinon, si on n'a pas affaire à des petits filous, et qu'on veut
seulement enregistrer l'utilisation du son par un certain programme VB
qu'on est en train d'écrire, alors le programme VB réalise la lecture
par une fonction LitSon(chemin As String), qui reçoit le chemin du
fichier son, qui joue le son et écrit le chemin, la date et l'heure dans
un fichier texte (plutôt la date et l'heure en premier, car la longueur
est fixe). Si le fichier texte n'est pas toujours le même ça fait un
deuxième paramètre pour la fonction. La fonction peut retourner une
valeur différente si elle a occasionné une erreur, pour ça voir On Error
Goto.


Avatar
Bruno
Merci à tous les deux pour vos réponses qui me laissent inquiet sur la
réussite de mon problème.
Nota : je ne suis pas terrible dans tout ce qui touche à la prog système
:( .... mais je suis prêt à tous les efforts

Pour être précis je vais décrire mieux mon problème. Il y a peut-être
d'autres solutions dans un tout autre registre.

Je tiens aussi à rasurer Jean-Marc, je ne suis pas un petit filou :o)

J'ai un logiciel (dont je ne suis pas du tout maître) qui scrute via un
modem des données statistiques et émet une alarme sonore si un certain
évenement survient.
Je voudrais, d'une manière ou d'une autre, pouvoir lancer une procédure par
un prog VB tournant en tache de fond lorsque ce signal sonore d'alarme est
émis.

J'ai d'abord penser scruter la propriété DateLastAccessed du fichier wav
joué par l'appli, mais apparamment cette propriété n'est pas mise à jour.

J'ai penser aussi mettre un micro près du PC et récupérer le signal du
micro, mais je ne sais pas comment faire ça. Est-ce que cela est possible ?

J'ai penser aussi à écrire un .exe qui joue les .wav et obliger le système
à utiliser cet exe. Est-ce possible ?
La solution de Jean-Marc me laisse un espoir, mais je n'ai pas tout compris
: Pourquoi une DLL ? si le logiciel de stat utilise des api de bas niveau
pour lire le .wav, est ce que ça va marcher ?

J'ai absolument besoin de ce truc, merci pour toute contribution

@+ Bruno
Avatar
scraper
Bonjour Bruno
(dans news:417cbc1a$0$30555$)
tu nous disais :

Merci à tous les deux pour vos réponses qui me laissent inquiet sur la
réussite de mon problème.
Nota : je ne suis pas terrible dans tout ce qui touche à la prog
système :( .... mais je suis prêt à tous les efforts

Pour être précis je vais décrire mieux mon problème. Il y a peut-être
d'autres solutions dans un tout autre registre.

Je tiens aussi à rasurer Jean-Marc, je ne suis pas un petit filou :o)

J'ai un logiciel (dont je ne suis pas du tout maître) qui scrute via
un modem des données statistiques et émet une alarme sonore si un
certain évenement survient.



je suis pas très calé en la matière, mais ... pourquoi ne pas tenter
directement de récupérer l'évènement ? :-)



--

Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm

scraper
Avatar
Bruno
Parceque je ne suis pas maître de cet évenement.
Le logiciel statistique émet un alarme sonore lorsque il détecte qu'un
indice statistique arrive à un certain niveau.
Je ne connait pas du tout la formule mathématique de cet indice et ne peut
donc pas reproduire moi-même l'évenement.
Le logiciel statistique est un logiciel du commerce qui ne donnent aucune
possibilité d'interfaçage.
@+ Bruno

"scraper" a écrit dans le message de
news:
Bonjour Bruno
(dans news:417cbc1a$0$30555$)
tu nous disais :

> Merci à tous les deux pour vos réponses qui me laissent inquiet sur la
> réussite de mon problème.
> Nota : je ne suis pas terrible dans tout ce qui touche à la prog
> système :( .... mais je suis prêt à tous les efforts
>
> Pour être précis je vais décrire mieux mon problème. Il y a peut-être
> d'autres solutions dans un tout autre registre.
>
> Je tiens aussi à rasurer Jean-Marc, je ne suis pas un petit filou :o)
>
> J'ai un logiciel (dont je ne suis pas du tout maître) qui scrute via
> un modem des données statistiques et émet une alarme sonore si un
> certain évenement survient.

je suis pas très calé en la matière, mais ... pourquoi ne pas tenter
directement de récupérer l'évènement ? :-)



--

Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm

scraper




Avatar
Patrice Henrio
Est-ce que l'envoi de l'évènement est typiquement le fichier wav, ou
seulement un bip plus ou moins modulé.
Dans le premier cas, l'évènement envoie un ecommande de jouer (donc
d'ouvrir) le ficheir en questio, dasn l'autre il s'agit d'accéder aux
routines systèmes (INTerrupt) qui produisent un son (comme lors du
démarrage du PC)
Dans le premier cas, je ne vois pas trop comment faire, dans le second il
faut rediriger l'interruption, mais cela ne peut pas se faire
"naturellement" en vb, il faut bidouiller.

Pour ma part je rechercherai sur le web avec les mots "programmer son
interface sonore".

"Bruno" a écrit dans le message de news:
417cc612$0$18659$
Parceque je ne suis pas maître de cet évenement.
Le logiciel statistique émet un alarme sonore lorsque il détecte qu'un
indice statistique arrive à un certain niveau.
Je ne connait pas du tout la formule mathématique de cet indice et ne peut
donc pas reproduire moi-même l'évenement.
Le logiciel statistique est un logiciel du commerce qui ne donnent aucune
possibilité d'interfaçage.
@+ Bruno

"scraper" a écrit dans le message de
news:
Bonjour Bruno
(dans news:417cbc1a$0$30555$)
tu nous disais :

> Merci à tous les deux pour vos réponses qui me laissent inquiet sur la
> réussite de mon problème.
> Nota : je ne suis pas terrible dans tout ce qui touche à la prog
> système :( .... mais je suis prêt à tous les efforts
>
> Pour être précis je vais décrire mieux mon problème. Il y a peut-être
> d'autres solutions dans un tout autre registre.
>
> Je tiens aussi à rasurer Jean-Marc, je ne suis pas un petit filou :o)
>
> J'ai un logiciel (dont je ne suis pas du tout maître) qui scrute via
> un modem des données statistiques et émet une alarme sonore si un
> certain évenement survient.

je suis pas très calé en la matière, mais ... pourquoi ne pas tenter
directement de récupérer l'évènement ? :-)



--

Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm

scraper








Avatar
Bruno
Oui, il s'agit bien d'un fichier wav.
Je viens de trouver une solution à mon problème avec FileMon, un moniteur de
fichiers temps réel, disponible sur http://www.sysinternals.com
C'est un freeware qui affiche en temps réel tous les fichiers utilisés par
le système.
En mettant le nom de mon fichier comme filtre, Filemon affiche seulement les
appels de mon .wav.
Le seul truc pas glob-glob c'est qu'il n'écrit pas sur un fichier et pour
récupérer l'heure d'utilisation du fichier, je dois générer des sendkeys
pour simuler le Copier du menu Edition et récupérer le tout par l'api
getClipboardData.




"Patrice Henrio" a écrit dans le message de
news:
Est-ce que l'envoi de l'évènement est typiquement le fichier wav, ou
seulement un bip plus ou moins modulé.
Dans le premier cas, l'évènement envoie un ecommande de jouer (donc
d'ouvrir) le ficheir en questio, dasn l'autre il s'agit d'accéder aux
routines systèmes (INTerrupt) qui produisent un son (comme lors du
démarrage du PC)
Dans le premier cas, je ne vois pas trop comment faire, dans le second il
faut rediriger l'interruption, mais cela ne peut pas se faire
"naturellement" en vb, il faut bidouiller.

Pour ma part je rechercherai sur le web avec les mots "programmer son
interface sonore".


Avatar
Patrice Henrio
Je crois que sosu XP on a l'heure du dernier accès (même si rien n'est
modifié), ça doit bien figurer quelques part.
Mais peut-être que cette écriture se fait à la fermeture du fichier, ce qui
ne résoudra sans doute pas ton problème.

"Bruno" a écrit dans le message de news:
417d7e86$0$30579$
Oui, il s'agit bien d'un fichier wav.
Je viens de trouver une solution à mon problème avec FileMon, un moniteur
de
fichiers temps réel, disponible sur http://www.sysinternals.com
C'est un freeware qui affiche en temps réel tous les fichiers utilisés par
le système.
En mettant le nom de mon fichier comme filtre, Filemon affiche seulement
les
appels de mon .wav.
Le seul truc pas glob-glob c'est qu'il n'écrit pas sur un fichier et pour
récupérer l'heure d'utilisation du fichier, je dois générer des sendkeys
pour simuler le Copier du menu Edition et récupérer le tout par l'api
getClipboardData.




"Patrice Henrio" a écrit dans le message de
news:
Est-ce que l'envoi de l'évènement est typiquement le fichier wav, ou
seulement un bip plus ou moins modulé.
Dans le premier cas, l'évènement envoie un ecommande de jouer (donc
d'ouvrir) le ficheir en questio, dasn l'autre il s'agit d'accéder aux
routines systèmes (INTerrupt) qui produisent un son (comme lors du
démarrage du PC)
Dans le premier cas, je ne vois pas trop comment faire, dans le second il
faut rediriger l'interruption, mais cela ne peut pas se faire
"naturellement" en vb, il faut bidouiller.

Pour ma part je rechercherai sur le web avec les mots "programmer son
interface sonore".







Avatar
Patrice Henrio
Ce que je viens de dire est faux car dés que l'on cherche à connaître le
dernier accès, on fait un accès au fichier, donc on modifie cette date qui
devient celle de ce nouvel accès justement.


"Patrice Henrio" a écrit dans le message de
news: %
Je crois que sosu XP on a l'heure du dernier accès (même si rien n'est
modifié), ça doit bien figurer quelques part.
Mais peut-être que cette écriture se fait à la fermeture du fichier, ce
qui ne résoudra sans doute pas ton problème.

"Bruno" a écrit dans le message de news:
417d7e86$0$30579$
Oui, il s'agit bien d'un fichier wav.
Je viens de trouver une solution à mon problème avec FileMon, un moniteur
de
fichiers temps réel, disponible sur http://www.sysinternals.com
C'est un freeware qui affiche en temps réel tous les fichiers utilisés
par
le système.
En mettant le nom de mon fichier comme filtre, Filemon affiche seulement
les
appels de mon .wav.
Le seul truc pas glob-glob c'est qu'il n'écrit pas sur un fichier et pour
récupérer l'heure d'utilisation du fichier, je dois générer des sendkeys
pour simuler le Copier du menu Edition et récupérer le tout par l'api
getClipboardData.




"Patrice Henrio" a écrit dans le message de
news:
Est-ce que l'envoi de l'évènement est typiquement le fichier wav, ou
seulement un bip plus ou moins modulé.
Dans le premier cas, l'évènement envoie un ecommande de jouer (donc
d'ouvrir) le ficheir en questio, dasn l'autre il s'agit d'accéder aux
routines systèmes (INTerrupt) qui produisent un son (comme lors du
démarrage du PC)
Dans le premier cas, je ne vois pas trop comment faire, dans le second
il
faut rediriger l'interruption, mais cela ne peut pas se faire
"naturellement" en vb, il faut bidouiller.

Pour ma part je rechercherai sur le web avec les mots "programmer son
interface sonore".











1 2