Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[La fonctionnalité associée à cette page, sdk Windows Media Format 11, est une fonctionnalité héritée. Il a été remplacé par lecteur source et enregistreur récepteur. lecteur source et enregistreur récepteur ont été optimisés pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise lecteur source et enregistreur récepteur au lieu d'SDK Windows Media Format 11, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]
Lorsque l’objet lecteur lit les données d’un serveur, il envoie des informations de journalisation au serveur. Les fournisseurs de contenu utilisent généralement ces informations pour mesurer la qualité du service, générer des informations de facturation ou suivre la publicité. Les informations de journalisation ne contiennent aucune donnée personnelle.
L’application peut spécifier certaines des informations enregistrées, en appelant la méthode IWMReaderAdvanced ::SetClientInfo sur l’objet lecteur. Par exemple, vous pouvez spécifier la chaîne de l’agent utilisateur, le nom de l’application de lecteur ou la page Web qui héberge le lecteur.
Les informations de journalisation incluent un GUID qui identifie la session. Par défaut, le lecteur génère un ID de session anonyme. Si vous le souhaitez, le lecteur peut envoyer un ID qui identifie de manière unique l’utilisateur actuel. Pour activer cette fonctionnalité, appelez la méthode IWMReaderAdvanced2 ::SetLogClientID avec la valeur TRUE.
Vous pouvez configurer l’objet lecteur pour envoyer les informations de journalisation à un autre serveur, en plus du serveur d’origine. Pour ce faire, appelez la méthode IWMReaderNetworkConfig ::AddLoggingUrl avec l’URL du serveur. Cette URL doit pointer vers un script ou un exécutable qui peut gérer les requêtes HTTP GET et POST. Vous pouvez utiliser l’Agent de publication de multidiffusion et de journalisation (wmsiislog.dll), ou écrire un script ASP ou CGI personnalisé pour recevoir les données du journal.
Note
Vous pouvez obtenir la même fonctionnalité en créant une playlist côté serveur avec un attribut logURL.
Lorsque l’objet lecteur envoie le journal, il effectue les opérations suivantes :
- Envoie une requête GET vide au serveur.
- Analyse la réponse du serveur pour l’une des chaînes suivantes :
<body><h1>NetShow ISAPI Log Dll</h1>-
<body><h1>WMS ISAPI Log Dll/0.0.0.0</h1>où « 0.0.0.0 . » est n’importe quel numéro de version valide.
- Envoie une requête POST avec les informations de journal.
Le code suivant montre un exemple de script ASP qui reçoit les informations de journalisation et les écrit dans un fichier :
<html>
<body>
<h1>WMS ISAPI Log Dll/9.00.00.00.00</h1>
<%@ Language=VBScript %>
<%
Dim temp, i, post, file, fso
' Convert the binary data to a string.
For i = 1 To Request.TotalBytes
temp = Request.BinaryRead(1)
pose = pose & Chr(AscB(temp))
Next
Set fso = createobject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile("C:\log.txt", 8, TRUE)
file.writeline Now
file.writeline post
file.writeBlankLines 2
%>
</body>
</html>
Vous pouvez spécifier plusieurs serveurs pour recevoir des informations de journalisation ; appelez simplement AddLoggingUrl une fois avec chaque URL. Pour effacer la liste des serveurs qui reçoivent des journaux, appelez la méthode IWMReaderNetworkConfig ::ResetLoggingUrlList.
Rubriques connexes