source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/wmp.idl

Last change on this file was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 38.6 KB
Line 
1/*
2 * Copyright 2014 Jacek Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19import "oaidl.idl";
20import "ocidl.idl";
21
22#ifndef __WIDL__
23#define threading(model)
24#define progid(str)
25#define vi_progid(str)
26#endif
27
28[
29 helpstring("Windows Media Player"),
30 version(1.0),
31 uuid(6bf52a50-394a-11d3-b153-00c04f79Faa6)
32]
33library WMPLib {
34 importlib("stdole2.tlb");
35
36 typedef enum {
37 wmposUndefined,
38 wmposPlaylistChanging,
39 wmposPlaylistLocating,
40 wmposPlaylistConnecting,
41 wmposPlaylistLoading,
42 wmposPlaylistOpening,
43 wmposPlaylistOpenNoMedia,
44 wmposPlaylistChanged,
45 wmposMediaChanging,
46 wmposMediaLocating,
47 wmposMediaConnecting,
48 wmposMediaLoading,
49 wmposMediaOpening,
50 wmposMediaOpen,
51 wmposBeginCodecAcquisition,
52 wmposEndCodecAcquisition,
53 wmposBeginLicenseAcquisition,
54 wmposEndLicenseAcquisition,
55 wmposBeginIndividualization,
56 wmposEndIndividualization,
57 wmposMediaWaiting,
58 wmposOpeningUnknownURL
59 } WMPOpenState;
60
61 typedef enum {
62 wmppsUndefined,
63 wmppsStopped,
64 wmppsPaused,
65 wmppsPlaying,
66 wmppsScanForward,
67 wmppsScanReverse,
68 wmppsBuffering,
69 wmppsWaiting,
70 wmppsMediaEnded,
71 wmppsTransitioning,
72 wmppsReady,
73 wmppsReconnecting,
74 wmppsLast
75 } WMPPlayState;
76
77 typedef enum {
78 wmplcUnknown,
79 wmplcClear,
80 wmplcInfoChange,
81 wmplcMove,
82 wmplcDelete,
83 wmplcInsert,
84 wmplcAppend,
85 wmplcPrivate,
86 wmplcNameChange,
87 wmplcMorph,
88 wmplcSort,
89 wmplcLast
90 } WMPPlaylistChangeEventType;
91
92 typedef enum {
93 wmpdsUnknown,
94 wmpdsPartnershipExists,
95 wmpdsPartnershipDeclined,
96 wmpdsPartnershipAnother,
97 wmpdsManualDevice,
98 wmpdsNewDevice,
99 wmpdsLast
100 } WMPDeviceStatus;
101
102 typedef enum {
103 wmpssUnknown,
104 wmpssSynchronizing,
105 wmpssStopped,
106 wmpssEstimating,
107 wmpssLast
108 } WMPSyncState;
109
110 typedef enum {
111 wmprsUnknown,
112 wmprsRipping,
113 wmprsStopped
114 } WMPRipState;
115
116 typedef enum {
117 wmpbfAudioCD,
118 wmpbfDataCD
119 } WMPBurnFormat;
120
121 typedef enum {
122 wmpbsUnknown,
123 wmpbsBusy,
124 wmpbsReady,
125 wmpbsWaitingForDisc,
126 wmpbsRefreshStatusPending,
127 wmpbsPreparingToBurn,
128 wmpbsBurning,
129 wmpbsStopped,
130 wmpbsErasing,
131 wmpbsDownloading
132 } WMPBurnState;
133
134 typedef enum {
135 wmpltUnknown,
136 wmpltAll,
137 wmpltLocal,
138 wmpltRemote,
139 wmpltDisc,
140 wmpltPortableDevice
141 } WMPLibraryType;
142
143 typedef enum {
144 wmpfssUnknown,
145 wmpfssScanning,
146 wmpfssUpdating,
147 wmpfssStopped
148 } WMPFolderScanState;
149
150 typedef enum {
151 wmpsccetUnknown,
152 wmpsccetInsert,
153 wmpsccetChange,
154 wmpsccetDelete,
155 wmpsccetClear,
156 wmpsccetBeginUpdates,
157 wmpsccetEndUpdates
158 } WMPStringCollectionChangeEventType;
159
160 interface IWMPMedia;
161
162 [
163 odl,
164 uuid(d5f0f4f1-130c-11d3-b14e-00c04f79Faa6),
165 dual,
166 oleautomation
167 ]
168 interface IWMPPlaylist : IDispatch
169 {
170 [id(0x00c9), propget]
171 HRESULT count([out, retval] long *plCount);
172
173 [id(0x00ca), propget]
174 HRESULT name([out, retval] BSTR *pbstrName);
175 [id(0x00ca), propput]
176 HRESULT name([in] BSTR pbstrName);
177
178 [id(0x00d2), propget]
179 HRESULT attributeCount([out, retval] long *plCount);
180
181 [id(0x00d3), propget]
182 HRESULT attributeName(
183 [in] long lIndex,
184 [out, retval] BSTR *pbstrAttributeName);
185
186 [id(0x00d4), propget]
187 HRESULT Item(
188 [in] long lIndex,
189 [out, retval] IWMPMedia** ppIWMPMedia);
190
191 [id(0x00cb)]
192 HRESULT getItemInfo(
193 [in] BSTR bstrName,
194 [out, retval] BSTR *pbstrVal);
195
196 [id(0x00cc)]
197 HRESULT setItemInfo(
198 [in] BSTR bstrName,
199 [in] BSTR bstrValue);
200
201 [id(0x00d5), propget]
202 HRESULT isIdentical(
203 [in] IWMPPlaylist *pIWMPPlaylist,
204 [out, retval] VARIANT_BOOL *pvbool);
205
206 [id(0x00cd)]
207 HRESULT clear();
208
209 [id(0x00ce)]
210 HRESULT insertItem(
211 [in] long lIndex,
212 [in] IWMPMedia *pIWMPMedia);
213
214 [id(0x00cf)]
215 HRESULT appendItem([in] IWMPMedia *pIWMPMedia);
216
217 [id(0x00d0)]
218 HRESULT removeItem([in] IWMPMedia *pIWMPMedia);
219
220 [id(0x00d1)]
221 HRESULT moveItem(
222 long lIndexOld,
223 long lIndexNew);
224 }
225
226 [
227 odl,
228 uuid(94d55e95-3Fac-11d3-b155-00c04f79faa6),
229 dual,
230 oleautomation
231 ]
232 interface IWMPMedia : IDispatch
233 {
234 [id(0x02fb), propget]
235 HRESULT isIdentical(
236 [in] IWMPMedia *pIWMPMedia,
237 [out, retval] VARIANT_BOOL *pvbool);
238
239 [id(0x02ef), propget]
240 HRESULT sourceURL([out, retval] BSTR *pbstrSourceURL);
241
242 [id(0x02fc), propget]
243 HRESULT name([out, retval] BSTR *pbstrName);
244 [id(0x02fc), propput]
245 HRESULT name([in] BSTR pbstrName);
246
247 [id(0x02f0), propget]
248 HRESULT imageSourceWidth([out, retval] long *pWidth);
249
250 [id(0x02f1), propget]
251 HRESULT imageSourceHeight([out, retval] long *pHeight);
252
253 [id(0x02f2), propget]
254 HRESULT markerCount([out, retval] long *pMarkerCount);
255
256 [id(0x02f3)]
257 HRESULT getMarkerTime(
258 [in] long MarkerNum,
259 [out, retval] double *pMarkerTime);
260
261 [id(0x02f4)]
262 HRESULT getMarkerName(
263 [in] long MarkerNum,
264 [out, retval] BSTR *pbstrMarkerName);
265
266 [id(0x02f5), propget]
267 HRESULT duration([out, retval] double *pDuration);
268
269 [id(0x02f6), propget]
270 HRESULT durationString([out, retval] BSTR *pbstrDuration);
271
272 [id(0x02f7), propget]
273 HRESULT attributeCount([out, retval] long *plCount);
274
275 [id(0x02f8)]
276 HRESULT getAttributeName(
277 [in] long lIndex,
278 [out, retval] BSTR *pbstrItemName);
279
280 [id(0x02f9)]
281 HRESULT getItemInfo(
282 [in] BSTR bstrItemName,
283 [out, retval] BSTR *pbstrVal);
284
285 [id(0x02fa)]
286 HRESULT setItemInfo(
287 [in] BSTR bstrItemName,
288 [in] BSTR bstrVal);
289
290 [id(0x02fd)]
291 HRESULT getItemInfoByAtom(
292 [in] long lAtom,
293 [out, retval] BSTR *pbstrVal);
294
295 [id(0x02fe)]
296 HRESULT isMemberOf(
297 [in] IWMPPlaylist *pPlaylist,
298 [out, retval] VARIANT_BOOL *pvarfIsMemberOf);
299
300 [id(0x02ff)]
301 HRESULT isReadOnlyItem(
302 [in] BSTR bstrItemName,
303 [out, retval] VARIANT_BOOL *pvarfIsReadOnly);
304 }
305
306 [
307 odl,
308 uuid(74c09E02-f828-11d2-a74b-00a0c905f36e),
309 dual,
310 oleautomation
311 ]
312 interface IWMPControls : IDispatch {
313 [id(0x003e), propget]
314 HRESULT isAvailable(
315 [in] BSTR bstrItem,
316 [out, retval] VARIANT_BOOL *pIsAvailable);
317
318 [id(0x0033)]
319 HRESULT play();
320
321 [id(0x0034)]
322 HRESULT stop();
323
324 [id(0x0035)]
325 HRESULT pause();
326
327 [id(0x0036)]
328 HRESULT fastForward();
329
330 [id(0x0037)]
331 HRESULT fastReverse();
332
333 [id(0x0038), propget]
334 HRESULT currentPosition([out, retval] double *pdCurrentPosition);
335 [id(0x0038), propput]
336 HRESULT currentPosition([in] double pdCurrentPosition);
337
338 [id(0x0039), propget]
339 HRESULT currentPositionString([out, retval] BSTR *pbstrCurrentPosition);
340
341 [id(0x003a)]
342 HRESULT next();
343
344 [id(0x003b)]
345 HRESULT previous();
346
347 [id(0x003c)]
348 HRESULT currentItem([out, retval] IWMPMedia **ppIWMPMedia);
349
350 [id(0x003c), propput]
351 HRESULT currentItem([in] IWMPMedia *ppIWMPMedia);
352
353 [id(0x003d), propget]
354 HRESULT currentMarker([out, retval] long *plMarker);
355
356 [id(0x003d), propput]
357 HRESULT currentMarker([in] long plMarker);
358
359 [id(0x003f)]
360 HRESULT playItem([in] IWMPMedia *pIWMPMedia);
361 }
362
363 [
364 odl,
365 uuid(6f030d25-0890-480f-9775-1f7e40ab5b8e),
366 dual,
367 oleautomation
368 ]
369 interface IWMPControls2 : IWMPControls
370 {
371 [id(0x0040)]
372 HRESULT step([in] long lStep);
373 }
374
375 [
376 odl,
377 uuid(cbb92747-741f-44fe-ab5b-f1a48f3b2a59),
378 oleautomation
379 ]
380 interface IWMPRemoteMediaServices : IUnknown
381 {
382 HRESULT GetServiceType([out, retval] BSTR *type);
383
384 HRESULT GetApplicationName([out, retval] BSTR *name);
385
386 HRESULT GetScriptableObject([out, retval] BSTR *name, [out, retval] IDispatch **out);
387
388 HRESULT GetCustomUIMode([out, retval] BSTR *file);
389 }
390
391 [
392 odl,
393 uuid(9104d1ab-80c9-4fed-abf0-2e6417a6df14),
394 dual,
395 oleautomation
396 ]
397 interface IWMPSettings : IDispatch
398 {
399 [id(0x0071), propget]
400 HRESULT isAvailable(
401 [in] BSTR bstrItem,
402 [out, retval] VARIANT_BOOL *pIsAvailable);
403
404 [id(0x0065), propget]
405 HRESULT autoStart([out, retval] VARIANT_BOOL *pfAutoStart);
406 [id(0x0065), propput]
407 HRESULT autoStart([in] VARIANT_BOOL pfAutoStart);
408
409 [id(0x006c), propget]
410 HRESULT baseURL([out, retval] BSTR *pbstrBaseURL);
411 [id(0x006c), propput]
412 HRESULT baseURL([in] BSTR pbstrBaseURL);
413
414 [id(0x006d), propget]
415 HRESULT defaultFrame([out, retval] BSTR *pbstrDefaultFrame);
416 [id(0x006d), propput]
417 HRESULT defaultFrame([in] BSTR pbstrDefaultFrame);
418
419 [id(0x0067), propget]
420 HRESULT invokeURLs([out, retval] VARIANT_BOOL *pfInvokeURLs);
421 [id(0x0067), propput]
422 HRESULT invokeURLs([in] VARIANT_BOOL pfInvokeURLs);
423
424 [id(0x0068), propget]
425 HRESULT mute([out, retval] VARIANT_BOOL *pfMute);
426 [id(0x0068), propput]
427 HRESULT mute([in] VARIANT_BOOL pfMute);
428
429 [id(0x0069), propget]
430 HRESULT playCount([out, retval] long *plCount);
431 [id(0x0069), propput]
432 HRESULT playCount([in] long plCount);
433
434 [id(0x006a), propget]
435 HRESULT rate([out, retval] double *pdRate);
436 [id(0x006a), propput]
437 HRESULT rate([in] double pdRate);
438
439 [id(0x0066), propget]
440 HRESULT balance([out, retval] long *plBalance);
441 [id(0x0066), propput]
442 HRESULT balance([in] long plBalance);
443
444 [id(0x006b), propget]
445 HRESULT volume([out, retval] long *plVolume);
446 [id(0x006b), propput]
447 HRESULT volume([in] long plVolume);
448
449 [id(0x006e)]
450 HRESULT getMode(
451 [in] BSTR bstrMode,
452 [out, retval] VARIANT_BOOL *pvarfMode);
453
454 [id(0x006f)]
455 HRESULT setMode(
456 [in] BSTR bstrMode,
457 [in] VARIANT_BOOL varfMode);
458
459 [id(0x0070), propget]
460 HRESULT enableErrorDialogs([out, retval] VARIANT_BOOL *pfEnableErrorDialogs);
461
462 [id(0x0070), propput]
463 HRESULT enableErrorDialogs([in] VARIANT_BOOL pfEnableErrorDialogs);
464 }
465
466 [
467 odl,
468 uuid(4a976298-8c0d-11d3-b389-00c04f68574b),
469 dual,
470 oleautomation
471 ]
472 interface IWMPStringCollection : IDispatch
473 {
474 [id(0x0191), propget]
475 HRESULT count([out, retval] long *plCount);
476
477 [id(0x0192)]
478 HRESULT Item(
479 [in] long lIndex,
480 [out, retval] BSTR *pbstrString);
481 }
482
483 [
484 odl,
485 uuid(8363bc22-b4b4-4b19-989d-1cd765749dd1),
486 dual,
487 oleautomation
488 ]
489 interface IWMPMediaCollection : IDispatch
490 {
491 [id(0x01c4)]
492 HRESULT add(
493 [in] BSTR bstrURL,
494 [out, retval] IWMPMedia **ppItem);
495
496 [id(0x01c5)]
497 HRESULT getAll([out, retval] IWMPPlaylist **ppMediaItems);
498
499 [id(0x01c6)]
500 HRESULT getByName(
501 [in] BSTR bstrName,
502 [out, retval] IWMPPlaylist **ppMediaItems);
503
504 [id(0x01c7)]
505 HRESULT getByGenre(
506 [in] BSTR bstrGenre,
507 [out, retval] IWMPPlaylist **ppMediaItems);
508
509 [id(0x01c8)]
510 HRESULT getByAuthor(
511 [in] BSTR bstrAuthor,
512 [out, retval] IWMPPlaylist **ppMediaItems);
513
514 [id(0x01c9)]
515 HRESULT getByAlbum(
516 [in] BSTR bstrAlbum,
517 [out, retval] IWMPPlaylist **ppMediaItems);
518
519 [id(0x01ca)]
520 HRESULT getByAttribute(
521 [in] BSTR bstrAttribute,
522 [in] BSTR bstrValue,
523 [out, retval] IWMPPlaylist **ppMediaItems);
524
525 [id(0x01cb)]
526 HRESULT remove(
527 [in] IWMPMedia *pItem,
528 [in] VARIANT_BOOL varfDeleteFile);
529
530 [id(0x01cd)]
531 HRESULT getAttributeStringCollection(
532 [in] BSTR bstrAttribute,
533 [in] BSTR bstrMediaType,
534 [out, retval] IWMPStringCollection **ppStringCollection);
535
536 [id(0x01d6)]
537 HRESULT getMediaAtom(
538 [in] BSTR bstrItemName,
539 [out, retval] long *plAtom);
540
541 [id(0x01d7)]
542 HRESULT setDeleted(
543 [in] IWMPMedia *pItem,
544 [in] VARIANT_BOOL varfIsDeleted);
545
546 [id(0x01d8)]
547 HRESULT isDeleted(
548 [in] IWMPMedia *pItem,
549 [out, retval] VARIANT_BOOL *pvarfIsDeleted);
550 }
551
552 [
553 odl,
554 uuid(679409c0-99f7-11d3-9fb7-00105aa620bb),
555 dual,
556 oleautomation
557 ]
558 interface IWMPPlaylistArray : IDispatch
559 {
560 [id(0x01f5), propget]
561 HRESULT count([out, retval] long *plCount);
562
563 [id(0x01f6)]
564 HRESULT Item(
565 [in] long lIndex,
566 [out, retval] IWMPPlaylist **ppItem);
567 }
568
569 [
570 odl,
571 uuid(10a13217-23a7-439b-b1c0-d847c79b7774),
572 dual,
573 oleautomation
574 ]
575 interface IWMPPlaylistCollection : IDispatch
576 {
577 [id(0x0228)]
578 HRESULT newPlaylist(
579 [in] BSTR bstrName,
580 [out, retval] IWMPPlaylist **ppItem);
581
582 [id(0x0229)]
583 HRESULT getAll([out, retval] IWMPPlaylistArray **ppPlaylistArray);
584
585 [id(0x022a)]
586 HRESULT getByName(
587 [in] BSTR bstrName,
588 [out, retval] IWMPPlaylistArray **ppPlaylistArray);
589
590 [id(0x022c)]
591 HRESULT remove([in] IWMPPlaylist *pItem);
592
593 [id(0x0230)]
594 HRESULT setDeleted(
595 [in] IWMPPlaylist *pItem,
596 [in] VARIANT_BOOL varfIsDeleted);
597
598 [id(0x0231)]
599 HRESULT isDeleted(
600 [in] IWMPPlaylist *pItem,
601 [out, retval] VARIANT_BOOL *pvarfIsDeleted);
602
603 [id(0x0232)]
604 HRESULT importPlaylist(
605 [in] IWMPPlaylist *pItem,
606 [out, retval] IWMPPlaylist **ppImportedItem);
607 }
608
609 [
610 odl,
611 uuid(ec21b779-edef-462d-bba4-ad9dde2b29a7),
612 dual,
613 oleautomation
614 ]
615 interface IWMPNetwork : IDispatch
616 {
617 [id(0x0321), propget]
618 HRESULT bandWidth([out, retval] long *plBandwidth);
619
620 [id(0x0322), propget]
621 HRESULT recoveredPackets([out, retval] long *plRecoveredPackets);
622
623 [id(0x0323), propget]
624 HRESULT sourceProtocol([out, retval] BSTR *pbstrSourceProtocol);
625
626 [id(0x0324), propget]
627 HRESULT receivedPackets([out, retval] long *plReceivedPackets);
628
629 [id(0x0325), propget]
630 HRESULT lostPackets([out, retval] long *plLostPackets);
631
632 [id(0x0326), propget]
633 HRESULT receptionQuality([out, retval] long *plReceptionQuality);
634
635 [id(0x0327), propget]
636 HRESULT bufferingCount([out, retval] long *plBufferingCount);
637
638 [id(0x0328), propget]
639 HRESULT bufferingProgress([out, retval] long *plBufferingProgress);
640
641 [id(0x0329), propget]
642 HRESULT bufferingTime([out, retval] long *plBufferingTime);
643
644 [id(0x0329), propput]
645 HRESULT bufferingTime([in] long plBufferingTime);
646
647 [id(0x032a), propget]
648 HRESULT frameRate([out, retval] long *plFrameRate);
649
650 [id(0x032b), propget]
651 HRESULT maxBitRate([out, retval] long *plBitRate);
652
653 [id(0x032c), propget]
654 HRESULT bitRate([out, retval] long *plBitRate);
655
656 [id(0x032d)]
657 HRESULT getProxySettings(
658 [in] BSTR bstrProtocol,
659 [out, retval] long *plProxySetting);
660
661 [id(0x032e)]
662 HRESULT setProxySettings(
663 [in] BSTR bstrProtocol,
664 [in] long lProxySetting);
665
666 [id(0x032f)]
667 HRESULT getProxyName(
668 [in] BSTR bstrProtocol,
669 [out, retval] BSTR *pbstrProxyName);
670
671 [id(0x0330)]
672 HRESULT setProxyName(
673 [in] BSTR bstrProtocol,
674 [in] BSTR bstrProxyName);
675
676 [id(0x0331)]
677 HRESULT getProxyPort(
678 [in] BSTR bstrProtocol,
679 [out, retval] long *lProxyPort);
680
681 [id(0x0332)]
682 HRESULT setProxyPort(
683 [in] BSTR bstrProtocol,
684 [in] long lProxyPort);
685
686 [id(0x0333)]
687 HRESULT getProxyExceptionList(
688 [in] BSTR bstrProtocol,
689 [out, retval] BSTR *pbstrExceptionList);
690
691 [id(0x0334)]
692 HRESULT setProxyExceptionList(
693 [in] BSTR bstrProtocol,
694 [in] BSTR pbstrExceptionList);
695
696 [id(0x0335)]
697 HRESULT getProxyBypassForLocal(
698 [in] BSTR bstrProtocol,
699 [out, retval] VARIANT_BOOL *pfBypassForLocal);
700
701 [id(0x0336)]
702 HRESULT setProxyBypassForLocal(
703 [in] BSTR bstrProtocol,
704 [in] VARIANT_BOOL fBypassForLocal);
705
706 [id(0x0337), propget]
707 HRESULT maxBandwidth([out, retval] long *lMaxBandwidth);
708 [id(0x0337), propput]
709 HRESULT maxBandwidth([in] long lMaxBandwidth);
710
711 [id(0x0338), propget]
712 HRESULT downloadProgress([out, retval] long *plDownloadProgress);
713
714 [id(0x0339), propget]
715 HRESULT encodedFrameRate([out, retval] long *plFrameRate);
716
717 [id(0x033a), propget]
718 HRESULT framesSkipped([out, retval] long *plFrames);
719 }
720
721 [
722 odl,
723 uuid(cfab6e98-8730-11d3-b388-00c04f68574b),
724 dual,
725 oleautomation
726 ]
727 interface IWMPCdrom : IDispatch
728 {
729 [id(0x00fb), propget]
730 HRESULT driveSpecifier([out, retval] BSTR *pbstrDrive);
731
732 [id(0x00fc), propget]
733 HRESULT Playlist([out, retval] IWMPPlaylist **ppPlaylist);
734
735 [id(0x00fd)]
736 HRESULT eject();
737 }
738
739 [
740 odl,
741 uuid(ee4c8fe2-34b2-11d3-a3bf-006097c9b344),
742 dual,
743 oleautomation
744 ]
745 interface IWMPCdromCollection : IDispatch
746 {
747 [id(0x012d), propget]
748 HRESULT count([out, retval] long *plCount);
749
750 [id(0x012e)]
751 HRESULT Item(
752 [in] long lIndex,
753 [out, retval] IWMPCdrom **ppItem);
754
755 [id(0x012f)]
756 HRESULT getByDriveSpecifier(
757 [in] BSTR bstrDriveSpecifier,
758 [out, retval] IWMPCdrom **ppCdrom);
759 }
760
761 [
762 odl,
763 uuid(8da61686-4668-4a5c-ae5d-803193293dbe),
764 dual,
765 oleautomation
766 ]
767 interface IWMPDVD : IDispatch
768 {
769 [id(0x03e9), propget]
770 HRESULT isAvailable(
771 [in] BSTR bstrItem,
772 [out, retval] VARIANT_BOOL *pIsAvailable);
773
774 [id(0x03ea), propget]
775 HRESULT domain([out, retval] BSTR *strDomain);
776
777 [id(0x03eb)]
778 HRESULT topMenu();
779
780 [id(0x03ec)]
781 HRESULT titleMenu();
782
783 [id(0x03ed)]
784 HRESULT back();
785
786 [id(0x03ee)]
787 HRESULT resume();
788 }
789
790 [
791 odl,
792 uuid(4f2df574-c588-11d3-9ed0-00c04fb6e937),
793 dual,
794 oleautomation
795 ]
796 interface IWMPClosedCaption : IDispatch
797 {
798 [id(0x03b7), propget]
799 HRESULT SAMIStyle([out, retval] BSTR *pbstrSAMIStyle);
800 [id(0x03b7), propput]
801 HRESULT SAMIStyle([in] BSTR pbstrSAMIStyle);
802
803 [id(0x03b8), propget]
804 HRESULT SAMILang([out, retval] BSTR *pbstrSAMILang);
805
806 [id(0x03b8), propput]
807 HRESULT SAMILang([in] BSTR pbstrSAMILang);
808
809 [id(0x03b9), propget]
810 HRESULT SAMIFileName([out, retval] BSTR *pbstrSAMIFileName);
811
812 [id(0x03b9), propput]
813 HRESULT SAMIFileName([in] BSTR pbstrSAMIFileName);
814
815 [id(0x03ba), propget]
816 HRESULT captioningId([out, retval] BSTR *pbstrCaptioningID);
817
818 [id(0x03ba), propput]
819 HRESULT captioningId([in] BSTR pbstrCaptioningID);
820 }
821
822 [
823 odl,
824 uuid(3614c646-3b3b-4de7-a81e-930e3f2127b3),
825 dual,
826 oleautomation
827 ]
828 interface IWMPErrorItem : IDispatch
829 {
830 [id(0x0385), propget]
831 HRESULT errorCode([out, retval] long *phr);
832
833 [id(0x0386), propget]
834 HRESULT errorDescription([out, retval] BSTR *pbstrDescription);
835
836 [id(0x0387), propget]
837 HRESULT errorContext([out, retval] VARIANT *pvarContext);
838
839 [id(0x0388), propget]
840 HRESULT remedy([out, retval] long *plRemedy);
841
842 [id(0x0389), propget]
843 HRESULT customUrl([out, retval] BSTR *pbstrCustomUrl);
844 }
845
846 [
847 odl,
848 uuid(ab7c88bb-143e-4ea4-acc3-e4350b2106c3),
849 dual,
850 oleautomation
851 ]
852 interface IWMPMedia2 : IWMPMedia
853 {
854 [id(0x0300), propget]
855 HRESULT error([out, retval] IWMPErrorItem **out);
856 }
857
858 [
859 odl,
860 uuid(f118efc7-f03a-4fb4-99c9-1c02a5c1065b),
861 dual,
862 oleautomation
863 ]
864 interface IWMPMedia3 : IWMPMedia2
865 {
866 [id(0x0301)]
867 HRESULT getAttributeCountByType([in] BSTR type, [in] BSTR language, [out, retval] long *out);
868
869 [id(0x0302)]
870 HRESULT getItemInfoByType([in] BSTR type, [in] BSTR language, [in] long index, [out, retval] VARIANT *out);
871 }
872
873 [
874 odl,
875 uuid(a12dcf7d-14ab-4c1b-a8cd-63909f06025b),
876 dual,
877 oleautomation
878 ]
879 interface IWMPError : IDispatch
880 {
881 [id(0x0353)]
882 HRESULT clearErrorQueue();
883
884 [id(0x0354), propget]
885 HRESULT errorCount([out, retval] long *plNumErrors);
886
887 [id(0x0355), propget]
888 HRESULT Item(
889 [in] long dwIndex,
890 [out, retval] IWMPErrorItem **ppErrorItem);
891
892 [id(0x0356)]
893 HRESULT webHelp();
894 }
895
896 [
897 odl,
898 uuid(40897764-ceab-47be-ad4a-8e28537f9bbf),
899 dual,
900 oleautomation
901 ]
902 interface IWMPPlayerApplication : IDispatch
903 {
904 [id(0x044d)]
905 HRESULT switchToPlayerApplication();
906
907 [id(0x044e)]
908 HRESULT switchToControl();
909
910 [id(0x044f), propget]
911 HRESULT playerDocked([out, retval] VARIANT_BOOL* pbPlayerDocked);
912
913 [id(0x0450), propget]
914 HRESULT hasDisplay([out, retval] VARIANT_BOOL *pbHasDisplay);
915 }
916
917 [
918 odl,
919 uuid(d84cca99-cce2-11d2-9ecc-0000f8085981),
920 dual,
921 oleautomation
922 ]
923 interface IWMPCore : IDispatch
924 {
925 [id(0x0003)]
926 HRESULT close();
927
928 [id(0x0001), propget]
929 HRESULT URL([out, retval] BSTR *pbstrURL);
930 [id(0x0001), propput]
931 HRESULT URL([in] BSTR pbstrURL);
932
933 [id(0x0002), propget]
934 HRESULT openState([out, retval] WMPOpenState *pwmpos);
935
936 [id(0x000a), propget]
937 HRESULT playState([out, retval] WMPPlayState *pwmpps);
938
939 [id(0x0004), propget]
940 HRESULT controls([out, retval] IWMPControls **ppControl);
941
942 [id(0x0005), propget]
943 HRESULT settings([out, retval] IWMPSettings **ppSettings);
944
945 [id(0x0006), propget]
946 HRESULT currentMedia([out, retval] IWMPMedia **ppMedia);
947 [id(0x0006), propput]
948 HRESULT currentMedia([in] IWMPMedia *ppMedia);
949
950 [id(0x0008), propget]
951 HRESULT mediaCollection([out, retval] IWMPMediaCollection **ppMediaCollection);
952
953 [id(0x0009), propget]
954 HRESULT playlistCollection([out, retval] IWMPPlaylistCollection **ppPlaylistCollection);
955
956 [id(0x000b), propget]
957 HRESULT versionInfo([out, retval] BSTR *pbstrVersionInfo);
958
959 [id(0x000c)]
960 HRESULT launchURL([in] BSTR bstrURL);
961
962 [id(0x0007), propget]
963 HRESULT network([out, retval] IWMPNetwork **ppQNI);
964
965 [id(0x000d), propget]
966 HRESULT currentPlaylist([out, retval] IWMPPlaylist **ppPL);
967 [id(0x000d), propput]
968 HRESULT currentPlaylist([in] IWMPPlaylist *ppPL);
969
970 [id(0x000e), propget]
971 HRESULT cdromCollection([out, retval] IWMPCdromCollection **ppCdromCollection);
972
973 [id(0x000f), propget]
974 HRESULT closedCaption([out, retval] IWMPClosedCaption **ppClosedCaption);
975
976 [id(0x0010), propget]
977 HRESULT isOnline([out, retval] VARIANT_BOOL *pfOnline);
978
979 [id(0x0011), propget]
980 HRESULT Error([out, retval] IWMPError **ppError);
981
982 [id(0x0012), propget]
983 HRESULT status([out, retval] BSTR *pbstrStatus);
984 }
985
986 [
987 odl,
988 uuid(bc17e5B7-7561-4c18-bb90-17d485775659),
989 dual,
990 oleautomation
991 ]
992 interface IWMPCore2 : IWMPCore {
993 [id(0x0028), propget]
994 HRESULT dvd([out, retval] IWMPDVD **ppDVD);
995 }
996
997 [
998 odl,
999 uuid(7587c667-628f-499f-88e7-6A6f4e888464),
1000 dual,
1001 oleautomation
1002 ]
1003 interface IWMPCore3 : IWMPCore2
1004 {
1005 [id(0x0029)]
1006 HRESULT newPlaylist(
1007 [in] BSTR bstrName,
1008 [in] BSTR bstrURL,
1009 [out, retval] IWMPPlaylist **ppPlaylist);
1010
1011 [id(0x002a)]
1012 HRESULT newMedia(
1013 [in] BSTR bstrURL,
1014 [out, retval] IWMPMedia **ppMedia);
1015 }
1016
1017 [
1018 odl,
1019 uuid(6c497d62-8919-413c-82db-e935fb3ec584),
1020 dual,
1021 oleautomation
1022 ]
1023 interface IWMPPlayer4 : IWMPCore3
1024 {
1025 [id(0x0013), propget]
1026 HRESULT enabled([out, retval] VARIANT_BOOL *pbEnabled);
1027 [id(0x0013), propput]
1028 HRESULT enabled([in] VARIANT_BOOL pbEnabled);
1029
1030 [id(0x0015), propget]
1031 HRESULT fullScreen([out, retval] VARIANT_BOOL *pbFullScreen);
1032 [id(0x0015), propput]
1033 HRESULT fullScreen(VARIANT_BOOL pbFullScreen);
1034
1035 [id(0x0016), propget]
1036 HRESULT enableContextMenu([out, retval] VARIANT_BOOL *pbEnableContextMenu);
1037 [id(0x0016), propput]
1038 HRESULT enableContextMenu(VARIANT_BOOL pbEnableContextMenu);
1039
1040 [id(0x0017), propput]
1041 HRESULT uiMode([in] BSTR pbstrMode);
1042 [id(0x0017), propget]
1043 HRESULT uiMode([out, retval] BSTR *pbstrMode);
1044
1045 [id(0x0018), propget]
1046 HRESULT stretchToFit([out, retval] VARIANT_BOOL *pbEnabled);
1047 [id(0x0018), propput]
1048 HRESULT stretchToFit([in] VARIANT_BOOL pbEnabled);
1049
1050 [id(0x0019), propget]
1051 HRESULT windowlessVideo([out, retval] VARIANT_BOOL *pbEnabled);
1052 [id(0x0019), propput]
1053 HRESULT windowlessVideo([in] VARIANT_BOOL pbEnabled);
1054
1055 [id(0x001a), propget]
1056 HRESULT isRemote([out, retval] VARIANT_BOOL *pvarfIsRemote);
1057
1058 [id(0x001b), propget]
1059 HRESULT playerApplication([out, retval] IWMPPlayerApplication **ppIWMPPlayerApplication);
1060
1061 [id(0x001c)]
1062 HRESULT openPlayer([in] BSTR bstrURL);
1063 }
1064
1065 [
1066 odl,
1067 uuid(6BF52A4F-394A-11D3-B153-00C04F79FAA6),
1068 dual,
1069 oleautomation
1070 ]
1071 interface IWMPPlayer : IWMPCore {
1072 [id(0x00000013), propget]
1073 HRESULT enabled([out, retval] VARIANT_BOOL* pbEnabled);
1074 [id(0x00000013), propput]
1075 HRESULT enabled([in] VARIANT_BOOL pbEnabled);
1076 [id(0x00000015), propget]
1077 HRESULT fullScreen([out, retval] VARIANT_BOOL* pbFullScreen);
1078 [id(0x00000015), propput]
1079 HRESULT fullScreen(VARIANT_BOOL pbFullScreen);
1080 [id(0x00000016), propget]
1081 HRESULT enableContextMenu([out, retval] VARIANT_BOOL* pbEnableContextMenu);
1082 [id(0x00000016), propput]
1083 HRESULT enableContextMenu(VARIANT_BOOL pbEnableContextMenu);
1084 [id(0x00000017), propput]
1085 HRESULT uiMode([in] BSTR pbstrMode);
1086 [id(0x00000017), propget]
1087 HRESULT uiMode([out, retval] BSTR* pbstrMode);
1088 };
1089
1090 [
1091 odl,
1092 uuid(82a2986c-0293-4fd0-b279-b21b86c058be),
1093 oleautomation
1094 ]
1095 interface IWMPSyncDevice : IUnknown
1096 {
1097 [propget]
1098 HRESULT friendlyName([out, retval] BSTR *name);
1099
1100 [propput]
1101 HRESULT friendlyName([in] BSTR name);
1102
1103 [propget]
1104 HRESULT deviceName([out, retval] BSTR *name);
1105
1106 [propget]
1107 HRESULT deviceId([out, retval] BSTR *device);
1108
1109 [propget]
1110 HRESULT partnershipIndex([out, retval] long *index);
1111
1112 [propget]
1113 HRESULT connected([out, retval] VARIANT_BOOL *connected);
1114
1115 [propget]
1116 HRESULT status([out, retval] WMPDeviceStatus *status);
1117
1118 [propget]
1119 HRESULT syncState([out, retval] WMPSyncState *state);
1120
1121 [propget]
1122 HRESULT progress([out, retval] long *progress);
1123
1124 HRESULT getItemInfo(
1125 [in] BSTR name,
1126 [out, retval] BSTR *val);
1127
1128 HRESULT createPartnership([in] VARIANT_BOOL showui);
1129
1130 HRESULT deletePartnership();
1131
1132 HRESULT start();
1133
1134 HRESULT stop();
1135
1136 HRESULT showSettings();
1137
1138 HRESULT isIdentical(
1139 [in] IWMPSyncDevice *device,
1140 [out, retval] VARIANT_BOOL *ret);
1141 }
1142
1143 [
1144 odl,
1145 uuid(88afb4b2-140a-44d2-91e6-4543da467cd1),
1146 oleautomation
1147 ]
1148 interface IWMPSyncDevice2 : IWMPSyncDevice
1149 {
1150 HRESULT setItemInfo(
1151 [in] BSTR name,
1152 [in] BSTR val);
1153 }
1154
1155 [
1156 odl,
1157 uuid(56e2294f-69ed-4629-a869-aea72c0dcc2c),
1158 oleautomation
1159 ]
1160 interface IWMPCdromRip : IUnknown
1161 {
1162 [propget]
1163 HRESULT ripState([out, retval] WMPRipState *state);
1164
1165 [propget]
1166 HRESULT ripProgress([out, retval] long *progress);
1167
1168 HRESULT startRip();
1169
1170 HRESULT stopRip();
1171 }
1172
1173 [
1174 odl,
1175 uuid(bd94dbeb-417f-4928-aa06-087d56ed9b59),
1176 oleautomation
1177 ]
1178 interface IWMPCdromBurn : IUnknown
1179 {
1180 HRESULT isAvailable(
1181 [in] BSTR item,
1182 [out, retval] VARIANT_BOOL *available);
1183
1184 HRESULT getItemInfo(
1185 [in] BSTR item,
1186 [out, retval] BSTR *val);
1187
1188 [propget]
1189 HRESULT label([out, retval] BSTR *label);
1190
1191 [propput]
1192 HRESULT label([in] BSTR label);
1193
1194 [propget]
1195 HRESULT burnFormat([out, retval] WMPBurnFormat *format);
1196
1197 [propput]
1198 HRESULT burnFormat([in] WMPBurnFormat format);
1199
1200 [propget]
1201 HRESULT burnPlaylist([out, retval] IWMPPlaylist **playlist);
1202
1203 [propput]
1204 HRESULT burnPlaylist([in] IWMPPlaylist *playlist);
1205
1206 HRESULT refreshStatus();
1207
1208 [propget]
1209 HRESULT burnState([out, retval] WMPBurnState *state);
1210
1211 [propget]
1212 HRESULT burnProgress([out, retval] long *progress);
1213
1214 HRESULT startBurn();
1215
1216 HRESULT stopBurn();
1217
1218 HRESULT erase();
1219 }
1220
1221 [
1222 odl,
1223 uuid(3df47861-7df1-4c1f-a81b-4c26f0f7a7c6),
1224 oleautomation
1225 ]
1226 interface IWMPLibrary : IUnknown
1227 {
1228 [propget]
1229 HRESULT name([out, retval] BSTR *name);
1230
1231 [propget]
1232 HRESULT type([out, retval] WMPLibraryType *type);
1233
1234 [propget]
1235 HRESULT mediaCollection([out, retval] IWMPMediaCollection **collection);
1236
1237 HRESULT isIdentical(
1238 [in] IWMPLibrary *wmplibrary,
1239 [out, retval] VARIANT_BOOL *ret);
1240 }
1241
1242 [
1243 uuid(19a6627b-da9e-47c1-bb23-00b5e668236a),
1244 odl
1245 ]
1246 interface IWMPEvents : IUnknown
1247 {
1248 void OpenStateChange([in] long state);
1249
1250 void PlayStateChange([in] long state);
1251
1252 void AudioLanguageChange([in] long lang);
1253
1254 void StatusChange();
1255
1256 void ScriptCommand(
1257 [in] BSTR type,
1258 [in] BSTR param);
1259
1260 void NewStream();
1261
1262 void Disconnect([in] long result);
1263
1264 void Buffering([in] VARIANT_BOOL start);
1265
1266 void Error();
1267
1268 void Warning(
1269 [in] long warning,
1270 [in] long param,
1271 [in] BSTR description);
1272
1273 void EndOfStream([in] long result);
1274
1275 void PositionChange(
1276 [in] double old_position,
1277 [in] double new_position);
1278
1279 void MarkerHit([in] long marker);
1280
1281 void DurationUnitChange([in] long duration);
1282
1283 void CdromMediaChange([in] long num);
1284
1285 void PlaylistChange(
1286 [in] IDispatch *playlist,
1287 [in] WMPPlaylistChangeEventType change);
1288
1289 void CurrentPlaylistChange([in] WMPPlaylistChangeEventType change);
1290
1291 void CurrentPlaylistItemAvailable([in] BSTR item);
1292
1293 void MediaChange([in] IDispatch *item);
1294
1295 void CurrentMediaItemAvailable([in] BSTR name);
1296
1297 void CurrentItemChange([in] IDispatch *media);
1298
1299 void MediaCollectionChange();
1300
1301 void MediaCollectionAttributeStringAdded(
1302 [in] BSTR name,
1303 [in] BSTR val);
1304
1305 void MediaCollectionAttributeStringRemoved(
1306 [in] BSTR name,
1307 [in] BSTR val);
1308
1309 void MediaCollectionAttributeStringChanged(
1310 [in] BSTR name,
1311 [in] BSTR old_val,
1312 [in] BSTR new_val);
1313
1314 void PlaylistCollectionChange();
1315
1316 void PlaylistCollectionPlaylistAdded([in] BSTR name);
1317
1318 void PlaylistCollectionPlaylistRemoved([in] BSTR name);
1319
1320 void PlaylistCollectionPlaylistSetAsDeleted(
1321 [in] BSTR name,
1322 [in] VARIANT_BOOL deleted);
1323
1324 void ModeChange(
1325 [in] BSTR ModeName,
1326 [in] VARIANT_BOOL value);
1327
1328 void MediaError([in] IDispatch *media);
1329
1330 void OpenPlaylistSwitch([in] IDispatch *item);
1331
1332 void DomainChange([in] BSTR domain);
1333
1334 void SwitchedToPlayerApplication();
1335
1336 void SwitchedToControl();
1337
1338 void PlayerDockedStateChange();
1339
1340 void PlayerReconnect();
1341
1342 void Click(
1343 [in] short button,
1344 [in] short shift_state,
1345 [in] long x,
1346 [in] long y);
1347
1348 void DoubleClick(
1349 [in] short button,
1350 [in] short shift_state,
1351 [in] long fX,
1352 [in] long fY);
1353
1354 void KeyDown(
1355 [in] short keycode,
1356 [in] short shift_state);
1357
1358 void KeyPress([in] short ascii);
1359
1360 void KeyUp(
1361 [in] short keycode,
1362 [in] short shift_state);
1363
1364 void MouseDown(
1365 [in] short button,
1366 [in] short nShiftState,
1367 [in] long x,
1368 [in] long y);
1369
1370 void MouseMove(
1371 [in] short button,
1372 [in] short shift_state,
1373 [in] long x,
1374 [in] long y);
1375
1376 void MouseUp(
1377 [in] short button,
1378 [in] short shift_state,
1379 [in] long x,
1380 [in] long y);
1381 }
1382
1383 [
1384 uuid(1e7601fa-47ea-4107-9ea9-9004ed9684ff),
1385 odl
1386 ]
1387 interface IWMPEvents2 : IWMPEvents
1388 {
1389 void DeviceConnect([in] IWMPSyncDevice *device);
1390
1391 void DeviceDisconnect([in] IWMPSyncDevice *device);
1392
1393 void DeviceStatusChange(
1394 [in] IWMPSyncDevice *device,
1395 [in] WMPDeviceStatus status);
1396
1397 void DeviceSyncStateChange(
1398 [in] IWMPSyncDevice *device,
1399 [in] WMPSyncState state);
1400
1401 void DeviceSyncError(
1402 [in] IWMPSyncDevice *device,
1403 [in] IDispatch *media);
1404
1405 void CreatePartnershipComplete(
1406 [in] IWMPSyncDevice *device,
1407 [in] HRESULT result);
1408 }
1409
1410 [
1411 uuid(1f504270-a66b-4223-8e96-26a06c63d69f),
1412 odl
1413 ]
1414 interface IWMPEvents3 : IWMPEvents2
1415 {
1416 void CdromRipStateChange(
1417 [in] IWMPCdromRip *rip,
1418 [in] WMPRipState state);
1419
1420 void CdromRipMediaError(
1421 [in] IWMPCdromRip *rip,
1422 [in] IDispatch *media);
1423
1424 void CdromBurnStateChange(
1425 [in] IWMPCdromBurn *burn,
1426 [in] WMPBurnState state);
1427
1428 void CdromBurnMediaError(
1429 [in] IWMPCdromBurn *burn,
1430 [in] IDispatch *media);
1431
1432 void CdromBurnError(
1433 [in] IWMPCdromBurn *burn,
1434 [in] HRESULT error);
1435
1436 void LibraryConnect(
1437 [in] IWMPLibrary *wmplibrary);
1438
1439 void LibraryDisconnect(
1440 [in] IWMPLibrary *wmplibrary);
1441
1442 void FolderScanStateChange(
1443 [in] WMPFolderScanState state);
1444
1445 void StringCollectionChange(
1446 [in] IDispatch *collection,
1447 [in] WMPStringCollectionChangeEventType change,
1448 [in] long index);
1449
1450 void MediaCollectionMediaAdded(
1451 [in] IDispatch *media);
1452
1453 void MediaCollectionMediaRemoved(
1454 [in] IDispatch *media);
1455 }
1456
1457 [
1458 uuid(26dabcfa-306b-404d-9a6f-630a8405048d),
1459 odl
1460 ]
1461 interface IWMPEvents4 : IWMPEvents3
1462 {
1463 void DeviceEstimation(
1464 [in] IWMPSyncDevice *device,
1465 [in] HRESULT result,
1466 [in] LONGLONG used_space,
1467 [in] LONGLONG estimated_space);
1468 }
1469
1470 [
1471 hidden,
1472 uuid(6bf52a51-394a-11d3-b153-00c04f79faa6)
1473 ]
1474 interface _WMPOCXEvents : IDispatch
1475 {}
1476
1477 [
1478 helpstring("Windows Media Player"),
1479 threading(apartment),
1480 progid("WMPlayer.OCX.7"),
1481 vi_progid("WMPlayer.OCX"),
1482 uuid(6bf52a52-394a-11d3-b153-00c04f79faa6)
1483 ]
1484 coclass WindowsMediaPlayer
1485 {
1486 [default] interface IWMPPlayer4;
1487 /* interface IWMPPlayer3; */
1488 /* interface IWMPPlayer2; */
1489 interface IWMPPlayer;
1490 interface IWMPControls;
1491 interface IWMPSettings;
1492 interface IWMPPlaylist;
1493 interface IWMPMedia;
1494 interface IWMPMediaCollection;
1495 interface IWMPPlaylistCollection;
1496 interface IWMPCdromCollection;
1497 interface IWMPError;
1498 interface IWMPErrorItem;
1499 /* interface IWMPErrorItem2; */
1500 interface IWMPClosedCaption;
1501 interface IWMPDVD;
1502 interface IWMPControls2;
1503 interface IWMPMedia2;
1504 interface IWMPMedia3;
1505 /* interface IWMPMetadataPicture; */
1506 /* interface IWMPMetadataText; */
1507 /* interface IWMPSettings2; */
1508 /* interface IWMPControls3; */
1509 /* interface IWMPClosedCaption2; */
1510 /* interface IWMPMediaCollection2; */
1511 /* interface IWMPStringCollection2; */
1512 [default, source] dispinterface _WMPOCXEvents;
1513 }
1514}
Note: See TracBrowser for help on using the repository browser.