2010-10-19 5 views
0

Я использую службы Windows Media 9 для предоставления услуг потоковой передачи и хочу, чтобы пользователи могли играть только в течение определенного интервала, чтобы предотвратить злоупотребления. Медиа-сервер читает и из файла asx, и игрок может начать и завершить с правильным смещением. Я могу получить начальное смещение на AuthorizePlayEvent используяКак получить значение продолжительности от служб Windows Media 9

IWMSContext.GetQwordValue(WMSDefines.WMS_PRESENT_START_TIME,WMSDefines.WMS_PRESENT_START_TIME_ID, out dec, 0); 

Но у меня проблема получения продолжительности или в конце смещения. Я знаю, что Windows Media Server записывает журнал, содержащий c-starttime и x-duration. Но x-duration здесь, похоже, не то, что я хочу. Мне нравится обнаруживать, что он передается из файла asx либо в AuthorizeOpenEvent, либо в AuthorizePlayEvent. Это возможно?

Спасибо!

+0

Я попытался извлечь WMS_PRESENT_DURATION_LO и WMS_PRESENT_TOTAL_PLAY_TIME_LO из IWMSContext на моем 32-битном компьютере Windows, но результат не отражает длительность или конец смещения, которые я хотел бы получить. – wen

+0

Я нашел сообщение, http: //www.winserverkb.com/Uwe/Forum.aspx/windows-media-server/1004/limit-the-duration-of-multiple-connected-clients, точно описано, что я пытался делать. Мне также не нравится идти на решение с сердцем. Любая лучшая идея? Благодаря! – wen

+0

ОК. Теперь я пытаюсь получить плейлист, как описано в http://msdn.microsoft.com/en-us/library/dd892922(v=VS.85).aspx, чтобы я мог получить ElapsedSimpleTime у игрока. Тем не менее, я получаю сообщение об ошибке: Тип «MSXML.IXMLDOMDocument» определен в сборке, на которую не ссылаются. Вы должны добавить ссылку на сборку «Interop.MSXML». – wen

ответ

0

Я закончил свой собственный синхронизированный словарь, чтобы следить за активными игроками на каждом пульсе и отключать проигрыватель, который превышает указанный интервал. Я потратил около 2 дней на поиск встроенных параметров на стороне сервера и был удивлен, обнаружив, что ничего не надежно.