This file is indexed.

/usr/i686-w64-mingw32/include/agtsvr.h is in mingw-w64-i686-dev 2.0.3-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
/**
 * This file has no copyright assigned and is placed in the Public Domain.
 * This file is part of the w64 mingw-runtime package.
 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
 */
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error This stub requires an updated version of <rpcndr.h>
#endif

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif

#ifndef __AgentServer_h__
#define __AgentServer_h__

#ifdef __cplusplus
extern "C"{
#endif

#ifndef __IAgentUserInput_FWD_DEFINED__
#define __IAgentUserInput_FWD_DEFINED__
  typedef struct IAgentUserInput IAgentUserInput;
#endif

#ifndef __IAgentCommand_FWD_DEFINED__
#define __IAgentCommand_FWD_DEFINED__
  typedef struct IAgentCommand IAgentCommand;
#endif

#ifndef __IAgentCommandEx_FWD_DEFINED__
#define __IAgentCommandEx_FWD_DEFINED__
  typedef struct IAgentCommandEx IAgentCommandEx;
#endif

#ifndef __IAgentCommands_FWD_DEFINED__
#define __IAgentCommands_FWD_DEFINED__
  typedef struct IAgentCommands IAgentCommands;
#endif

#ifndef __IAgentCommandsEx_FWD_DEFINED__
#define __IAgentCommandsEx_FWD_DEFINED__
  typedef struct IAgentCommandsEx IAgentCommandsEx;
#endif

#ifndef __IAgentCommandWindow_FWD_DEFINED__
#define __IAgentCommandWindow_FWD_DEFINED__
  typedef struct IAgentCommandWindow IAgentCommandWindow;
#endif

#ifndef __IAgentSpeechInputProperties_FWD_DEFINED__
#define __IAgentSpeechInputProperties_FWD_DEFINED__
  typedef struct IAgentSpeechInputProperties IAgentSpeechInputProperties;
#endif

#ifndef __IAgentAudioOutputProperties_FWD_DEFINED__
#define __IAgentAudioOutputProperties_FWD_DEFINED__
  typedef struct IAgentAudioOutputProperties IAgentAudioOutputProperties;
#endif

#ifndef __IAgentAudioOutputPropertiesEx_FWD_DEFINED__
#define __IAgentAudioOutputPropertiesEx_FWD_DEFINED__
  typedef struct IAgentAudioOutputPropertiesEx IAgentAudioOutputPropertiesEx;
#endif

#ifndef __IAgentPropertySheet_FWD_DEFINED__
#define __IAgentPropertySheet_FWD_DEFINED__
  typedef struct IAgentPropertySheet IAgentPropertySheet;
#endif

#ifndef __IAgentBalloon_FWD_DEFINED__
#define __IAgentBalloon_FWD_DEFINED__
  typedef struct IAgentBalloon IAgentBalloon;
#endif

#ifndef __IAgentBalloonEx_FWD_DEFINED__
#define __IAgentBalloonEx_FWD_DEFINED__
  typedef struct IAgentBalloonEx IAgentBalloonEx;
#endif

#ifndef __IAgentCharacter_FWD_DEFINED__
#define __IAgentCharacter_FWD_DEFINED__
  typedef struct IAgentCharacter IAgentCharacter;
#endif

#ifndef __IAgentCharacterEx_FWD_DEFINED__
#define __IAgentCharacterEx_FWD_DEFINED__
  typedef struct IAgentCharacterEx IAgentCharacterEx;
#endif

#ifndef __IAgent_FWD_DEFINED__
#define __IAgent_FWD_DEFINED__
  typedef struct IAgent IAgent;
#endif

#ifndef __IAgentEx_FWD_DEFINED__
#define __IAgentEx_FWD_DEFINED__
  typedef struct IAgentEx IAgentEx;
#endif

#ifndef __IAgentNotifySink_FWD_DEFINED__
#define __IAgentNotifySink_FWD_DEFINED__
  typedef struct IAgentNotifySink IAgentNotifySink;
#endif

#ifndef __IAgentNotifySinkEx_FWD_DEFINED__
#define __IAgentNotifySinkEx_FWD_DEFINED__
  typedef struct IAgentNotifySinkEx IAgentNotifySinkEx;
#endif

#ifndef __IAgentPrivateNotifySink_FWD_DEFINED__
#define __IAgentPrivateNotifySink_FWD_DEFINED__
  typedef struct IAgentPrivateNotifySink IAgentPrivateNotifySink;
#endif

#ifndef __IAgentCustomMarshalMaker_FWD_DEFINED__
#define __IAgentCustomMarshalMaker_FWD_DEFINED__
  typedef struct IAgentCustomMarshalMaker IAgentCustomMarshalMaker;
#endif

#ifndef __IAgentClientStatus_FWD_DEFINED__
#define __IAgentClientStatus_FWD_DEFINED__
  typedef struct IAgentClientStatus IAgentClientStatus;
#endif

#ifndef __AgentServer_FWD_DEFINED__
#define __AgentServer_FWD_DEFINED__
#ifdef __cplusplus
  typedef class AgentServer AgentServer;
#else
  typedef struct AgentServer AgentServer;
#endif
#endif

#ifndef __IAgentUserInput_FWD_DEFINED__
#define __IAgentUserInput_FWD_DEFINED__
  typedef struct IAgentUserInput IAgentUserInput;
#endif

#ifndef __IAgentCommand_FWD_DEFINED__
#define __IAgentCommand_FWD_DEFINED__
  typedef struct IAgentCommand IAgentCommand;
#endif

#ifndef __IAgentCommandEx_FWD_DEFINED__
#define __IAgentCommandEx_FWD_DEFINED__
  typedef struct IAgentCommandEx IAgentCommandEx;
#endif

#ifndef __IAgentCommands_FWD_DEFINED__
#define __IAgentCommands_FWD_DEFINED__
  typedef struct IAgentCommands IAgentCommands;
#endif

#ifndef __IAgentCommandsEx_FWD_DEFINED__
#define __IAgentCommandsEx_FWD_DEFINED__
  typedef struct IAgentCommandsEx IAgentCommandsEx;
#endif

#ifndef __IAgentSpeechInputProperties_FWD_DEFINED__
#define __IAgentSpeechInputProperties_FWD_DEFINED__
  typedef struct IAgentSpeechInputProperties IAgentSpeechInputProperties;
#endif

#ifndef __IAgentAudioOutputProperties_FWD_DEFINED__
#define __IAgentAudioOutputProperties_FWD_DEFINED__
  typedef struct IAgentAudioOutputProperties IAgentAudioOutputProperties;
#endif

#ifndef __IAgentAudioOutputPropertiesEx_FWD_DEFINED__
#define __IAgentAudioOutputPropertiesEx_FWD_DEFINED__
  typedef struct IAgentAudioOutputPropertiesEx IAgentAudioOutputPropertiesEx;
#endif

#ifndef __IAgentPropertySheet_FWD_DEFINED__
#define __IAgentPropertySheet_FWD_DEFINED__
  typedef struct IAgentPropertySheet IAgentPropertySheet;
#endif

#ifndef __IAgentBalloon_FWD_DEFINED__
#define __IAgentBalloon_FWD_DEFINED__
  typedef struct IAgentBalloon IAgentBalloon;
#endif

#ifndef __IAgentBalloonEx_FWD_DEFINED__
#define __IAgentBalloonEx_FWD_DEFINED__
  typedef struct IAgentBalloonEx IAgentBalloonEx;
#endif

#ifndef __IAgentCharacter_FWD_DEFINED__
#define __IAgentCharacter_FWD_DEFINED__
  typedef struct IAgentCharacter IAgentCharacter;
#endif

#ifndef __IAgentCharacterEx_FWD_DEFINED__
#define __IAgentCharacterEx_FWD_DEFINED__
  typedef struct IAgentCharacterEx IAgentCharacterEx;
#endif

#ifndef __IAgent_FWD_DEFINED__
#define __IAgent_FWD_DEFINED__
  typedef struct IAgent IAgent;
#endif

#ifndef __IAgentEx_FWD_DEFINED__
#define __IAgentEx_FWD_DEFINED__
  typedef struct IAgentEx IAgentEx;
#endif

#ifndef __IAgentNotifySink_FWD_DEFINED__
#define __IAgentNotifySink_FWD_DEFINED__
  typedef struct IAgentNotifySink IAgentNotifySink;
#endif

#ifndef __IAgentNotifySinkEx_FWD_DEFINED__
#define __IAgentNotifySinkEx_FWD_DEFINED__
  typedef struct IAgentNotifySinkEx IAgentNotifySinkEx;
#endif

#ifndef __IAgentCommandWindow_FWD_DEFINED__
#define __IAgentCommandWindow_FWD_DEFINED__
  typedef struct IAgentCommandWindow IAgentCommandWindow;
#endif

#include "oaidl.h"
#include "ocidl.h"

#ifndef __MIDL_user_allocate_free_DEFINED__
#define __MIDL_user_allocate_free_DEFINED__
  void *__RPC_API MIDL_user_allocate(size_t);
  void __RPC_API MIDL_user_free(void *);
#endif

#define NeverMoved (0)
#define UserMoved (1)
#define ProgramMoved (2)
#define OtherProgramMoved (3)
#define SystemMoved (4)

#define NeverShown (0)
#define UserHid (1)
#define UserShowed (2)
#define ProgramHid (3)
#define ProgramShowed (4)
#define OtherProgramHid (5)
#define OtherProgramShowed (6)
#define UserHidViaCharacterMenu (7)

#define UserHidViaTaskbarIcon (UserHid)

#define CSHELPCAUSE_COMMAND (1)
#define CSHELPCAUSE_OTHERPROGRAM (2)
#define CSHELPCAUSE_OPENCOMMANDSWINDOW (3)
#define CSHELPCAUSE_CLOSECOMMANDSWINDOW (4)
#define CSHELPCAUSE_SHOWCHARACTER (5)
#define CSHELPCAUSE_HIDECHARACTER (6)
#define CSHELPCAUSE_CHARACTER (7)

#define ACTIVATE_NOTTOPMOST (0)
#define ACTIVATE_TOPMOST (1)
#define ACTIVATE_NOTACTIVE (0)
#define ACTIVATE_ACTIVE (1)
#define ACTIVATE_INPUTACTIVE (2)

#define PREPARE_ANIMATION (0)
#define PREPARE_STATE (1)
#define PREPARE_WAVE (2)

#define STOP_TYPE_PLAY (0x1)
#define STOP_TYPE_MOVE (0x2)
#define STOP_TYPE_SPEAK (0x4)
#define STOP_TYPE_PREPARE (0x8)
#define STOP_TYPE_NONQUEUEDPREPARE (0x10)
#define STOP_TYPE_VISIBLE (0x20)

#define STOP_TYPE_ALL (0xffffffff)

#define BALLOON_STYLE_BALLOON_ON (0x1)
#define BALLOON_STYLE_SIZETOTEXT (0x2)
#define BALLOON_STYLE_AUTOHIDE (0x4)
#define BALLOON_STYLE_AUTOPACE (0x8)

#define AUDIO_STATUS_AVAILABLE (0)
#define AUDIO_STATUS_NOAUDIO (1)
#define AUDIO_STATUS_CANTOPENAUDIO (2)
#define AUDIO_STATUS_USERSPEAKING (3)
#define AUDIO_STATUS_CHARACTERSPEAKING (4)
#define AUDIO_STATUS_SROVERRIDEABLE (5)
#define AUDIO_STATUS_ERROR (6)

#define LISTEN_STATUS_CANLISTEN (0)
#define LISTEN_STATUS_NOAUDIO (1)
#define LISTEN_STATUS_NOTACTIVE (2)
#define LISTEN_STATUS_CANTOPENAUDIO (3)
#define LISTEN_STATUS_COULDNTINITIALIZESPEECH (4)
#define LISTEN_STATUS_SPEECHDISABLED (5)
#define LISTEN_STATUS_ERROR (6)

#define MK_ICON (0x1000)

#define LSCOMPLETE_CAUSE_PROGRAMDISABLED (1)
#define LSCOMPLETE_CAUSE_PROGRAMTIMEDOUT (2)
#define LSCOMPLETE_CAUSE_USERTIMEDOUT (3)
#define LSCOMPLETE_CAUSE_USERRELEASEDKEY (4)
#define LSCOMPLETE_CAUSE_USERUTTERANCEENDED (5)
#define LSCOMPLETE_CAUSE_CLIENTDEACTIVATED (6)
#define LSCOMPLETE_CAUSE_DEFAULTCHARCHANGE (7)
#define LSCOMPLETE_CAUSE_USERDISABLED (8)

  extern RPC_IF_HANDLE __MIDL_itf_AgentServer_0000_v0_0_c_ifspec;
  extern RPC_IF_HANDLE __MIDL_itf_AgentServer_0000_v0_0_s_ifspec;

#ifndef __IAgentUserInput_INTERFACE_DEFINED__
#define __IAgentUserInput_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentUserInput;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentUserInput : public IDispatch {
  public:
    virtual HRESULT WINAPI GetCount(long *pdwCount) = 0;
    virtual HRESULT WINAPI GetItemID(long dwItemIndex,long *pdwCommandID) = 0;
    virtual HRESULT WINAPI GetItemConfidence(long dwItemIndex,long *plConfidence) = 0;
    virtual HRESULT WINAPI GetItemText(long dwItemIndex,BSTR *pbszText) = 0;
    virtual HRESULT WINAPI GetAllItemData(VARIANT *pdwItemIndices,VARIANT *plConfidences,VARIANT *pbszText) = 0;
  };
#else
  typedef struct IAgentUserInputVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentUserInput *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentUserInput *This);
      ULONG (WINAPI *Release)(IAgentUserInput *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentUserInput *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentUserInput *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentUserInput *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentUserInput *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetCount)(IAgentUserInput *This,long *pdwCount);
      HRESULT (WINAPI *GetItemID)(IAgentUserInput *This,long dwItemIndex,long *pdwCommandID);
      HRESULT (WINAPI *GetItemConfidence)(IAgentUserInput *This,long dwItemIndex,long *plConfidence);
      HRESULT (WINAPI *GetItemText)(IAgentUserInput *This,long dwItemIndex,BSTR *pbszText);
      HRESULT (WINAPI *GetAllItemData)(IAgentUserInput *This,VARIANT *pdwItemIndices,VARIANT *plConfidences,VARIANT *pbszText);
    END_INTERFACE
  } IAgentUserInputVtbl;
  struct IAgentUserInput {
    CONST_VTBL struct IAgentUserInputVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentUserInput_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentUserInput_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentUserInput_Release(This) (This)->lpVtbl->Release(This)
#define IAgentUserInput_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentUserInput_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentUserInput_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentUserInput_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentUserInput_GetCount(This,pdwCount) (This)->lpVtbl->GetCount(This,pdwCount)
#define IAgentUserInput_GetItemID(This,dwItemIndex,pdwCommandID) (This)->lpVtbl->GetItemID(This,dwItemIndex,pdwCommandID)
#define IAgentUserInput_GetItemConfidence(This,dwItemIndex,plConfidence) (This)->lpVtbl->GetItemConfidence(This,dwItemIndex,plConfidence)
#define IAgentUserInput_GetItemText(This,dwItemIndex,pbszText) (This)->lpVtbl->GetItemText(This,dwItemIndex,pbszText)
#define IAgentUserInput_GetAllItemData(This,pdwItemIndices,plConfidences,pbszText) (This)->lpVtbl->GetAllItemData(This,pdwItemIndices,plConfidences,pbszText)
#endif
#endif
  HRESULT WINAPI IAgentUserInput_GetCount_Proxy(IAgentUserInput *This,long *pdwCount);
  void __RPC_STUB IAgentUserInput_GetCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentUserInput_GetItemID_Proxy(IAgentUserInput *This,long dwItemIndex,long *pdwCommandID);
  void __RPC_STUB IAgentUserInput_GetItemID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentUserInput_GetItemConfidence_Proxy(IAgentUserInput *This,long dwItemIndex,long *plConfidence);
  void __RPC_STUB IAgentUserInput_GetItemConfidence_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentUserInput_GetItemText_Proxy(IAgentUserInput *This,long dwItemIndex,BSTR *pbszText);
  void __RPC_STUB IAgentUserInput_GetItemText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentUserInput_GetAllItemData_Proxy(IAgentUserInput *This,VARIANT *pdwItemIndices,VARIANT *plConfidences,VARIANT *pbszText);
  void __RPC_STUB IAgentUserInput_GetAllItemData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCommand_INTERFACE_DEFINED__
#define __IAgentCommand_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCommand;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCommand : public IDispatch {
  public:
    virtual HRESULT WINAPI SetCaption(BSTR bszCaption) = 0;
    virtual HRESULT WINAPI GetCaption(BSTR *pbszCaption) = 0;
    virtual HRESULT WINAPI SetVoice(BSTR bszVoice) = 0;
    virtual HRESULT WINAPI GetVoice(BSTR *pbszVoice) = 0;
    virtual HRESULT WINAPI SetEnabled(long bEnabled) = 0;
    virtual HRESULT WINAPI GetEnabled(long *pbEnabled) = 0;
    virtual HRESULT WINAPI SetVisible(long bVisible) = 0;
    virtual HRESULT WINAPI GetVisible(long *pbVisible) = 0;
    virtual HRESULT WINAPI SetConfidenceThreshold(long lThreshold) = 0;
    virtual HRESULT WINAPI GetConfidenceThreshold(long *plThreshold) = 0;
    virtual HRESULT WINAPI SetConfidenceText(BSTR bszTipText) = 0;
    virtual HRESULT WINAPI GetConfidenceText(BSTR *pbszTipText) = 0;
    virtual HRESULT WINAPI GetID(long *pdwID) = 0;
  };
#else
  typedef struct IAgentCommandVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCommand *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCommand *This);
      ULONG (WINAPI *Release)(IAgentCommand *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCommand *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCommand *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCommand *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCommand *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *SetCaption)(IAgentCommand *This,BSTR bszCaption);
      HRESULT (WINAPI *GetCaption)(IAgentCommand *This,BSTR *pbszCaption);
      HRESULT (WINAPI *SetVoice)(IAgentCommand *This,BSTR bszVoice);
      HRESULT (WINAPI *GetVoice)(IAgentCommand *This,BSTR *pbszVoice);
      HRESULT (WINAPI *SetEnabled)(IAgentCommand *This,long bEnabled);
      HRESULT (WINAPI *GetEnabled)(IAgentCommand *This,long *pbEnabled);
      HRESULT (WINAPI *SetVisible)(IAgentCommand *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentCommand *This,long *pbVisible);
      HRESULT (WINAPI *SetConfidenceThreshold)(IAgentCommand *This,long lThreshold);
      HRESULT (WINAPI *GetConfidenceThreshold)(IAgentCommand *This,long *plThreshold);
      HRESULT (WINAPI *SetConfidenceText)(IAgentCommand *This,BSTR bszTipText);
      HRESULT (WINAPI *GetConfidenceText)(IAgentCommand *This,BSTR *pbszTipText);
      HRESULT (WINAPI *GetID)(IAgentCommand *This,long *pdwID);
    END_INTERFACE
  } IAgentCommandVtbl;
  struct IAgentCommand {
    CONST_VTBL struct IAgentCommandVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCommand_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCommand_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCommand_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCommand_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCommand_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCommand_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCommand_SetCaption(This,bszCaption) (This)->lpVtbl->SetCaption(This,bszCaption)
#define IAgentCommand_GetCaption(This,pbszCaption) (This)->lpVtbl->GetCaption(This,pbszCaption)
#define IAgentCommand_SetVoice(This,bszVoice) (This)->lpVtbl->SetVoice(This,bszVoice)
#define IAgentCommand_GetVoice(This,pbszVoice) (This)->lpVtbl->GetVoice(This,pbszVoice)
#define IAgentCommand_SetEnabled(This,bEnabled) (This)->lpVtbl->SetEnabled(This,bEnabled)
#define IAgentCommand_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentCommand_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentCommand_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCommand_SetConfidenceThreshold(This,lThreshold) (This)->lpVtbl->SetConfidenceThreshold(This,lThreshold)
#define IAgentCommand_GetConfidenceThreshold(This,plThreshold) (This)->lpVtbl->GetConfidenceThreshold(This,plThreshold)
#define IAgentCommand_SetConfidenceText(This,bszTipText) (This)->lpVtbl->SetConfidenceText(This,bszTipText)
#define IAgentCommand_GetConfidenceText(This,pbszTipText) (This)->lpVtbl->GetConfidenceText(This,pbszTipText)
#define IAgentCommand_GetID(This,pdwID) (This)->lpVtbl->GetID(This,pdwID)
#endif
#endif

  HRESULT WINAPI IAgentCommand_SetCaption_Proxy(IAgentCommand *This,BSTR bszCaption);
  void __RPC_STUB IAgentCommand_SetCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetCaption_Proxy(IAgentCommand *This,BSTR *pbszCaption);
  void __RPC_STUB IAgentCommand_GetCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_SetVoice_Proxy(IAgentCommand *This,BSTR bszVoice);
  void __RPC_STUB IAgentCommand_SetVoice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetVoice_Proxy(IAgentCommand *This,BSTR *pbszVoice);
  void __RPC_STUB IAgentCommand_GetVoice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_SetEnabled_Proxy(IAgentCommand *This,long bEnabled);
  void __RPC_STUB IAgentCommand_SetEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetEnabled_Proxy(IAgentCommand *This,long *pbEnabled);
  void __RPC_STUB IAgentCommand_GetEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_SetVisible_Proxy(IAgentCommand *This,long bVisible);
  void __RPC_STUB IAgentCommand_SetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetVisible_Proxy(IAgentCommand *This,long *pbVisible);
  void __RPC_STUB IAgentCommand_GetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_SetConfidenceThreshold_Proxy(IAgentCommand *This,long lThreshold);
  void __RPC_STUB IAgentCommand_SetConfidenceThreshold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetConfidenceThreshold_Proxy(IAgentCommand *This,long *plThreshold);
  void __RPC_STUB IAgentCommand_GetConfidenceThreshold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_SetConfidenceText_Proxy(IAgentCommand *This,BSTR bszTipText);
  void __RPC_STUB IAgentCommand_SetConfidenceText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetConfidenceText_Proxy(IAgentCommand *This,BSTR *pbszTipText);
  void __RPC_STUB IAgentCommand_GetConfidenceText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommand_GetID_Proxy(IAgentCommand *This,long *pdwID);
  void __RPC_STUB IAgentCommand_GetID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCommandEx_INTERFACE_DEFINED__
#define __IAgentCommandEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCommandEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCommandEx : public IAgentCommand {
  public:
    virtual HRESULT WINAPI SetHelpContextID(long ulID) = 0;
    virtual HRESULT WINAPI GetHelpContextID(long *pulID) = 0;
    virtual HRESULT WINAPI SetVoiceCaption(BSTR bszVoiceCaption) = 0;
    virtual HRESULT WINAPI GetVoiceCaption(BSTR *pbszVoiceCaption) = 0;
  };
#else
  typedef struct IAgentCommandExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCommandEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCommandEx *This);
      ULONG (WINAPI *Release)(IAgentCommandEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCommandEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCommandEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCommandEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCommandEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *SetCaption)(IAgentCommandEx *This,BSTR bszCaption);
      HRESULT (WINAPI *GetCaption)(IAgentCommandEx *This,BSTR *pbszCaption);
      HRESULT (WINAPI *SetVoice)(IAgentCommandEx *This,BSTR bszVoice);
      HRESULT (WINAPI *GetVoice)(IAgentCommandEx *This,BSTR *pbszVoice);
      HRESULT (WINAPI *SetEnabled)(IAgentCommandEx *This,long bEnabled);
      HRESULT (WINAPI *GetEnabled)(IAgentCommandEx *This,long *pbEnabled);
      HRESULT (WINAPI *SetVisible)(IAgentCommandEx *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentCommandEx *This,long *pbVisible);
      HRESULT (WINAPI *SetConfidenceThreshold)(IAgentCommandEx *This,long lThreshold);
      HRESULT (WINAPI *GetConfidenceThreshold)(IAgentCommandEx *This,long *plThreshold);
      HRESULT (WINAPI *SetConfidenceText)(IAgentCommandEx *This,BSTR bszTipText);
      HRESULT (WINAPI *GetConfidenceText)(IAgentCommandEx *This,BSTR *pbszTipText);
      HRESULT (WINAPI *GetID)(IAgentCommandEx *This,long *pdwID);
      HRESULT (WINAPI *SetHelpContextID)(IAgentCommandEx *This,long ulID);
      HRESULT (WINAPI *GetHelpContextID)(IAgentCommandEx *This,long *pulID);
      HRESULT (WINAPI *SetVoiceCaption)(IAgentCommandEx *This,BSTR bszVoiceCaption);
      HRESULT (WINAPI *GetVoiceCaption)(IAgentCommandEx *This,BSTR *pbszVoiceCaption);
    END_INTERFACE
  } IAgentCommandExVtbl;
  struct IAgentCommandEx {
    CONST_VTBL struct IAgentCommandExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCommandEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCommandEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCommandEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCommandEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCommandEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCommandEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCommandEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCommandEx_SetCaption(This,bszCaption) (This)->lpVtbl->SetCaption(This,bszCaption)
#define IAgentCommandEx_GetCaption(This,pbszCaption) (This)->lpVtbl->GetCaption(This,pbszCaption)
#define IAgentCommandEx_SetVoice(This,bszVoice) (This)->lpVtbl->SetVoice(This,bszVoice)
#define IAgentCommandEx_GetVoice(This,pbszVoice) (This)->lpVtbl->GetVoice(This,pbszVoice)
#define IAgentCommandEx_SetEnabled(This,bEnabled) (This)->lpVtbl->SetEnabled(This,bEnabled)
#define IAgentCommandEx_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentCommandEx_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentCommandEx_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCommandEx_SetConfidenceThreshold(This,lThreshold) (This)->lpVtbl->SetConfidenceThreshold(This,lThreshold)
#define IAgentCommandEx_GetConfidenceThreshold(This,plThreshold) (This)->lpVtbl->GetConfidenceThreshold(This,plThreshold)
#define IAgentCommandEx_SetConfidenceText(This,bszTipText) (This)->lpVtbl->SetConfidenceText(This,bszTipText)
#define IAgentCommandEx_GetConfidenceText(This,pbszTipText) (This)->lpVtbl->GetConfidenceText(This,pbszTipText)
#define IAgentCommandEx_GetID(This,pdwID) (This)->lpVtbl->GetID(This,pdwID)
#define IAgentCommandEx_SetHelpContextID(This,ulID) (This)->lpVtbl->SetHelpContextID(This,ulID)
#define IAgentCommandEx_GetHelpContextID(This,pulID) (This)->lpVtbl->GetHelpContextID(This,pulID)
#define IAgentCommandEx_SetVoiceCaption(This,bszVoiceCaption) (This)->lpVtbl->SetVoiceCaption(This,bszVoiceCaption)
#define IAgentCommandEx_GetVoiceCaption(This,pbszVoiceCaption) (This)->lpVtbl->GetVoiceCaption(This,pbszVoiceCaption)
#endif
#endif
  HRESULT WINAPI IAgentCommandEx_SetHelpContextID_Proxy(IAgentCommandEx *This,long ulID);
  void __RPC_STUB IAgentCommandEx_SetHelpContextID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandEx_GetHelpContextID_Proxy(IAgentCommandEx *This,long *pulID);
  void __RPC_STUB IAgentCommandEx_GetHelpContextID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandEx_SetVoiceCaption_Proxy(IAgentCommandEx *This,BSTR bszVoiceCaption);
  void __RPC_STUB IAgentCommandEx_SetVoiceCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandEx_GetVoiceCaption_Proxy(IAgentCommandEx *This,BSTR *pbszVoiceCaption);
  void __RPC_STUB IAgentCommandEx_GetVoiceCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCommands_INTERFACE_DEFINED__
#define __IAgentCommands_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCommands;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCommands : public IDispatch {
  public:
    virtual HRESULT WINAPI GetCommand(long dwCommandID,IUnknown **ppunkCommand) = 0;
    virtual HRESULT WINAPI GetCount(long *pdwCount) = 0;
    virtual HRESULT WINAPI SetCaption(BSTR bszCaption) = 0;
    virtual HRESULT WINAPI GetCaption(BSTR *pbszCaption) = 0;
    virtual HRESULT WINAPI SetVoice(BSTR bszVoice) = 0;
    virtual HRESULT WINAPI GetVoice(BSTR *pbszVoice) = 0;
    virtual HRESULT WINAPI SetVisible(long bVisible) = 0;
    virtual HRESULT WINAPI GetVisible(long *pbVisible) = 0;
    virtual HRESULT WINAPI Add(BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long *pdwID) = 0;
    virtual HRESULT WINAPI Insert(BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long dwRefID,long bBefore,long *pdwID) = 0;
    virtual HRESULT WINAPI Remove(long dwID) = 0;
    virtual HRESULT WINAPI RemoveAll(void) = 0;
  };
#else
  typedef struct IAgentCommandsVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCommands *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCommands *This);
      ULONG (WINAPI *Release)(IAgentCommands *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCommands *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCommands *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCommands *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCommands *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetCommand)(IAgentCommands *This,long dwCommandID,IUnknown **ppunkCommand);
      HRESULT (WINAPI *GetCount)(IAgentCommands *This,long *pdwCount);
      HRESULT (WINAPI *SetCaption)(IAgentCommands *This,BSTR bszCaption);
      HRESULT (WINAPI *GetCaption)(IAgentCommands *This,BSTR *pbszCaption);
      HRESULT (WINAPI *SetVoice)(IAgentCommands *This,BSTR bszVoice);
      HRESULT (WINAPI *GetVoice)(IAgentCommands *This,BSTR *pbszVoice);
      HRESULT (WINAPI *SetVisible)(IAgentCommands *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentCommands *This,long *pbVisible);
      HRESULT (WINAPI *Add)(IAgentCommands *This,BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long *pdwID);
      HRESULT (WINAPI *Insert)(IAgentCommands *This,BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long dwRefID,long bBefore,long *pdwID);
      HRESULT (WINAPI *Remove)(IAgentCommands *This,long dwID);
      HRESULT (WINAPI *RemoveAll)(IAgentCommands *This);
    END_INTERFACE
  } IAgentCommandsVtbl;
  struct IAgentCommands {
    CONST_VTBL struct IAgentCommandsVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCommands_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCommands_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCommands_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCommands_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCommands_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCommands_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCommands_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCommands_GetCommand(This,dwCommandID,ppunkCommand) (This)->lpVtbl->GetCommand(This,dwCommandID,ppunkCommand)
#define IAgentCommands_GetCount(This,pdwCount) (This)->lpVtbl->GetCount(This,pdwCount)
#define IAgentCommands_SetCaption(This,bszCaption) (This)->lpVtbl->SetCaption(This,bszCaption)
#define IAgentCommands_GetCaption(This,pbszCaption) (This)->lpVtbl->GetCaption(This,pbszCaption)
#define IAgentCommands_SetVoice(This,bszVoice) (This)->lpVtbl->SetVoice(This,bszVoice)
#define IAgentCommands_GetVoice(This,pbszVoice) (This)->lpVtbl->GetVoice(This,pbszVoice)
#define IAgentCommands_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentCommands_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCommands_Add(This,bszCaption,bszVoice,bEnabled,bVisible,pdwID) (This)->lpVtbl->Add(This,bszCaption,bszVoice,bEnabled,bVisible,pdwID)
#define IAgentCommands_Insert(This,bszCaption,bszVoice,bEnabled,bVisible,dwRefID,bBefore,pdwID) (This)->lpVtbl->Insert(This,bszCaption,bszVoice,bEnabled,bVisible,dwRefID,bBefore,pdwID)
#define IAgentCommands_Remove(This,dwID) (This)->lpVtbl->Remove(This,dwID)
#define IAgentCommands_RemoveAll(This) (This)->lpVtbl->RemoveAll(This)
#endif
#endif
  HRESULT WINAPI IAgentCommands_GetCommand_Proxy(IAgentCommands *This,long dwCommandID,IUnknown **ppunkCommand);
  void __RPC_STUB IAgentCommands_GetCommand_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_GetCount_Proxy(IAgentCommands *This,long *pdwCount);
  void __RPC_STUB IAgentCommands_GetCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_SetCaption_Proxy(IAgentCommands *This,BSTR bszCaption);
  void __RPC_STUB IAgentCommands_SetCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_GetCaption_Proxy(IAgentCommands *This,BSTR *pbszCaption);
  void __RPC_STUB IAgentCommands_GetCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_SetVoice_Proxy(IAgentCommands *This,BSTR bszVoice);
  void __RPC_STUB IAgentCommands_SetVoice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_GetVoice_Proxy(IAgentCommands *This,BSTR *pbszVoice);
  void __RPC_STUB IAgentCommands_GetVoice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_SetVisible_Proxy(IAgentCommands *This,long bVisible);
  void __RPC_STUB IAgentCommands_SetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_GetVisible_Proxy(IAgentCommands *This,long *pbVisible);
  void __RPC_STUB IAgentCommands_GetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_Add_Proxy(IAgentCommands *This,BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long *pdwID);
  void __RPC_STUB IAgentCommands_Add_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_Insert_Proxy(IAgentCommands *This,BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long dwRefID,long bBefore,long *pdwID);
  void __RPC_STUB IAgentCommands_Insert_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_Remove_Proxy(IAgentCommands *This,long dwID);
  void __RPC_STUB IAgentCommands_Remove_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommands_RemoveAll_Proxy(IAgentCommands *This);
  void __RPC_STUB IAgentCommands_RemoveAll_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCommandsEx_INTERFACE_DEFINED__
#define __IAgentCommandsEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCommandsEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCommandsEx : public IAgentCommands {
  public:
    virtual HRESULT WINAPI GetCommandEx(long dwCommandID,IAgentCommandEx **ppCommandEx) = 0;
    virtual HRESULT WINAPI SetDefaultID(long dwID) = 0;
    virtual HRESULT WINAPI GetDefaultID(long *pdwID) = 0;
    virtual HRESULT WINAPI SetHelpContextID(long ulHelpID) = 0;
    virtual HRESULT WINAPI GetHelpContextID(long *pulHelpID) = 0;
    virtual HRESULT WINAPI SetFontName(BSTR bszFontName) = 0;
    virtual HRESULT WINAPI GetFontName(BSTR *pbszFontName) = 0;
    virtual HRESULT WINAPI SetFontSize(long lFontSize) = 0;
    virtual HRESULT WINAPI GetFontSize(long *lFontSize) = 0;
    virtual HRESULT WINAPI SetVoiceCaption(BSTR bszVoiceCaption) = 0;
    virtual HRESULT WINAPI GetVoiceCaption(BSTR *bszVoiceCaption) = 0;
    virtual HRESULT WINAPI AddEx(BSTR bszCaption,BSTR bszVoice,BSTR bszVoiceCaption,long bEnabled,long bVisible,long ulHelpId,long *pdwID) = 0;
    virtual HRESULT WINAPI InsertEx(BSTR bszCaption,BSTR bszVoice,BSTR bszVoiceCaption,long bEnabled,long bVisible,long ulHelpId,long dwRefID,long bBefore,long *pdwID) = 0;
    virtual HRESULT WINAPI SetGlobalVoiceCommandsEnabled(long bEnable) = 0;
    virtual HRESULT WINAPI GetGlobalVoiceCommandsEnabled(long *pbEnabled) = 0;
  };
#else
  typedef struct IAgentCommandsExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCommandsEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCommandsEx *This);
      ULONG (WINAPI *Release)(IAgentCommandsEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCommandsEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCommandsEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCommandsEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCommandsEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetCommand)(IAgentCommandsEx *This,long dwCommandID,IUnknown **ppunkCommand);
      HRESULT (WINAPI *GetCount)(IAgentCommandsEx *This,long *pdwCount);
      HRESULT (WINAPI *SetCaption)(IAgentCommandsEx *This,BSTR bszCaption);
      HRESULT (WINAPI *GetCaption)(IAgentCommandsEx *This,BSTR *pbszCaption);
      HRESULT (WINAPI *SetVoice)(IAgentCommandsEx *This,BSTR bszVoice);
      HRESULT (WINAPI *GetVoice)(IAgentCommandsEx *This,BSTR *pbszVoice);
      HRESULT (WINAPI *SetVisible)(IAgentCommandsEx *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentCommandsEx *This,long *pbVisible);
      HRESULT (WINAPI *Add)(IAgentCommandsEx *This,BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long *pdwID);
      HRESULT (WINAPI *Insert)(IAgentCommandsEx *This,BSTR bszCaption,BSTR bszVoice,long bEnabled,long bVisible,long dwRefID,long bBefore,long *pdwID);
      HRESULT (WINAPI *Remove)(IAgentCommandsEx *This,long dwID);
      HRESULT (WINAPI *RemoveAll)(IAgentCommandsEx *This);
      HRESULT (WINAPI *GetCommandEx)(IAgentCommandsEx *This,long dwCommandID,IAgentCommandEx **ppCommandEx);
      HRESULT (WINAPI *SetDefaultID)(IAgentCommandsEx *This,long dwID);
      HRESULT (WINAPI *GetDefaultID)(IAgentCommandsEx *This,long *pdwID);
      HRESULT (WINAPI *SetHelpContextID)(IAgentCommandsEx *This,long ulHelpID);
      HRESULT (WINAPI *GetHelpContextID)(IAgentCommandsEx *This,long *pulHelpID);
      HRESULT (WINAPI *SetFontName)(IAgentCommandsEx *This,BSTR bszFontName);
      HRESULT (WINAPI *GetFontName)(IAgentCommandsEx *This,BSTR *pbszFontName);
      HRESULT (WINAPI *SetFontSize)(IAgentCommandsEx *This,long lFontSize);
      HRESULT (WINAPI *GetFontSize)(IAgentCommandsEx *This,long *lFontSize);
      HRESULT (WINAPI *SetVoiceCaption)(IAgentCommandsEx *This,BSTR bszVoiceCaption);
      HRESULT (WINAPI *GetVoiceCaption)(IAgentCommandsEx *This,BSTR *bszVoiceCaption);
      HRESULT (WINAPI *AddEx)(IAgentCommandsEx *This,BSTR bszCaption,BSTR bszVoice,BSTR bszVoiceCaption,long bEnabled,long bVisible,long ulHelpId,long *pdwID);
      HRESULT (WINAPI *InsertEx)(IAgentCommandsEx *This,BSTR bszCaption,BSTR bszVoice,BSTR bszVoiceCaption,long bEnabled,long bVisible,long ulHelpId,long dwRefID,long bBefore,long *pdwID);
      HRESULT (WINAPI *SetGlobalVoiceCommandsEnabled)(IAgentCommandsEx *This,long bEnable);
      HRESULT (WINAPI *GetGlobalVoiceCommandsEnabled)(IAgentCommandsEx *This,long *pbEnabled);
    END_INTERFACE
  } IAgentCommandsExVtbl;
  struct IAgentCommandsEx {
    CONST_VTBL struct IAgentCommandsExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCommandsEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCommandsEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCommandsEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCommandsEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCommandsEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCommandsEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCommandsEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCommandsEx_GetCommand(This,dwCommandID,ppunkCommand) (This)->lpVtbl->GetCommand(This,dwCommandID,ppunkCommand)
#define IAgentCommandsEx_GetCount(This,pdwCount) (This)->lpVtbl->GetCount(This,pdwCount)
#define IAgentCommandsEx_SetCaption(This,bszCaption) (This)->lpVtbl->SetCaption(This,bszCaption)
#define IAgentCommandsEx_GetCaption(This,pbszCaption) (This)->lpVtbl->GetCaption(This,pbszCaption)
#define IAgentCommandsEx_SetVoice(This,bszVoice) (This)->lpVtbl->SetVoice(This,bszVoice)
#define IAgentCommandsEx_GetVoice(This,pbszVoice) (This)->lpVtbl->GetVoice(This,pbszVoice)
#define IAgentCommandsEx_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentCommandsEx_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCommandsEx_Add(This,bszCaption,bszVoice,bEnabled,bVisible,pdwID) (This)->lpVtbl->Add(This,bszCaption,bszVoice,bEnabled,bVisible,pdwID)
#define IAgentCommandsEx_Insert(This,bszCaption,bszVoice,bEnabled,bVisible,dwRefID,bBefore,pdwID) (This)->lpVtbl->Insert(This,bszCaption,bszVoice,bEnabled,bVisible,dwRefID,bBefore,pdwID)
#define IAgentCommandsEx_Remove(This,dwID) (This)->lpVtbl->Remove(This,dwID)
#define IAgentCommandsEx_RemoveAll(This) (This)->lpVtbl->RemoveAll(This)
#define IAgentCommandsEx_GetCommandEx(This,dwCommandID,ppCommandEx) (This)->lpVtbl->GetCommandEx(This,dwCommandID,ppCommandEx)
#define IAgentCommandsEx_SetDefaultID(This,dwID) (This)->lpVtbl->SetDefaultID(This,dwID)
#define IAgentCommandsEx_GetDefaultID(This,pdwID) (This)->lpVtbl->GetDefaultID(This,pdwID)
#define IAgentCommandsEx_SetHelpContextID(This,ulHelpID) (This)->lpVtbl->SetHelpContextID(This,ulHelpID)
#define IAgentCommandsEx_GetHelpContextID(This,pulHelpID) (This)->lpVtbl->GetHelpContextID(This,pulHelpID)
#define IAgentCommandsEx_SetFontName(This,bszFontName) (This)->lpVtbl->SetFontName(This,bszFontName)
#define IAgentCommandsEx_GetFontName(This,pbszFontName) (This)->lpVtbl->GetFontName(This,pbszFontName)
#define IAgentCommandsEx_SetFontSize(This,lFontSize) (This)->lpVtbl->SetFontSize(This,lFontSize)
#define IAgentCommandsEx_GetFontSize(This,lFontSize) (This)->lpVtbl->GetFontSize(This,lFontSize)
#define IAgentCommandsEx_SetVoiceCaption(This,bszVoiceCaption) (This)->lpVtbl->SetVoiceCaption(This,bszVoiceCaption)
#define IAgentCommandsEx_GetVoiceCaption(This,bszVoiceCaption) (This)->lpVtbl->GetVoiceCaption(This,bszVoiceCaption)
#define IAgentCommandsEx_AddEx(This,bszCaption,bszVoice,bszVoiceCaption,bEnabled,bVisible,ulHelpId,pdwID) (This)->lpVtbl->AddEx(This,bszCaption,bszVoice,bszVoiceCaption,bEnabled,bVisible,ulHelpId,pdwID)
#define IAgentCommandsEx_InsertEx(This,bszCaption,bszVoice,bszVoiceCaption,bEnabled,bVisible,ulHelpId,dwRefID,bBefore,pdwID) (This)->lpVtbl->InsertEx(This,bszCaption,bszVoice,bszVoiceCaption,bEnabled,bVisible,ulHelpId,dwRefID,bBefore,pdwID)
#define IAgentCommandsEx_SetGlobalVoiceCommandsEnabled(This,bEnable) (This)->lpVtbl->SetGlobalVoiceCommandsEnabled(This,bEnable)
#define IAgentCommandsEx_GetGlobalVoiceCommandsEnabled(This,pbEnabled) (This)->lpVtbl->GetGlobalVoiceCommandsEnabled(This,pbEnabled)
#endif
#endif
  HRESULT WINAPI IAgentCommandsEx_GetCommandEx_Proxy(IAgentCommandsEx *This,long dwCommandID,IAgentCommandEx **ppCommandEx);
  void __RPC_STUB IAgentCommandsEx_GetCommandEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_SetDefaultID_Proxy(IAgentCommandsEx *This,long dwID);
  void __RPC_STUB IAgentCommandsEx_SetDefaultID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_GetDefaultID_Proxy(IAgentCommandsEx *This,long *pdwID);
  void __RPC_STUB IAgentCommandsEx_GetDefaultID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_SetHelpContextID_Proxy(IAgentCommandsEx *This,long ulHelpID);
  void __RPC_STUB IAgentCommandsEx_SetHelpContextID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_GetHelpContextID_Proxy(IAgentCommandsEx *This,long *pulHelpID);
  void __RPC_STUB IAgentCommandsEx_GetHelpContextID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_SetFontName_Proxy(IAgentCommandsEx *This,BSTR bszFontName);
  void __RPC_STUB IAgentCommandsEx_SetFontName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_GetFontName_Proxy(IAgentCommandsEx *This,BSTR *pbszFontName);
  void __RPC_STUB IAgentCommandsEx_GetFontName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_SetFontSize_Proxy(IAgentCommandsEx *This,long lFontSize);
  void __RPC_STUB IAgentCommandsEx_SetFontSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_GetFontSize_Proxy(IAgentCommandsEx *This,long *lFontSize);
  void __RPC_STUB IAgentCommandsEx_GetFontSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_SetVoiceCaption_Proxy(IAgentCommandsEx *This,BSTR bszVoiceCaption);
  void __RPC_STUB IAgentCommandsEx_SetVoiceCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_GetVoiceCaption_Proxy(IAgentCommandsEx *This,BSTR *bszVoiceCaption);
  void __RPC_STUB IAgentCommandsEx_GetVoiceCaption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_AddEx_Proxy(IAgentCommandsEx *This,BSTR bszCaption,BSTR bszVoice,BSTR bszVoiceCaption,long bEnabled,long bVisible,long ulHelpId,long *pdwID);
  void __RPC_STUB IAgentCommandsEx_AddEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_InsertEx_Proxy(IAgentCommandsEx *This,BSTR bszCaption,BSTR bszVoice,BSTR bszVoiceCaption,long bEnabled,long bVisible,long ulHelpId,long dwRefID,long bBefore,long *pdwID);
  void __RPC_STUB IAgentCommandsEx_InsertEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_SetGlobalVoiceCommandsEnabled_Proxy(IAgentCommandsEx *This,long bEnable);
  void __RPC_STUB IAgentCommandsEx_SetGlobalVoiceCommandsEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandsEx_GetGlobalVoiceCommandsEnabled_Proxy(IAgentCommandsEx *This,long *pbEnabled);
  void __RPC_STUB IAgentCommandsEx_GetGlobalVoiceCommandsEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCommandWindow_INTERFACE_DEFINED__
#define __IAgentCommandWindow_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCommandWindow;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCommandWindow : public IDispatch {
  public:
    virtual HRESULT WINAPI SetVisible(long bVisible) = 0;
    virtual HRESULT WINAPI GetVisible(long *pbVisible) = 0;
    virtual HRESULT WINAPI GetPosition(long *plLeft,long *plTop) = 0;
    virtual HRESULT WINAPI GetSize(long *plWidth,long *plHeight) = 0;
  };
#else
  typedef struct IAgentCommandWindowVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCommandWindow *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCommandWindow *This);
      ULONG (WINAPI *Release)(IAgentCommandWindow *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCommandWindow *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCommandWindow *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCommandWindow *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCommandWindow *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *SetVisible)(IAgentCommandWindow *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentCommandWindow *This,long *pbVisible);
      HRESULT (WINAPI *GetPosition)(IAgentCommandWindow *This,long *plLeft,long *plTop);
      HRESULT (WINAPI *GetSize)(IAgentCommandWindow *This,long *plWidth,long *plHeight);
    END_INTERFACE
  } IAgentCommandWindowVtbl;
  struct IAgentCommandWindow {
    CONST_VTBL struct IAgentCommandWindowVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCommandWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCommandWindow_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCommandWindow_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCommandWindow_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCommandWindow_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCommandWindow_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCommandWindow_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCommandWindow_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentCommandWindow_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCommandWindow_GetPosition(This,plLeft,plTop) (This)->lpVtbl->GetPosition(This,plLeft,plTop)
#define IAgentCommandWindow_GetSize(This,plWidth,plHeight) (This)->lpVtbl->GetSize(This,plWidth,plHeight)
#endif
#endif
  HRESULT WINAPI IAgentCommandWindow_SetVisible_Proxy(IAgentCommandWindow *This,long bVisible);
  void __RPC_STUB IAgentCommandWindow_SetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandWindow_GetVisible_Proxy(IAgentCommandWindow *This,long *pbVisible);
  void __RPC_STUB IAgentCommandWindow_GetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandWindow_GetPosition_Proxy(IAgentCommandWindow *This,long *plLeft,long *plTop);
  void __RPC_STUB IAgentCommandWindow_GetPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCommandWindow_GetSize_Proxy(IAgentCommandWindow *This,long *plWidth,long *plHeight);
  void __RPC_STUB IAgentCommandWindow_GetSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentSpeechInputProperties_INTERFACE_DEFINED__
#define __IAgentSpeechInputProperties_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentSpeechInputProperties;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentSpeechInputProperties : public IDispatch {
  public:
    virtual HRESULT WINAPI GetInstalled(long *pbInstalled) = 0;
    virtual HRESULT WINAPI GetEnabled(long *pbEnabled) = 0;
    virtual HRESULT WINAPI GetHotKey(BSTR *pbszHotCharKey) = 0;
    virtual HRESULT WINAPI GetLCID(LCID *plcidCurrent) = 0;
    virtual HRESULT WINAPI GetEngine(BSTR *pbszEngine) = 0;
    virtual HRESULT WINAPI SetEngine(BSTR bszEngine) = 0;
    virtual HRESULT WINAPI GetListeningTip(long *pbListeningTip) = 0;
  };
#else
  typedef struct IAgentSpeechInputPropertiesVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentSpeechInputProperties *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentSpeechInputProperties *This);
      ULONG (WINAPI *Release)(IAgentSpeechInputProperties *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentSpeechInputProperties *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentSpeechInputProperties *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentSpeechInputProperties *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentSpeechInputProperties *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetInstalled)(IAgentSpeechInputProperties *This,long *pbInstalled);
      HRESULT (WINAPI *GetEnabled)(IAgentSpeechInputProperties *This,long *pbEnabled);
      HRESULT (WINAPI *GetHotKey)(IAgentSpeechInputProperties *This,BSTR *pbszHotCharKey);
      HRESULT (WINAPI *GetLCID)(IAgentSpeechInputProperties *This,LCID *plcidCurrent);
      HRESULT (WINAPI *GetEngine)(IAgentSpeechInputProperties *This,BSTR *pbszEngine);
      HRESULT (WINAPI *SetEngine)(IAgentSpeechInputProperties *This,BSTR bszEngine);
      HRESULT (WINAPI *GetListeningTip)(IAgentSpeechInputProperties *This,long *pbListeningTip);
    END_INTERFACE
  } IAgentSpeechInputPropertiesVtbl;
  struct IAgentSpeechInputProperties {
    CONST_VTBL struct IAgentSpeechInputPropertiesVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentSpeechInputProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentSpeechInputProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentSpeechInputProperties_Release(This) (This)->lpVtbl->Release(This)
#define IAgentSpeechInputProperties_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentSpeechInputProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentSpeechInputProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentSpeechInputProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentSpeechInputProperties_GetInstalled(This,pbInstalled) (This)->lpVtbl->GetInstalled(This,pbInstalled)
#define IAgentSpeechInputProperties_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentSpeechInputProperties_GetHotKey(This,pbszHotCharKey) (This)->lpVtbl->GetHotKey(This,pbszHotCharKey)
#define IAgentSpeechInputProperties_GetLCID(This,plcidCurrent) (This)->lpVtbl->GetLCID(This,plcidCurrent)
#define IAgentSpeechInputProperties_GetEngine(This,pbszEngine) (This)->lpVtbl->GetEngine(This,pbszEngine)
#define IAgentSpeechInputProperties_SetEngine(This,bszEngine) (This)->lpVtbl->SetEngine(This,bszEngine)
#define IAgentSpeechInputProperties_GetListeningTip(This,pbListeningTip) (This)->lpVtbl->GetListeningTip(This,pbListeningTip)
#endif
#endif
  HRESULT WINAPI IAgentSpeechInputProperties_GetInstalled_Proxy(IAgentSpeechInputProperties *This,long *pbInstalled);
  void __RPC_STUB IAgentSpeechInputProperties_GetInstalled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentSpeechInputProperties_GetEnabled_Proxy(IAgentSpeechInputProperties *This,long *pbEnabled);
  void __RPC_STUB IAgentSpeechInputProperties_GetEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentSpeechInputProperties_GetHotKey_Proxy(IAgentSpeechInputProperties *This,BSTR *pbszHotCharKey);
  void __RPC_STUB IAgentSpeechInputProperties_GetHotKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentSpeechInputProperties_GetLCID_Proxy(IAgentSpeechInputProperties *This,LCID *plcidCurrent);
  void __RPC_STUB IAgentSpeechInputProperties_GetLCID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentSpeechInputProperties_GetEngine_Proxy(IAgentSpeechInputProperties *This,BSTR *pbszEngine);
  void __RPC_STUB IAgentSpeechInputProperties_GetEngine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentSpeechInputProperties_SetEngine_Proxy(IAgentSpeechInputProperties *This,BSTR bszEngine);
  void __RPC_STUB IAgentSpeechInputProperties_SetEngine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentSpeechInputProperties_GetListeningTip_Proxy(IAgentSpeechInputProperties *This,long *pbListeningTip);
  void __RPC_STUB IAgentSpeechInputProperties_GetListeningTip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentAudioOutputProperties_INTERFACE_DEFINED__
#define __IAgentAudioOutputProperties_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentAudioOutputProperties;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentAudioOutputProperties : public IDispatch {
  public:
    virtual HRESULT WINAPI GetEnabled(long *pbEnabled) = 0;
    virtual HRESULT WINAPI GetUsingSoundEffects(long *pbUsingSoundEffects) = 0;
  };
#else
  typedef struct IAgentAudioOutputPropertiesVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentAudioOutputProperties *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentAudioOutputProperties *This);
      ULONG (WINAPI *Release)(IAgentAudioOutputProperties *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentAudioOutputProperties *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentAudioOutputProperties *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentAudioOutputProperties *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentAudioOutputProperties *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetEnabled)(IAgentAudioOutputProperties *This,long *pbEnabled);
      HRESULT (WINAPI *GetUsingSoundEffects)(IAgentAudioOutputProperties *This,long *pbUsingSoundEffects);
    END_INTERFACE
  } IAgentAudioOutputPropertiesVtbl;
  struct IAgentAudioOutputProperties {
    CONST_VTBL struct IAgentAudioOutputPropertiesVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentAudioOutputProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentAudioOutputProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentAudioOutputProperties_Release(This) (This)->lpVtbl->Release(This)
#define IAgentAudioOutputProperties_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentAudioOutputProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentAudioOutputProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentAudioOutputProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentAudioOutputProperties_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentAudioOutputProperties_GetUsingSoundEffects(This,pbUsingSoundEffects) (This)->lpVtbl->GetUsingSoundEffects(This,pbUsingSoundEffects)
#endif
#endif
  HRESULT WINAPI IAgentAudioOutputProperties_GetEnabled_Proxy(IAgentAudioOutputProperties *This,long *pbEnabled);
  void __RPC_STUB IAgentAudioOutputProperties_GetEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentAudioOutputProperties_GetUsingSoundEffects_Proxy(IAgentAudioOutputProperties *This,long *pbUsingSoundEffects);
  void __RPC_STUB IAgentAudioOutputProperties_GetUsingSoundEffects_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentAudioOutputPropertiesEx_INTERFACE_DEFINED__
#define __IAgentAudioOutputPropertiesEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentAudioOutputPropertiesEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentAudioOutputPropertiesEx : public IAgentAudioOutputProperties {
  public:
    virtual HRESULT WINAPI GetStatus(long *plStatus) = 0;
  };
#else
  typedef struct IAgentAudioOutputPropertiesExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentAudioOutputPropertiesEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentAudioOutputPropertiesEx *This);
      ULONG (WINAPI *Release)(IAgentAudioOutputPropertiesEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentAudioOutputPropertiesEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentAudioOutputPropertiesEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentAudioOutputPropertiesEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentAudioOutputPropertiesEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetEnabled)(IAgentAudioOutputPropertiesEx *This,long *pbEnabled);
      HRESULT (WINAPI *GetUsingSoundEffects)(IAgentAudioOutputPropertiesEx *This,long *pbUsingSoundEffects);
      HRESULT (WINAPI *GetStatus)(IAgentAudioOutputPropertiesEx *This,long *plStatus);
    END_INTERFACE
  } IAgentAudioOutputPropertiesExVtbl;
  struct IAgentAudioOutputPropertiesEx {
    CONST_VTBL struct IAgentAudioOutputPropertiesExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentAudioOutputPropertiesEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentAudioOutputPropertiesEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentAudioOutputPropertiesEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentAudioOutputPropertiesEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentAudioOutputPropertiesEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentAudioOutputPropertiesEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentAudioOutputPropertiesEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentAudioOutputPropertiesEx_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentAudioOutputPropertiesEx_GetUsingSoundEffects(This,pbUsingSoundEffects) (This)->lpVtbl->GetUsingSoundEffects(This,pbUsingSoundEffects)
#define IAgentAudioOutputPropertiesEx_GetStatus(This,plStatus) (This)->lpVtbl->GetStatus(This,plStatus)
#endif
#endif
  HRESULT WINAPI IAgentAudioOutputPropertiesEx_GetStatus_Proxy(IAgentAudioOutputPropertiesEx *This,long *plStatus);
  void __RPC_STUB IAgentAudioOutputPropertiesEx_GetStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentPropertySheet_INTERFACE_DEFINED__
#define __IAgentPropertySheet_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentPropertySheet;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentPropertySheet : public IDispatch {
  public:
    virtual HRESULT WINAPI GetVisible(long *pbVisible) = 0;
    virtual HRESULT WINAPI SetVisible(long bVisible) = 0;
    virtual HRESULT WINAPI GetPosition(long *plLeft,long *plTop) = 0;
    virtual HRESULT WINAPI GetSize(long *plWidth,long *plHeight) = 0;
    virtual HRESULT WINAPI GetPage(BSTR *pbszPage) = 0;
    virtual HRESULT WINAPI SetPage(BSTR bszPage) = 0;
  };
#else
  typedef struct IAgentPropertySheetVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentPropertySheet *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentPropertySheet *This);
      ULONG (WINAPI *Release)(IAgentPropertySheet *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentPropertySheet *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentPropertySheet *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentPropertySheet *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentPropertySheet *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetVisible)(IAgentPropertySheet *This,long *pbVisible);
      HRESULT (WINAPI *SetVisible)(IAgentPropertySheet *This,long bVisible);
      HRESULT (WINAPI *GetPosition)(IAgentPropertySheet *This,long *plLeft,long *plTop);
      HRESULT (WINAPI *GetSize)(IAgentPropertySheet *This,long *plWidth,long *plHeight);
      HRESULT (WINAPI *GetPage)(IAgentPropertySheet *This,BSTR *pbszPage);
      HRESULT (WINAPI *SetPage)(IAgentPropertySheet *This,BSTR bszPage);
    END_INTERFACE
  } IAgentPropertySheetVtbl;
  struct IAgentPropertySheet {
    CONST_VTBL struct IAgentPropertySheetVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentPropertySheet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentPropertySheet_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentPropertySheet_Release(This) (This)->lpVtbl->Release(This)
#define IAgentPropertySheet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentPropertySheet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentPropertySheet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentPropertySheet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentPropertySheet_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentPropertySheet_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentPropertySheet_GetPosition(This,plLeft,plTop) (This)->lpVtbl->GetPosition(This,plLeft,plTop)
#define IAgentPropertySheet_GetSize(This,plWidth,plHeight) (This)->lpVtbl->GetSize(This,plWidth,plHeight)
#define IAgentPropertySheet_GetPage(This,pbszPage) (This)->lpVtbl->GetPage(This,pbszPage)
#define IAgentPropertySheet_SetPage(This,bszPage) (This)->lpVtbl->SetPage(This,bszPage)
#endif
#endif
  HRESULT WINAPI IAgentPropertySheet_GetVisible_Proxy(IAgentPropertySheet *This,long *pbVisible);
  void __RPC_STUB IAgentPropertySheet_GetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPropertySheet_SetVisible_Proxy(IAgentPropertySheet *This,long bVisible);
  void __RPC_STUB IAgentPropertySheet_SetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPropertySheet_GetPosition_Proxy(IAgentPropertySheet *This,long *plLeft,long *plTop);
  void __RPC_STUB IAgentPropertySheet_GetPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPropertySheet_GetSize_Proxy(IAgentPropertySheet *This,long *plWidth,long *plHeight);
  void __RPC_STUB IAgentPropertySheet_GetSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPropertySheet_GetPage_Proxy(IAgentPropertySheet *This,BSTR *pbszPage);
  void __RPC_STUB IAgentPropertySheet_GetPage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPropertySheet_SetPage_Proxy(IAgentPropertySheet *This,BSTR bszPage);
  void __RPC_STUB IAgentPropertySheet_SetPage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentBalloon_INTERFACE_DEFINED__
#define __IAgentBalloon_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentBalloon;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentBalloon : public IDispatch {
  public:
    virtual HRESULT WINAPI GetEnabled(long *pbEnabled) = 0;
    virtual HRESULT WINAPI GetNumLines(long *plLines) = 0;
    virtual HRESULT WINAPI GetNumCharsPerLine(long *plCharsPerLine) = 0;
    virtual HRESULT WINAPI GetFontName(BSTR *pbszFontName) = 0;
    virtual HRESULT WINAPI GetFontSize(long *plFontSize) = 0;
    virtual HRESULT WINAPI GetFontBold(long *pbFontBold) = 0;
    virtual HRESULT WINAPI GetFontItalic(long *pbFontItalic) = 0;
    virtual HRESULT WINAPI GetFontStrikethru(long *pbFontStrikethru) = 0;
    virtual HRESULT WINAPI GetFontUnderline(long *pbFontUnderline) = 0;
    virtual HRESULT WINAPI GetForeColor(long *plFGColor) = 0;
    virtual HRESULT WINAPI GetBackColor(long *plBGColor) = 0;
    virtual HRESULT WINAPI GetBorderColor(long *plBorderColor) = 0;
    virtual HRESULT WINAPI SetVisible(long bVisible) = 0;
    virtual HRESULT WINAPI GetVisible(long *pbVisible) = 0;
    virtual HRESULT WINAPI SetFontName(BSTR bszFontName) = 0;
    virtual HRESULT WINAPI SetFontSize(long lFontSize) = 0;
    virtual HRESULT WINAPI SetFontCharSet(short sFontCharSet) = 0;
    virtual HRESULT WINAPI GetFontCharSet(short *psFontCharSet) = 0;
  };
#else
  typedef struct IAgentBalloonVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentBalloon *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentBalloon *This);
      ULONG (WINAPI *Release)(IAgentBalloon *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentBalloon *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentBalloon *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentBalloon *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentBalloon *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetEnabled)(IAgentBalloon *This,long *pbEnabled);
      HRESULT (WINAPI *GetNumLines)(IAgentBalloon *This,long *plLines);
      HRESULT (WINAPI *GetNumCharsPerLine)(IAgentBalloon *This,long *plCharsPerLine);
      HRESULT (WINAPI *GetFontName)(IAgentBalloon *This,BSTR *pbszFontName);
      HRESULT (WINAPI *GetFontSize)(IAgentBalloon *This,long *plFontSize);
      HRESULT (WINAPI *GetFontBold)(IAgentBalloon *This,long *pbFontBold);
      HRESULT (WINAPI *GetFontItalic)(IAgentBalloon *This,long *pbFontItalic);
      HRESULT (WINAPI *GetFontStrikethru)(IAgentBalloon *This,long *pbFontStrikethru);
      HRESULT (WINAPI *GetFontUnderline)(IAgentBalloon *This,long *pbFontUnderline);
      HRESULT (WINAPI *GetForeColor)(IAgentBalloon *This,long *plFGColor);
      HRESULT (WINAPI *GetBackColor)(IAgentBalloon *This,long *plBGColor);
      HRESULT (WINAPI *GetBorderColor)(IAgentBalloon *This,long *plBorderColor);
      HRESULT (WINAPI *SetVisible)(IAgentBalloon *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentBalloon *This,long *pbVisible);
      HRESULT (WINAPI *SetFontName)(IAgentBalloon *This,BSTR bszFontName);
      HRESULT (WINAPI *SetFontSize)(IAgentBalloon *This,long lFontSize);
      HRESULT (WINAPI *SetFontCharSet)(IAgentBalloon *This,short sFontCharSet);
      HRESULT (WINAPI *GetFontCharSet)(IAgentBalloon *This,short *psFontCharSet);
    END_INTERFACE
  } IAgentBalloonVtbl;
  struct IAgentBalloon {
    CONST_VTBL struct IAgentBalloonVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentBalloon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentBalloon_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentBalloon_Release(This) (This)->lpVtbl->Release(This)
#define IAgentBalloon_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentBalloon_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentBalloon_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentBalloon_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentBalloon_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentBalloon_GetNumLines(This,plLines) (This)->lpVtbl->GetNumLines(This,plLines)
#define IAgentBalloon_GetNumCharsPerLine(This,plCharsPerLine) (This)->lpVtbl->GetNumCharsPerLine(This,plCharsPerLine)
#define IAgentBalloon_GetFontName(This,pbszFontName) (This)->lpVtbl->GetFontName(This,pbszFontName)
#define IAgentBalloon_GetFontSize(This,plFontSize) (This)->lpVtbl->GetFontSize(This,plFontSize)
#define IAgentBalloon_GetFontBold(This,pbFontBold) (This)->lpVtbl->GetFontBold(This,pbFontBold)
#define IAgentBalloon_GetFontItalic(This,pbFontItalic) (This)->lpVtbl->GetFontItalic(This,pbFontItalic)
#define IAgentBalloon_GetFontStrikethru(This,pbFontStrikethru) (This)->lpVtbl->GetFontStrikethru(This,pbFontStrikethru)
#define IAgentBalloon_GetFontUnderline(This,pbFontUnderline) (This)->lpVtbl->GetFontUnderline(This,pbFontUnderline)
#define IAgentBalloon_GetForeColor(This,plFGColor) (This)->lpVtbl->GetForeColor(This,plFGColor)
#define IAgentBalloon_GetBackColor(This,plBGColor) (This)->lpVtbl->GetBackColor(This,plBGColor)
#define IAgentBalloon_GetBorderColor(This,plBorderColor) (This)->lpVtbl->GetBorderColor(This,plBorderColor)
#define IAgentBalloon_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentBalloon_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentBalloon_SetFontName(This,bszFontName) (This)->lpVtbl->SetFontName(This,bszFontName)
#define IAgentBalloon_SetFontSize(This,lFontSize) (This)->lpVtbl->SetFontSize(This,lFontSize)
#define IAgentBalloon_SetFontCharSet(This,sFontCharSet) (This)->lpVtbl->SetFontCharSet(This,sFontCharSet)
#define IAgentBalloon_GetFontCharSet(This,psFontCharSet) (This)->lpVtbl->GetFontCharSet(This,psFontCharSet)
#endif
#endif
  HRESULT WINAPI IAgentBalloon_GetEnabled_Proxy(IAgentBalloon *This,long *pbEnabled);
  void __RPC_STUB IAgentBalloon_GetEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetNumLines_Proxy(IAgentBalloon *This,long *plLines);
  void __RPC_STUB IAgentBalloon_GetNumLines_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetNumCharsPerLine_Proxy(IAgentBalloon *This,long *plCharsPerLine);
  void __RPC_STUB IAgentBalloon_GetNumCharsPerLine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontName_Proxy(IAgentBalloon *This,BSTR *pbszFontName);
  void __RPC_STUB IAgentBalloon_GetFontName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontSize_Proxy(IAgentBalloon *This,long *plFontSize);
  void __RPC_STUB IAgentBalloon_GetFontSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontBold_Proxy(IAgentBalloon *This,long *pbFontBold);
  void __RPC_STUB IAgentBalloon_GetFontBold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontItalic_Proxy(IAgentBalloon *This,long *pbFontItalic);
  void __RPC_STUB IAgentBalloon_GetFontItalic_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontStrikethru_Proxy(IAgentBalloon *This,long *pbFontStrikethru);
  void __RPC_STUB IAgentBalloon_GetFontStrikethru_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontUnderline_Proxy(IAgentBalloon *This,long *pbFontUnderline);
  void __RPC_STUB IAgentBalloon_GetFontUnderline_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetForeColor_Proxy(IAgentBalloon *This,long *plFGColor);
  void __RPC_STUB IAgentBalloon_GetForeColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetBackColor_Proxy(IAgentBalloon *This,long *plBGColor);
  void __RPC_STUB IAgentBalloon_GetBackColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetBorderColor_Proxy(IAgentBalloon *This,long *plBorderColor);
  void __RPC_STUB IAgentBalloon_GetBorderColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_SetVisible_Proxy(IAgentBalloon *This,long bVisible);
  void __RPC_STUB IAgentBalloon_SetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetVisible_Proxy(IAgentBalloon *This,long *pbVisible);
  void __RPC_STUB IAgentBalloon_GetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_SetFontName_Proxy(IAgentBalloon *This,BSTR bszFontName);
  void __RPC_STUB IAgentBalloon_SetFontName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_SetFontSize_Proxy(IAgentBalloon *This,long lFontSize);
  void __RPC_STUB IAgentBalloon_SetFontSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_SetFontCharSet_Proxy(IAgentBalloon *This,short sFontCharSet);
  void __RPC_STUB IAgentBalloon_SetFontCharSet_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloon_GetFontCharSet_Proxy(IAgentBalloon *This,short *psFontCharSet);
  void __RPC_STUB IAgentBalloon_GetFontCharSet_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentBalloonEx_INTERFACE_DEFINED__
#define __IAgentBalloonEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentBalloonEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentBalloonEx : public IAgentBalloon {
  public:
    virtual HRESULT WINAPI SetStyle(long lStyle) = 0;
    virtual HRESULT WINAPI GetStyle(long *plStyle) = 0;
    virtual HRESULT WINAPI SetNumLines(long lLines) = 0;
    virtual HRESULT WINAPI SetNumCharsPerLine(long lCharsPerLine) = 0;
  };
#else
  typedef struct IAgentBalloonExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentBalloonEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentBalloonEx *This);
      ULONG (WINAPI *Release)(IAgentBalloonEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentBalloonEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentBalloonEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentBalloonEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentBalloonEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetEnabled)(IAgentBalloonEx *This,long *pbEnabled);
      HRESULT (WINAPI *GetNumLines)(IAgentBalloonEx *This,long *plLines);
      HRESULT (WINAPI *GetNumCharsPerLine)(IAgentBalloonEx *This,long *plCharsPerLine);
      HRESULT (WINAPI *GetFontName)(IAgentBalloonEx *This,BSTR *pbszFontName);
      HRESULT (WINAPI *GetFontSize)(IAgentBalloonEx *This,long *plFontSize);
      HRESULT (WINAPI *GetFontBold)(IAgentBalloonEx *This,long *pbFontBold);
      HRESULT (WINAPI *GetFontItalic)(IAgentBalloonEx *This,long *pbFontItalic);
      HRESULT (WINAPI *GetFontStrikethru)(IAgentBalloonEx *This,long *pbFontStrikethru);
      HRESULT (WINAPI *GetFontUnderline)(IAgentBalloonEx *This,long *pbFontUnderline);
      HRESULT (WINAPI *GetForeColor)(IAgentBalloonEx *This,long *plFGColor);
      HRESULT (WINAPI *GetBackColor)(IAgentBalloonEx *This,long *plBGColor);
      HRESULT (WINAPI *GetBorderColor)(IAgentBalloonEx *This,long *plBorderColor);
      HRESULT (WINAPI *SetVisible)(IAgentBalloonEx *This,long bVisible);
      HRESULT (WINAPI *GetVisible)(IAgentBalloonEx *This,long *pbVisible);
      HRESULT (WINAPI *SetFontName)(IAgentBalloonEx *This,BSTR bszFontName);
      HRESULT (WINAPI *SetFontSize)(IAgentBalloonEx *This,long lFontSize);
      HRESULT (WINAPI *SetFontCharSet)(IAgentBalloonEx *This,short sFontCharSet);
      HRESULT (WINAPI *GetFontCharSet)(IAgentBalloonEx *This,short *psFontCharSet);
      HRESULT (WINAPI *SetStyle)(IAgentBalloonEx *This,long lStyle);
      HRESULT (WINAPI *GetStyle)(IAgentBalloonEx *This,long *plStyle);
      HRESULT (WINAPI *SetNumLines)(IAgentBalloonEx *This,long lLines);
      HRESULT (WINAPI *SetNumCharsPerLine)(IAgentBalloonEx *This,long lCharsPerLine);
    END_INTERFACE
  } IAgentBalloonExVtbl;
  struct IAgentBalloonEx {
    CONST_VTBL struct IAgentBalloonExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentBalloonEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentBalloonEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentBalloonEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentBalloonEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentBalloonEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentBalloonEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentBalloonEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentBalloonEx_GetEnabled(This,pbEnabled) (This)->lpVtbl->GetEnabled(This,pbEnabled)
#define IAgentBalloonEx_GetNumLines(This,plLines) (This)->lpVtbl->GetNumLines(This,plLines)
#define IAgentBalloonEx_GetNumCharsPerLine(This,plCharsPerLine) (This)->lpVtbl->GetNumCharsPerLine(This,plCharsPerLine)
#define IAgentBalloonEx_GetFontName(This,pbszFontName) (This)->lpVtbl->GetFontName(This,pbszFontName)
#define IAgentBalloonEx_GetFontSize(This,plFontSize) (This)->lpVtbl->GetFontSize(This,plFontSize)
#define IAgentBalloonEx_GetFontBold(This,pbFontBold) (This)->lpVtbl->GetFontBold(This,pbFontBold)
#define IAgentBalloonEx_GetFontItalic(This,pbFontItalic) (This)->lpVtbl->GetFontItalic(This,pbFontItalic)
#define IAgentBalloonEx_GetFontStrikethru(This,pbFontStrikethru) (This)->lpVtbl->GetFontStrikethru(This,pbFontStrikethru)
#define IAgentBalloonEx_GetFontUnderline(This,pbFontUnderline) (This)->lpVtbl->GetFontUnderline(This,pbFontUnderline)
#define IAgentBalloonEx_GetForeColor(This,plFGColor) (This)->lpVtbl->GetForeColor(This,plFGColor)
#define IAgentBalloonEx_GetBackColor(This,plBGColor) (This)->lpVtbl->GetBackColor(This,plBGColor)
#define IAgentBalloonEx_GetBorderColor(This,plBorderColor) (This)->lpVtbl->GetBorderColor(This,plBorderColor)
#define IAgentBalloonEx_SetVisible(This,bVisible) (This)->lpVtbl->SetVisible(This,bVisible)
#define IAgentBalloonEx_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentBalloonEx_SetFontName(This,bszFontName) (This)->lpVtbl->SetFontName(This,bszFontName)
#define IAgentBalloonEx_SetFontSize(This,lFontSize) (This)->lpVtbl->SetFontSize(This,lFontSize)
#define IAgentBalloonEx_SetFontCharSet(This,sFontCharSet) (This)->lpVtbl->SetFontCharSet(This,sFontCharSet)
#define IAgentBalloonEx_GetFontCharSet(This,psFontCharSet) (This)->lpVtbl->GetFontCharSet(This,psFontCharSet)
#define IAgentBalloonEx_SetStyle(This,lStyle) (This)->lpVtbl->SetStyle(This,lStyle)
#define IAgentBalloonEx_GetStyle(This,plStyle) (This)->lpVtbl->GetStyle(This,plStyle)
#define IAgentBalloonEx_SetNumLines(This,lLines) (This)->lpVtbl->SetNumLines(This,lLines)
#define IAgentBalloonEx_SetNumCharsPerLine(This,lCharsPerLine) (This)->lpVtbl->SetNumCharsPerLine(This,lCharsPerLine)
#endif
#endif
  HRESULT WINAPI IAgentBalloonEx_SetStyle_Proxy(IAgentBalloonEx *This,long lStyle);
  void __RPC_STUB IAgentBalloonEx_SetStyle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloonEx_GetStyle_Proxy(IAgentBalloonEx *This,long *plStyle);
  void __RPC_STUB IAgentBalloonEx_GetStyle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloonEx_SetNumLines_Proxy(IAgentBalloonEx *This,long lLines);
  void __RPC_STUB IAgentBalloonEx_SetNumLines_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentBalloonEx_SetNumCharsPerLine_Proxy(IAgentBalloonEx *This,long lCharsPerLine);
  void __RPC_STUB IAgentBalloonEx_SetNumCharsPerLine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCharacter_INTERFACE_DEFINED__
#define __IAgentCharacter_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCharacter;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCharacter : public IDispatch {
  public:
    virtual HRESULT WINAPI GetVisible(long *pbVisible) = 0;
    virtual HRESULT WINAPI SetPosition(long lLeft,long lTop) = 0;
    virtual HRESULT WINAPI GetPosition(long *plLeft,long *plTop) = 0;
    virtual HRESULT WINAPI SetSize(long lWidth,long lHeight) = 0;
    virtual HRESULT WINAPI GetSize(long *plWidth,long *plHeight) = 0;
    virtual HRESULT WINAPI GetName(BSTR *pbszName) = 0;
    virtual HRESULT WINAPI GetDescription(BSTR *pbszDescription) = 0;
    virtual HRESULT WINAPI GetTTSSpeed(long *pdwSpeed) = 0;
    virtual HRESULT WINAPI GetTTSPitch(short *pwPitch) = 0;
    virtual HRESULT WINAPI Activate(short sState) = 0;
    virtual HRESULT WINAPI SetIdleOn(long bOn) = 0;
    virtual HRESULT WINAPI GetIdleOn(long *pbOn) = 0;
    virtual HRESULT WINAPI Prepare(long dwType,BSTR bszName,long bQueue,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Play(BSTR bszAnimation,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Stop(long dwReqID) = 0;
    virtual HRESULT WINAPI StopAll(long lTypes) = 0;
    virtual HRESULT WINAPI Wait(long dwReqID,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Interrupt(long dwReqID,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Show(long bFast,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Hide(long bFast,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Speak(BSTR bszText,BSTR bszUrl,long *pdwReqID) = 0;
    virtual HRESULT WINAPI MoveTo(short x,short y,long lSpeed,long *pdwReqID) = 0;
    virtual HRESULT WINAPI GestureAt(short x,short y,long *pdwReqID) = 0;
    virtual HRESULT WINAPI GetMoveCause(long *pdwCause) = 0;
    virtual HRESULT WINAPI GetVisibilityCause(long *pdwCause) = 0;
    virtual HRESULT WINAPI HasOtherClients(long *plNumOtherClients) = 0;
    virtual HRESULT WINAPI SetSoundEffectsOn(long bOn) = 0;
    virtual HRESULT WINAPI GetSoundEffectsOn(long *pbOn) = 0;
    virtual HRESULT WINAPI SetName(BSTR bszName) = 0;
    virtual HRESULT WINAPI SetDescription(BSTR bszDescription) = 0;
    virtual HRESULT WINAPI GetExtraData(BSTR *pbszExtraData) = 0;
  };
#else
  typedef struct IAgentCharacterVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCharacter *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCharacter *This);
      ULONG (WINAPI *Release)(IAgentCharacter *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCharacter *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCharacter *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCharacter *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCharacter *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetVisible)(IAgentCharacter *This,long *pbVisible);
      HRESULT (WINAPI *SetPosition)(IAgentCharacter *This,long lLeft,long lTop);
      HRESULT (WINAPI *GetPosition)(IAgentCharacter *This,long *plLeft,long *plTop);
      HRESULT (WINAPI *SetSize)(IAgentCharacter *This,long lWidth,long lHeight);
      HRESULT (WINAPI *GetSize)(IAgentCharacter *This,long *plWidth,long *plHeight);
      HRESULT (WINAPI *GetName)(IAgentCharacter *This,BSTR *pbszName);
      HRESULT (WINAPI *GetDescription)(IAgentCharacter *This,BSTR *pbszDescription);
      HRESULT (WINAPI *GetTTSSpeed)(IAgentCharacter *This,long *pdwSpeed);
      HRESULT (WINAPI *GetTTSPitch)(IAgentCharacter *This,short *pwPitch);
      HRESULT (WINAPI *Activate)(IAgentCharacter *This,short sState);
      HRESULT (WINAPI *SetIdleOn)(IAgentCharacter *This,long bOn);
      HRESULT (WINAPI *GetIdleOn)(IAgentCharacter *This,long *pbOn);
      HRESULT (WINAPI *Prepare)(IAgentCharacter *This,long dwType,BSTR bszName,long bQueue,long *pdwReqID);
      HRESULT (WINAPI *Play)(IAgentCharacter *This,BSTR bszAnimation,long *pdwReqID);
      HRESULT (WINAPI *Stop)(IAgentCharacter *This,long dwReqID);
      HRESULT (WINAPI *StopAll)(IAgentCharacter *This,long lTypes);
      HRESULT (WINAPI *Wait)(IAgentCharacter *This,long dwReqID,long *pdwReqID);
      HRESULT (WINAPI *Interrupt)(IAgentCharacter *This,long dwReqID,long *pdwReqID);
      HRESULT (WINAPI *Show)(IAgentCharacter *This,long bFast,long *pdwReqID);
      HRESULT (WINAPI *Hide)(IAgentCharacter *This,long bFast,long *pdwReqID);
      HRESULT (WINAPI *Speak)(IAgentCharacter *This,BSTR bszText,BSTR bszUrl,long *pdwReqID);
      HRESULT (WINAPI *MoveTo)(IAgentCharacter *This,short x,short y,long lSpeed,long *pdwReqID);
      HRESULT (WINAPI *GestureAt)(IAgentCharacter *This,short x,short y,long *pdwReqID);
      HRESULT (WINAPI *GetMoveCause)(IAgentCharacter *This,long *pdwCause);
      HRESULT (WINAPI *GetVisibilityCause)(IAgentCharacter *This,long *pdwCause);
      HRESULT (WINAPI *HasOtherClients)(IAgentCharacter *This,long *plNumOtherClients);
      HRESULT (WINAPI *SetSoundEffectsOn)(IAgentCharacter *This,long bOn);
      HRESULT (WINAPI *GetSoundEffectsOn)(IAgentCharacter *This,long *pbOn);
      HRESULT (WINAPI *SetName)(IAgentCharacter *This,BSTR bszName);
      HRESULT (WINAPI *SetDescription)(IAgentCharacter *This,BSTR bszDescription);
      HRESULT (WINAPI *GetExtraData)(IAgentCharacter *This,BSTR *pbszExtraData);
    END_INTERFACE
  } IAgentCharacterVtbl;
  struct IAgentCharacter {
    CONST_VTBL struct IAgentCharacterVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCharacter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCharacter_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCharacter_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCharacter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCharacter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCharacter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCharacter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCharacter_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCharacter_SetPosition(This,lLeft,lTop) (This)->lpVtbl->SetPosition(This,lLeft,lTop)
#define IAgentCharacter_GetPosition(This,plLeft,plTop) (This)->lpVtbl->GetPosition(This,plLeft,plTop)
#define IAgentCharacter_SetSize(This,lWidth,lHeight) (This)->lpVtbl->SetSize(This,lWidth,lHeight)
#define IAgentCharacter_GetSize(This,plWidth,plHeight) (This)->lpVtbl->GetSize(This,plWidth,plHeight)
#define IAgentCharacter_GetName(This,pbszName) (This)->lpVtbl->GetName(This,pbszName)
#define IAgentCharacter_GetDescription(This,pbszDescription) (This)->lpVtbl->GetDescription(This,pbszDescription)
#define IAgentCharacter_GetTTSSpeed(This,pdwSpeed) (This)->lpVtbl->GetTTSSpeed(This,pdwSpeed)
#define IAgentCharacter_GetTTSPitch(This,pwPitch) (This)->lpVtbl->GetTTSPitch(This,pwPitch)
#define IAgentCharacter_Activate(This,sState) (This)->lpVtbl->Activate(This,sState)
#define IAgentCharacter_SetIdleOn(This,bOn) (This)->lpVtbl->SetIdleOn(This,bOn)
#define IAgentCharacter_GetIdleOn(This,pbOn) (This)->lpVtbl->GetIdleOn(This,pbOn)
#define IAgentCharacter_Prepare(This,dwType,bszName,bQueue,pdwReqID) (This)->lpVtbl->Prepare(This,dwType,bszName,bQueue,pdwReqID)
#define IAgentCharacter_Play(This,bszAnimation,pdwReqID) (This)->lpVtbl->Play(This,bszAnimation,pdwReqID)
#define IAgentCharacter_Stop(This,dwReqID) (This)->lpVtbl->Stop(This,dwReqID)
#define IAgentCharacter_StopAll(This,lTypes) (This)->lpVtbl->StopAll(This,lTypes)
#define IAgentCharacter_Wait(This,dwReqID,pdwReqID) (This)->lpVtbl->Wait(This,dwReqID,pdwReqID)
#define IAgentCharacter_Interrupt(This,dwReqID,pdwReqID) (This)->lpVtbl->Interrupt(This,dwReqID,pdwReqID)
#define IAgentCharacter_Show(This,bFast,pdwReqID) (This)->lpVtbl->Show(This,bFast,pdwReqID)
#define IAgentCharacter_Hide(This,bFast,pdwReqID) (This)->lpVtbl->Hide(This,bFast,pdwReqID)
#define IAgentCharacter_Speak(This,bszText,bszUrl,pdwReqID) (This)->lpVtbl->Speak(This,bszText,bszUrl,pdwReqID)
#define IAgentCharacter_MoveTo(This,x,y,lSpeed,pdwReqID) (This)->lpVtbl->MoveTo(This,x,y,lSpeed,pdwReqID)
#define IAgentCharacter_GestureAt(This,x,y,pdwReqID) (This)->lpVtbl->GestureAt(This,x,y,pdwReqID)
#define IAgentCharacter_GetMoveCause(This,pdwCause) (This)->lpVtbl->GetMoveCause(This,pdwCause)
#define IAgentCharacter_GetVisibilityCause(This,pdwCause) (This)->lpVtbl->GetVisibilityCause(This,pdwCause)
#define IAgentCharacter_HasOtherClients(This,plNumOtherClients) (This)->lpVtbl->HasOtherClients(This,plNumOtherClients)
#define IAgentCharacter_SetSoundEffectsOn(This,bOn) (This)->lpVtbl->SetSoundEffectsOn(This,bOn)
#define IAgentCharacter_GetSoundEffectsOn(This,pbOn) (This)->lpVtbl->GetSoundEffectsOn(This,pbOn)
#define IAgentCharacter_SetName(This,bszName) (This)->lpVtbl->SetName(This,bszName)
#define IAgentCharacter_SetDescription(This,bszDescription) (This)->lpVtbl->SetDescription(This,bszDescription)
#define IAgentCharacter_GetExtraData(This,pbszExtraData) (This)->lpVtbl->GetExtraData(This,pbszExtraData)
#endif
#endif
  HRESULT WINAPI IAgentCharacter_GetVisible_Proxy(IAgentCharacter *This,long *pbVisible);
  void __RPC_STUB IAgentCharacter_GetVisible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_SetPosition_Proxy(IAgentCharacter *This,long lLeft,long lTop);
  void __RPC_STUB IAgentCharacter_SetPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetPosition_Proxy(IAgentCharacter *This,long *plLeft,long *plTop);
  void __RPC_STUB IAgentCharacter_GetPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_SetSize_Proxy(IAgentCharacter *This,long lWidth,long lHeight);
  void __RPC_STUB IAgentCharacter_SetSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetSize_Proxy(IAgentCharacter *This,long *plWidth,long *plHeight);
  void __RPC_STUB IAgentCharacter_GetSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetName_Proxy(IAgentCharacter *This,BSTR *pbszName);
  void __RPC_STUB IAgentCharacter_GetName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetDescription_Proxy(IAgentCharacter *This,BSTR *pbszDescription);
  void __RPC_STUB IAgentCharacter_GetDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetTTSSpeed_Proxy(IAgentCharacter *This,long *pdwSpeed);
  void __RPC_STUB IAgentCharacter_GetTTSSpeed_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetTTSPitch_Proxy(IAgentCharacter *This,short *pwPitch);
  void __RPC_STUB IAgentCharacter_GetTTSPitch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Activate_Proxy(IAgentCharacter *This,short sState);
  void __RPC_STUB IAgentCharacter_Activate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_SetIdleOn_Proxy(IAgentCharacter *This,long bOn);
  void __RPC_STUB IAgentCharacter_SetIdleOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetIdleOn_Proxy(IAgentCharacter *This,long *pbOn);
  void __RPC_STUB IAgentCharacter_GetIdleOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Prepare_Proxy(IAgentCharacter *This,long dwType,BSTR bszName,long bQueue,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Prepare_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Play_Proxy(IAgentCharacter *This,BSTR bszAnimation,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Play_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Stop_Proxy(IAgentCharacter *This,long dwReqID);
  void __RPC_STUB IAgentCharacter_Stop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_StopAll_Proxy(IAgentCharacter *This,long lTypes);
  void __RPC_STUB IAgentCharacter_StopAll_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Wait_Proxy(IAgentCharacter *This,long dwReqID,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Wait_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Interrupt_Proxy(IAgentCharacter *This,long dwReqID,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Interrupt_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Show_Proxy(IAgentCharacter *This,long bFast,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Show_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Hide_Proxy(IAgentCharacter *This,long bFast,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Hide_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_Speak_Proxy(IAgentCharacter *This,BSTR bszText,BSTR bszUrl,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_Speak_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_MoveTo_Proxy(IAgentCharacter *This,short x,short y,long lSpeed,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_MoveTo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GestureAt_Proxy(IAgentCharacter *This,short x,short y,long *pdwReqID);
  void __RPC_STUB IAgentCharacter_GestureAt_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetMoveCause_Proxy(IAgentCharacter *This,long *pdwCause);
  void __RPC_STUB IAgentCharacter_GetMoveCause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetVisibilityCause_Proxy(IAgentCharacter *This,long *pdwCause);
  void __RPC_STUB IAgentCharacter_GetVisibilityCause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_HasOtherClients_Proxy(IAgentCharacter *This,long *plNumOtherClients);
  void __RPC_STUB IAgentCharacter_HasOtherClients_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_SetSoundEffectsOn_Proxy(IAgentCharacter *This,long bOn);
  void __RPC_STUB IAgentCharacter_SetSoundEffectsOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetSoundEffectsOn_Proxy(IAgentCharacter *This,long *pbOn);
  void __RPC_STUB IAgentCharacter_GetSoundEffectsOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_SetName_Proxy(IAgentCharacter *This,BSTR bszName);
  void __RPC_STUB IAgentCharacter_SetName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_SetDescription_Proxy(IAgentCharacter *This,BSTR bszDescription);
  void __RPC_STUB IAgentCharacter_SetDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacter_GetExtraData_Proxy(IAgentCharacter *This,BSTR *pbszExtraData);
  void __RPC_STUB IAgentCharacter_GetExtraData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCharacterEx_INTERFACE_DEFINED__
#define __IAgentCharacterEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCharacterEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCharacterEx : public IAgentCharacter {
  public:
    virtual HRESULT WINAPI ShowPopupMenu(short x,short y) = 0;
    virtual HRESULT WINAPI SetAutoPopupMenu(long bAutoPopupMenu) = 0;
    virtual HRESULT WINAPI GetAutoPopupMenu(long *pbAutoPopupMenu) = 0;
    virtual HRESULT WINAPI GetHelpFileName(BSTR *pbszName) = 0;
    virtual HRESULT WINAPI SetHelpFileName(BSTR bszName) = 0;
    virtual HRESULT WINAPI SetHelpModeOn(long bHelpModeOn) = 0;
    virtual HRESULT WINAPI GetHelpModeOn(long *pbHelpModeOn) = 0;
    virtual HRESULT WINAPI SetHelpContextID(long ulID) = 0;
    virtual HRESULT WINAPI GetHelpContextID(long *pulID) = 0;
    virtual HRESULT WINAPI GetActive(short *psState) = 0;
    virtual HRESULT WINAPI Listen(long bListen) = 0;
    virtual HRESULT WINAPI SetLanguageID(long langid) = 0;
    virtual HRESULT WINAPI GetLanguageID(long *plangid) = 0;
    virtual HRESULT WINAPI GetTTSModeID(BSTR *pbszModeID) = 0;
    virtual HRESULT WINAPI SetTTSModeID(BSTR bszModeID) = 0;
    virtual HRESULT WINAPI GetSRModeID(BSTR *pbszModeID) = 0;
    virtual HRESULT WINAPI SetSRModeID(BSTR bszModeID) = 0;
    virtual HRESULT WINAPI GetGUID(BSTR *pbszID) = 0;
    virtual HRESULT WINAPI GetOriginalSize(long *plWidth,long *plHeight) = 0;
    virtual HRESULT WINAPI Think(BSTR bszText,long *pdwReqID) = 0;
    virtual HRESULT WINAPI GetVersion(short *psMajor,short *psMinor) = 0;
    virtual HRESULT WINAPI GetAnimationNames(IUnknown **punkEnum) = 0;
    virtual HRESULT WINAPI GetSRStatus(long *plStatus) = 0;
  };
#else
  typedef struct IAgentCharacterExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCharacterEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCharacterEx *This);
      ULONG (WINAPI *Release)(IAgentCharacterEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentCharacterEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentCharacterEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentCharacterEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentCharacterEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *GetVisible)(IAgentCharacterEx *This,long *pbVisible);
      HRESULT (WINAPI *SetPosition)(IAgentCharacterEx *This,long lLeft,long lTop);
      HRESULT (WINAPI *GetPosition)(IAgentCharacterEx *This,long *plLeft,long *plTop);
      HRESULT (WINAPI *SetSize)(IAgentCharacterEx *This,long lWidth,long lHeight);
      HRESULT (WINAPI *GetSize)(IAgentCharacterEx *This,long *plWidth,long *plHeight);
      HRESULT (WINAPI *GetName)(IAgentCharacterEx *This,BSTR *pbszName);
      HRESULT (WINAPI *GetDescription)(IAgentCharacterEx *This,BSTR *pbszDescription);
      HRESULT (WINAPI *GetTTSSpeed)(IAgentCharacterEx *This,long *pdwSpeed);
      HRESULT (WINAPI *GetTTSPitch)(IAgentCharacterEx *This,short *pwPitch);
      HRESULT (WINAPI *Activate)(IAgentCharacterEx *This,short sState);
      HRESULT (WINAPI *SetIdleOn)(IAgentCharacterEx *This,long bOn);
      HRESULT (WINAPI *GetIdleOn)(IAgentCharacterEx *This,long *pbOn);
      HRESULT (WINAPI *Prepare)(IAgentCharacterEx *This,long dwType,BSTR bszName,long bQueue,long *pdwReqID);
      HRESULT (WINAPI *Play)(IAgentCharacterEx *This,BSTR bszAnimation,long *pdwReqID);
      HRESULT (WINAPI *Stop)(IAgentCharacterEx *This,long dwReqID);
      HRESULT (WINAPI *StopAll)(IAgentCharacterEx *This,long lTypes);
      HRESULT (WINAPI *Wait)(IAgentCharacterEx *This,long dwReqID,long *pdwReqID);
      HRESULT (WINAPI *Interrupt)(IAgentCharacterEx *This,long dwReqID,long *pdwReqID);
      HRESULT (WINAPI *Show)(IAgentCharacterEx *This,long bFast,long *pdwReqID);
      HRESULT (WINAPI *Hide)(IAgentCharacterEx *This,long bFast,long *pdwReqID);
      HRESULT (WINAPI *Speak)(IAgentCharacterEx *This,BSTR bszText,BSTR bszUrl,long *pdwReqID);
      HRESULT (WINAPI *MoveTo)(IAgentCharacterEx *This,short x,short y,long lSpeed,long *pdwReqID);
      HRESULT (WINAPI *GestureAt)(IAgentCharacterEx *This,short x,short y,long *pdwReqID);
      HRESULT (WINAPI *GetMoveCause)(IAgentCharacterEx *This,long *pdwCause);
      HRESULT (WINAPI *GetVisibilityCause)(IAgentCharacterEx *This,long *pdwCause);
      HRESULT (WINAPI *HasOtherClients)(IAgentCharacterEx *This,long *plNumOtherClients);
      HRESULT (WINAPI *SetSoundEffectsOn)(IAgentCharacterEx *This,long bOn);
      HRESULT (WINAPI *GetSoundEffectsOn)(IAgentCharacterEx *This,long *pbOn);
      HRESULT (WINAPI *SetName)(IAgentCharacterEx *This,BSTR bszName);
      HRESULT (WINAPI *SetDescription)(IAgentCharacterEx *This,BSTR bszDescription);
      HRESULT (WINAPI *GetExtraData)(IAgentCharacterEx *This,BSTR *pbszExtraData);
      HRESULT (WINAPI *ShowPopupMenu)(IAgentCharacterEx *This,short x,short y);
      HRESULT (WINAPI *SetAutoPopupMenu)(IAgentCharacterEx *This,long bAutoPopupMenu);
      HRESULT (WINAPI *GetAutoPopupMenu)(IAgentCharacterEx *This,long *pbAutoPopupMenu);
      HRESULT (WINAPI *GetHelpFileName)(IAgentCharacterEx *This,BSTR *pbszName);
      HRESULT (WINAPI *SetHelpFileName)(IAgentCharacterEx *This,BSTR bszName);
      HRESULT (WINAPI *SetHelpModeOn)(IAgentCharacterEx *This,long bHelpModeOn);
      HRESULT (WINAPI *GetHelpModeOn)(IAgentCharacterEx *This,long *pbHelpModeOn);
      HRESULT (WINAPI *SetHelpContextID)(IAgentCharacterEx *This,long ulID);
      HRESULT (WINAPI *GetHelpContextID)(IAgentCharacterEx *This,long *pulID);
      HRESULT (WINAPI *GetActive)(IAgentCharacterEx *This,short *psState);
      HRESULT (WINAPI *Listen)(IAgentCharacterEx *This,long bListen);
      HRESULT (WINAPI *SetLanguageID)(IAgentCharacterEx *This,long langid);
      HRESULT (WINAPI *GetLanguageID)(IAgentCharacterEx *This,long *plangid);
      HRESULT (WINAPI *GetTTSModeID)(IAgentCharacterEx *This,BSTR *pbszModeID);
      HRESULT (WINAPI *SetTTSModeID)(IAgentCharacterEx *This,BSTR bszModeID);
      HRESULT (WINAPI *GetSRModeID)(IAgentCharacterEx *This,BSTR *pbszModeID);
      HRESULT (WINAPI *SetSRModeID)(IAgentCharacterEx *This,BSTR bszModeID);
      HRESULT (WINAPI *GetGUID)(IAgentCharacterEx *This,BSTR *pbszID);
      HRESULT (WINAPI *GetOriginalSize)(IAgentCharacterEx *This,long *plWidth,long *plHeight);
      HRESULT (WINAPI *Think)(IAgentCharacterEx *This,BSTR bszText,long *pdwReqID);
      HRESULT (WINAPI *GetVersion)(IAgentCharacterEx *This,short *psMajor,short *psMinor);
      HRESULT (WINAPI *GetAnimationNames)(IAgentCharacterEx *This,IUnknown **punkEnum);
      HRESULT (WINAPI *GetSRStatus)(IAgentCharacterEx *This,long *plStatus);
    END_INTERFACE
  } IAgentCharacterExVtbl;
  struct IAgentCharacterEx {
    CONST_VTBL struct IAgentCharacterExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCharacterEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCharacterEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCharacterEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCharacterEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentCharacterEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentCharacterEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentCharacterEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentCharacterEx_GetVisible(This,pbVisible) (This)->lpVtbl->GetVisible(This,pbVisible)
#define IAgentCharacterEx_SetPosition(This,lLeft,lTop) (This)->lpVtbl->SetPosition(This,lLeft,lTop)
#define IAgentCharacterEx_GetPosition(This,plLeft,plTop) (This)->lpVtbl->GetPosition(This,plLeft,plTop)
#define IAgentCharacterEx_SetSize(This,lWidth,lHeight) (This)->lpVtbl->SetSize(This,lWidth,lHeight)
#define IAgentCharacterEx_GetSize(This,plWidth,plHeight) (This)->lpVtbl->GetSize(This,plWidth,plHeight)
#define IAgentCharacterEx_GetName(This,pbszName) (This)->lpVtbl->GetName(This,pbszName)
#define IAgentCharacterEx_GetDescription(This,pbszDescription) (This)->lpVtbl->GetDescription(This,pbszDescription)
#define IAgentCharacterEx_GetTTSSpeed(This,pdwSpeed) (This)->lpVtbl->GetTTSSpeed(This,pdwSpeed)
#define IAgentCharacterEx_GetTTSPitch(This,pwPitch) (This)->lpVtbl->GetTTSPitch(This,pwPitch)
#define IAgentCharacterEx_Activate(This,sState) (This)->lpVtbl->Activate(This,sState)
#define IAgentCharacterEx_SetIdleOn(This,bOn) (This)->lpVtbl->SetIdleOn(This,bOn)
#define IAgentCharacterEx_GetIdleOn(This,pbOn) (This)->lpVtbl->GetIdleOn(This,pbOn)
#define IAgentCharacterEx_Prepare(This,dwType,bszName,bQueue,pdwReqID) (This)->lpVtbl->Prepare(This,dwType,bszName,bQueue,pdwReqID)
#define IAgentCharacterEx_Play(This,bszAnimation,pdwReqID) (This)->lpVtbl->Play(This,bszAnimation,pdwReqID)
#define IAgentCharacterEx_Stop(This,dwReqID) (This)->lpVtbl->Stop(This,dwReqID)
#define IAgentCharacterEx_StopAll(This,lTypes) (This)->lpVtbl->StopAll(This,lTypes)
#define IAgentCharacterEx_Wait(This,dwReqID,pdwReqID) (This)->lpVtbl->Wait(This,dwReqID,pdwReqID)
#define IAgentCharacterEx_Interrupt(This,dwReqID,pdwReqID) (This)->lpVtbl->Interrupt(This,dwReqID,pdwReqID)
#define IAgentCharacterEx_Show(This,bFast,pdwReqID) (This)->lpVtbl->Show(This,bFast,pdwReqID)
#define IAgentCharacterEx_Hide(This,bFast,pdwReqID) (This)->lpVtbl->Hide(This,bFast,pdwReqID)
#define IAgentCharacterEx_Speak(This,bszText,bszUrl,pdwReqID) (This)->lpVtbl->Speak(This,bszText,bszUrl,pdwReqID)
#define IAgentCharacterEx_MoveTo(This,x,y,lSpeed,pdwReqID) (This)->lpVtbl->MoveTo(This,x,y,lSpeed,pdwReqID)
#define IAgentCharacterEx_GestureAt(This,x,y,pdwReqID) (This)->lpVtbl->GestureAt(This,x,y,pdwReqID)
#define IAgentCharacterEx_GetMoveCause(This,pdwCause) (This)->lpVtbl->GetMoveCause(This,pdwCause)
#define IAgentCharacterEx_GetVisibilityCause(This,pdwCause) (This)->lpVtbl->GetVisibilityCause(This,pdwCause)
#define IAgentCharacterEx_HasOtherClients(This,plNumOtherClients) (This)->lpVtbl->HasOtherClients(This,plNumOtherClients)
#define IAgentCharacterEx_SetSoundEffectsOn(This,bOn) (This)->lpVtbl->SetSoundEffectsOn(This,bOn)
#define IAgentCharacterEx_GetSoundEffectsOn(This,pbOn) (This)->lpVtbl->GetSoundEffectsOn(This,pbOn)
#define IAgentCharacterEx_SetName(This,bszName) (This)->lpVtbl->SetName(This,bszName)
#define IAgentCharacterEx_SetDescription(This,bszDescription) (This)->lpVtbl->SetDescription(This,bszDescription)
#define IAgentCharacterEx_GetExtraData(This,pbszExtraData) (This)->lpVtbl->GetExtraData(This,pbszExtraData)
#define IAgentCharacterEx_ShowPopupMenu(This,x,y) (This)->lpVtbl->ShowPopupMenu(This,x,y)
#define IAgentCharacterEx_SetAutoPopupMenu(This,bAutoPopupMenu) (This)->lpVtbl->SetAutoPopupMenu(This,bAutoPopupMenu)
#define IAgentCharacterEx_GetAutoPopupMenu(This,pbAutoPopupMenu) (This)->lpVtbl->GetAutoPopupMenu(This,pbAutoPopupMenu)
#define IAgentCharacterEx_GetHelpFileName(This,pbszName) (This)->lpVtbl->GetHelpFileName(This,pbszName)
#define IAgentCharacterEx_SetHelpFileName(This,bszName) (This)->lpVtbl->SetHelpFileName(This,bszName)
#define IAgentCharacterEx_SetHelpModeOn(This,bHelpModeOn) (This)->lpVtbl->SetHelpModeOn(This,bHelpModeOn)
#define IAgentCharacterEx_GetHelpModeOn(This,pbHelpModeOn) (This)->lpVtbl->GetHelpModeOn(This,pbHelpModeOn)
#define IAgentCharacterEx_SetHelpContextID(This,ulID) (This)->lpVtbl->SetHelpContextID(This,ulID)
#define IAgentCharacterEx_GetHelpContextID(This,pulID) (This)->lpVtbl->GetHelpContextID(This,pulID)
#define IAgentCharacterEx_GetActive(This,psState) (This)->lpVtbl->GetActive(This,psState)
#define IAgentCharacterEx_Listen(This,bListen) (This)->lpVtbl->Listen(This,bListen)
#define IAgentCharacterEx_SetLanguageID(This,langid) (This)->lpVtbl->SetLanguageID(This,langid)
#define IAgentCharacterEx_GetLanguageID(This,plangid) (This)->lpVtbl->GetLanguageID(This,plangid)
#define IAgentCharacterEx_GetTTSModeID(This,pbszModeID) (This)->lpVtbl->GetTTSModeID(This,pbszModeID)
#define IAgentCharacterEx_SetTTSModeID(This,bszModeID) (This)->lpVtbl->SetTTSModeID(This,bszModeID)
#define IAgentCharacterEx_GetSRModeID(This,pbszModeID) (This)->lpVtbl->GetSRModeID(This,pbszModeID)
#define IAgentCharacterEx_SetSRModeID(This,bszModeID) (This)->lpVtbl->SetSRModeID(This,bszModeID)
#define IAgentCharacterEx_GetGUID(This,pbszID) (This)->lpVtbl->GetGUID(This,pbszID)
#define IAgentCharacterEx_GetOriginalSize(This,plWidth,plHeight) (This)->lpVtbl->GetOriginalSize(This,plWidth,plHeight)
#define IAgentCharacterEx_Think(This,bszText,pdwReqID) (This)->lpVtbl->Think(This,bszText,pdwReqID)
#define IAgentCharacterEx_GetVersion(This,psMajor,psMinor) (This)->lpVtbl->GetVersion(This,psMajor,psMinor)
#define IAgentCharacterEx_GetAnimationNames(This,punkEnum) (This)->lpVtbl->GetAnimationNames(This,punkEnum)
#define IAgentCharacterEx_GetSRStatus(This,plStatus) (This)->lpVtbl->GetSRStatus(This,plStatus)
#endif
#endif
  HRESULT WINAPI IAgentCharacterEx_ShowPopupMenu_Proxy(IAgentCharacterEx *This,short x,short y);
  void __RPC_STUB IAgentCharacterEx_ShowPopupMenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetAutoPopupMenu_Proxy(IAgentCharacterEx *This,long bAutoPopupMenu);
  void __RPC_STUB IAgentCharacterEx_SetAutoPopupMenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetAutoPopupMenu_Proxy(IAgentCharacterEx *This,long *pbAutoPopupMenu);
  void __RPC_STUB IAgentCharacterEx_GetAutoPopupMenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetHelpFileName_Proxy(IAgentCharacterEx *This,BSTR *pbszName);
  void __RPC_STUB IAgentCharacterEx_GetHelpFileName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetHelpFileName_Proxy(IAgentCharacterEx *This,BSTR bszName);
  void __RPC_STUB IAgentCharacterEx_SetHelpFileName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetHelpModeOn_Proxy(IAgentCharacterEx *This,long bHelpModeOn);
  void __RPC_STUB IAgentCharacterEx_SetHelpModeOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetHelpModeOn_Proxy(IAgentCharacterEx *This,long *pbHelpModeOn);
  void __RPC_STUB IAgentCharacterEx_GetHelpModeOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetHelpContextID_Proxy(IAgentCharacterEx *This,long ulID);
  void __RPC_STUB IAgentCharacterEx_SetHelpContextID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetHelpContextID_Proxy(IAgentCharacterEx *This,long *pulID);
  void __RPC_STUB IAgentCharacterEx_GetHelpContextID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetActive_Proxy(IAgentCharacterEx *This,short *psState);
  void __RPC_STUB IAgentCharacterEx_GetActive_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_Listen_Proxy(IAgentCharacterEx *This,long bListen);
  void __RPC_STUB IAgentCharacterEx_Listen_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetLanguageID_Proxy(IAgentCharacterEx *This,long langid);
  void __RPC_STUB IAgentCharacterEx_SetLanguageID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetLanguageID_Proxy(IAgentCharacterEx *This,long *plangid);
  void __RPC_STUB IAgentCharacterEx_GetLanguageID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetTTSModeID_Proxy(IAgentCharacterEx *This,BSTR *pbszModeID);
  void __RPC_STUB IAgentCharacterEx_GetTTSModeID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetTTSModeID_Proxy(IAgentCharacterEx *This,BSTR bszModeID);
  void __RPC_STUB IAgentCharacterEx_SetTTSModeID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetSRModeID_Proxy(IAgentCharacterEx *This,BSTR *pbszModeID);
  void __RPC_STUB IAgentCharacterEx_GetSRModeID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_SetSRModeID_Proxy(IAgentCharacterEx *This,BSTR bszModeID);
  void __RPC_STUB IAgentCharacterEx_SetSRModeID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetGUID_Proxy(IAgentCharacterEx *This,BSTR *pbszID);
  void __RPC_STUB IAgentCharacterEx_GetGUID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetOriginalSize_Proxy(IAgentCharacterEx *This,long *plWidth,long *plHeight);
  void __RPC_STUB IAgentCharacterEx_GetOriginalSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_Think_Proxy(IAgentCharacterEx *This,BSTR bszText,long *pdwReqID);
  void __RPC_STUB IAgentCharacterEx_Think_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetVersion_Proxy(IAgentCharacterEx *This,short *psMajor,short *psMinor);
  void __RPC_STUB IAgentCharacterEx_GetVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetAnimationNames_Proxy(IAgentCharacterEx *This,IUnknown **punkEnum);
  void __RPC_STUB IAgentCharacterEx_GetAnimationNames_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentCharacterEx_GetSRStatus_Proxy(IAgentCharacterEx *This,long *plStatus);
  void __RPC_STUB IAgentCharacterEx_GetSRStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgent_INTERFACE_DEFINED__
#define __IAgent_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgent;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgent : public IDispatch {
  public:
    virtual HRESULT WINAPI Load(VARIANT vLoadKey,long *pdwCharID,long *pdwReqID) = 0;
    virtual HRESULT WINAPI Unload(long dwCharID) = 0;
    virtual HRESULT WINAPI Register(IUnknown *punkNotifySink,long *pdwSinkID) = 0;
    virtual HRESULT WINAPI Unregister(long dwSinkID) = 0;
    virtual HRESULT WINAPI GetCharacter(long dwCharID,IDispatch **ppunkCharacter) = 0;
    virtual HRESULT WINAPI GetSuspended(long *pbSuspended) = 0;
  };
#else
  typedef struct IAgentVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgent *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgent *This);
      ULONG (WINAPI *Release)(IAgent *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgent *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *Load)(IAgent *This,VARIANT vLoadKey,long *pdwCharID,long *pdwReqID);
      HRESULT (WINAPI *Unload)(IAgent *This,long dwCharID);
      HRESULT (WINAPI *Register)(IAgent *This,IUnknown *punkNotifySink,long *pdwSinkID);
      HRESULT (WINAPI *Unregister)(IAgent *This,long dwSinkID);
      HRESULT (WINAPI *GetCharacter)(IAgent *This,long dwCharID,IDispatch **ppunkCharacter);
      HRESULT (WINAPI *GetSuspended)(IAgent *This,long *pbSuspended);
    END_INTERFACE
  } IAgentVtbl;
  struct IAgent {
    CONST_VTBL struct IAgentVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgent_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgent_Release(This) (This)->lpVtbl->Release(This)
#define IAgent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgent_Load(This,vLoadKey,pdwCharID,pdwReqID) (This)->lpVtbl->Load(This,vLoadKey,pdwCharID,pdwReqID)
#define IAgent_Unload(This,dwCharID) (This)->lpVtbl->Unload(This,dwCharID)
#define IAgent_Register(This,punkNotifySink,pdwSinkID) (This)->lpVtbl->Register(This,punkNotifySink,pdwSinkID)
#define IAgent_Unregister(This,dwSinkID) (This)->lpVtbl->Unregister(This,dwSinkID)
#define IAgent_GetCharacter(This,dwCharID,ppunkCharacter) (This)->lpVtbl->GetCharacter(This,dwCharID,ppunkCharacter)
#define IAgent_GetSuspended(This,pbSuspended) (This)->lpVtbl->GetSuspended(This,pbSuspended)
#endif
#endif
  HRESULT WINAPI IAgent_Load_Proxy(IAgent *This,VARIANT vLoadKey,long *pdwCharID,long *pdwReqID);
  void __RPC_STUB IAgent_Load_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgent_Unload_Proxy(IAgent *This,long dwCharID);
  void __RPC_STUB IAgent_Unload_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgent_Register_Proxy(IAgent *This,IUnknown *punkNotifySink,long *pdwSinkID);
  void __RPC_STUB IAgent_Register_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgent_Unregister_Proxy(IAgent *This,long dwSinkID);
  void __RPC_STUB IAgent_Unregister_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgent_GetCharacter_Proxy(IAgent *This,long dwCharID,IDispatch **ppunkCharacter);
  void __RPC_STUB IAgent_GetCharacter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgent_GetSuspended_Proxy(IAgent *This,long *pbSuspended);
  void __RPC_STUB IAgent_GetSuspended_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentEx_INTERFACE_DEFINED__
#define __IAgentEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentEx : public IAgent {
  public:
    virtual HRESULT WINAPI GetCharacterEx(long dwCharID,IAgentCharacterEx **ppCharacterEx) = 0;
    virtual HRESULT WINAPI GetVersion(short *psMajor,short *psMinor) = 0;
    virtual HRESULT WINAPI ShowDefaultCharacterProperties(short x,short y,long bUseDefaultPosition) = 0;
  };
#else
  typedef struct IAgentExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentEx *This);
      ULONG (WINAPI *Release)(IAgentEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *Load)(IAgentEx *This,VARIANT vLoadKey,long *pdwCharID,long *pdwReqID);
      HRESULT (WINAPI *Unload)(IAgentEx *This,long dwCharID);
      HRESULT (WINAPI *Register)(IAgentEx *This,IUnknown *punkNotifySink,long *pdwSinkID);
      HRESULT (WINAPI *Unregister)(IAgentEx *This,long dwSinkID);
      HRESULT (WINAPI *GetCharacter)(IAgentEx *This,long dwCharID,IDispatch **ppunkCharacter);
      HRESULT (WINAPI *GetSuspended)(IAgentEx *This,long *pbSuspended);
      HRESULT (WINAPI *GetCharacterEx)(IAgentEx *This,long dwCharID,IAgentCharacterEx **ppCharacterEx);
      HRESULT (WINAPI *GetVersion)(IAgentEx *This,short *psMajor,short *psMinor);
      HRESULT (WINAPI *ShowDefaultCharacterProperties)(IAgentEx *This,short x,short y,long bUseDefaultPosition);
    END_INTERFACE
  } IAgentExVtbl;
  struct IAgentEx {
    CONST_VTBL struct IAgentExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentEx_Load(This,vLoadKey,pdwCharID,pdwReqID) (This)->lpVtbl->Load(This,vLoadKey,pdwCharID,pdwReqID)
#define IAgentEx_Unload(This,dwCharID) (This)->lpVtbl->Unload(This,dwCharID)
#define IAgentEx_Register(This,punkNotifySink,pdwSinkID) (This)->lpVtbl->Register(This,punkNotifySink,pdwSinkID)
#define IAgentEx_Unregister(This,dwSinkID) (This)->lpVtbl->Unregister(This,dwSinkID)
#define IAgentEx_GetCharacter(This,dwCharID,ppunkCharacter) (This)->lpVtbl->GetCharacter(This,dwCharID,ppunkCharacter)
#define IAgentEx_GetSuspended(This,pbSuspended) (This)->lpVtbl->GetSuspended(This,pbSuspended)
#define IAgentEx_GetCharacterEx(This,dwCharID,ppCharacterEx) (This)->lpVtbl->GetCharacterEx(This,dwCharID,ppCharacterEx)
#define IAgentEx_GetVersion(This,psMajor,psMinor) (This)->lpVtbl->GetVersion(This,psMajor,psMinor)
#define IAgentEx_ShowDefaultCharacterProperties(This,x,y,bUseDefaultPosition) (This)->lpVtbl->ShowDefaultCharacterProperties(This,x,y,bUseDefaultPosition)
#endif
#endif
  HRESULT WINAPI IAgentEx_GetCharacterEx_Proxy(IAgentEx *This,long dwCharID,IAgentCharacterEx **ppCharacterEx);
  void __RPC_STUB IAgentEx_GetCharacterEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentEx_GetVersion_Proxy(IAgentEx *This,short *psMajor,short *psMinor);
  void __RPC_STUB IAgentEx_GetVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentEx_ShowDefaultCharacterProperties_Proxy(IAgentEx *This,short x,short y,long bUseDefaultPosition);
  void __RPC_STUB IAgentEx_ShowDefaultCharacterProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentNotifySink_INTERFACE_DEFINED__
#define __IAgentNotifySink_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentNotifySink;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentNotifySink : public IDispatch {
  public:
    virtual HRESULT WINAPI Command(long dwCommandID,IUnknown *punkUserInput) = 0;
    virtual HRESULT WINAPI ActivateInputState(long dwCharID,long bActivated) = 0;
    virtual HRESULT WINAPI Restart(void) = 0;
    virtual HRESULT WINAPI Shutdown(void) = 0;
    virtual HRESULT WINAPI VisibleState(long dwCharID,long bVisible,long dwCause) = 0;
    virtual HRESULT WINAPI Click(long dwCharID,short fwKeys,long x,long y) = 0;
    virtual HRESULT WINAPI DblClick(long dwCharID,short fwKeys,long x,long y) = 0;
    virtual HRESULT WINAPI DragStart(long dwCharID,short fwKeys,long x,long y) = 0;
    virtual HRESULT WINAPI DragComplete(long dwCharID,short fwKeys,long x,long y) = 0;
    virtual HRESULT WINAPI RequestStart(long dwRequestID) = 0;
    virtual HRESULT WINAPI RequestComplete(long dwRequestID,long hrStatus) = 0;
    virtual HRESULT WINAPI BookMark(long dwBookMarkID) = 0;
    virtual HRESULT WINAPI Idle(long dwCharID,long bStart) = 0;
    virtual HRESULT WINAPI Move(long dwCharID,long x,long y,long dwCause) = 0;
    virtual HRESULT WINAPI Size(long dwCharID,long lWidth,long lHeight) = 0;
    virtual HRESULT WINAPI BalloonVisibleState(long dwCharID,long bVisible) = 0;
  };
#else
  typedef struct IAgentNotifySinkVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentNotifySink *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentNotifySink *This);
      ULONG (WINAPI *Release)(IAgentNotifySink *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentNotifySink *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentNotifySink *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentNotifySink *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentNotifySink *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *Command)(IAgentNotifySink *This,long dwCommandID,IUnknown *punkUserInput);
      HRESULT (WINAPI *ActivateInputState)(IAgentNotifySink *This,long dwCharID,long bActivated);
      HRESULT (WINAPI *Restart)(IAgentNotifySink *This);
      HRESULT (WINAPI *Shutdown)(IAgentNotifySink *This);
      HRESULT (WINAPI *VisibleState)(IAgentNotifySink *This,long dwCharID,long bVisible,long dwCause);
      HRESULT (WINAPI *Click)(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *DblClick)(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *DragStart)(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *DragComplete)(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *RequestStart)(IAgentNotifySink *This,long dwRequestID);
      HRESULT (WINAPI *RequestComplete)(IAgentNotifySink *This,long dwRequestID,long hrStatus);
      HRESULT (WINAPI *BookMark)(IAgentNotifySink *This,long dwBookMarkID);
      HRESULT (WINAPI *Idle)(IAgentNotifySink *This,long dwCharID,long bStart);
      HRESULT (WINAPI *Move)(IAgentNotifySink *This,long dwCharID,long x,long y,long dwCause);
      HRESULT (WINAPI *Size)(IAgentNotifySink *This,long dwCharID,long lWidth,long lHeight);
      HRESULT (WINAPI *BalloonVisibleState)(IAgentNotifySink *This,long dwCharID,long bVisible);
    END_INTERFACE
  } IAgentNotifySinkVtbl;
  struct IAgentNotifySink {
    CONST_VTBL struct IAgentNotifySinkVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentNotifySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentNotifySink_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentNotifySink_Release(This) (This)->lpVtbl->Release(This)
#define IAgentNotifySink_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentNotifySink_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentNotifySink_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentNotifySink_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentNotifySink_Command(This,dwCommandID,punkUserInput) (This)->lpVtbl->Command(This,dwCommandID,punkUserInput)
#define IAgentNotifySink_ActivateInputState(This,dwCharID,bActivated) (This)->lpVtbl->ActivateInputState(This,dwCharID,bActivated)
#define IAgentNotifySink_Restart(This) (This)->lpVtbl->Restart(This)
#define IAgentNotifySink_Shutdown(This) (This)->lpVtbl->Shutdown(This)
#define IAgentNotifySink_VisibleState(This,dwCharID,bVisible,dwCause) (This)->lpVtbl->VisibleState(This,dwCharID,bVisible,dwCause)
#define IAgentNotifySink_Click(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->Click(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySink_DblClick(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->DblClick(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySink_DragStart(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->DragStart(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySink_DragComplete(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->DragComplete(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySink_RequestStart(This,dwRequestID) (This)->lpVtbl->RequestStart(This,dwRequestID)
#define IAgentNotifySink_RequestComplete(This,dwRequestID,hrStatus) (This)->lpVtbl->RequestComplete(This,dwRequestID,hrStatus)
#define IAgentNotifySink_BookMark(This,dwBookMarkID) (This)->lpVtbl->BookMark(This,dwBookMarkID)
#define IAgentNotifySink_Idle(This,dwCharID,bStart) (This)->lpVtbl->Idle(This,dwCharID,bStart)
#define IAgentNotifySink_Move(This,dwCharID,x,y,dwCause) (This)->lpVtbl->Move(This,dwCharID,x,y,dwCause)
#define IAgentNotifySink_Size(This,dwCharID,lWidth,lHeight) (This)->lpVtbl->Size(This,dwCharID,lWidth,lHeight)
#define IAgentNotifySink_BalloonVisibleState(This,dwCharID,bVisible) (This)->lpVtbl->BalloonVisibleState(This,dwCharID,bVisible)
#endif
#endif
  HRESULT WINAPI IAgentNotifySink_Command_Proxy(IAgentNotifySink *This,long dwCommandID,IUnknown *punkUserInput);
  void __RPC_STUB IAgentNotifySink_Command_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_ActivateInputState_Proxy(IAgentNotifySink *This,long dwCharID,long bActivated);
  void __RPC_STUB IAgentNotifySink_ActivateInputState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_Restart_Proxy(IAgentNotifySink *This);
  void __RPC_STUB IAgentNotifySink_Restart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_Shutdown_Proxy(IAgentNotifySink *This);
  void __RPC_STUB IAgentNotifySink_Shutdown_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_VisibleState_Proxy(IAgentNotifySink *This,long dwCharID,long bVisible,long dwCause);
  void __RPC_STUB IAgentNotifySink_VisibleState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_Click_Proxy(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
  void __RPC_STUB IAgentNotifySink_Click_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_DblClick_Proxy(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
  void __RPC_STUB IAgentNotifySink_DblClick_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_DragStart_Proxy(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
  void __RPC_STUB IAgentNotifySink_DragStart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_DragComplete_Proxy(IAgentNotifySink *This,long dwCharID,short fwKeys,long x,long y);
  void __RPC_STUB IAgentNotifySink_DragComplete_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_RequestStart_Proxy(IAgentNotifySink *This,long dwRequestID);
  void __RPC_STUB IAgentNotifySink_RequestStart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_RequestComplete_Proxy(IAgentNotifySink *This,long dwRequestID,long hrStatus);
  void __RPC_STUB IAgentNotifySink_RequestComplete_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_BookMark_Proxy(IAgentNotifySink *This,long dwBookMarkID);
  void __RPC_STUB IAgentNotifySink_BookMark_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_Idle_Proxy(IAgentNotifySink *This,long dwCharID,long bStart);
  void __RPC_STUB IAgentNotifySink_Idle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_Move_Proxy(IAgentNotifySink *This,long dwCharID,long x,long y,long dwCause);
  void __RPC_STUB IAgentNotifySink_Move_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_Size_Proxy(IAgentNotifySink *This,long dwCharID,long lWidth,long lHeight);
  void __RPC_STUB IAgentNotifySink_Size_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySink_BalloonVisibleState_Proxy(IAgentNotifySink *This,long dwCharID,long bVisible);
  void __RPC_STUB IAgentNotifySink_BalloonVisibleState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentNotifySinkEx_INTERFACE_DEFINED__
#define __IAgentNotifySinkEx_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentNotifySinkEx;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentNotifySinkEx : public IAgentNotifySink {
  public:
    virtual HRESULT WINAPI HelpComplete(long dwCharID,long dwCommandID,long dwCause) = 0;
    virtual HRESULT WINAPI ListeningState(long dwCharID,long bListening,long dwCause) = 0;
    virtual HRESULT WINAPI DefaultCharacterChange(BSTR bszGUID) = 0;
    virtual HRESULT WINAPI AgentPropertyChange(void) = 0;
    virtual HRESULT WINAPI ActiveClientChange(long dwCharID,long lStatus) = 0;
  };
#else
  typedef struct IAgentNotifySinkExVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentNotifySinkEx *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentNotifySinkEx *This);
      ULONG (WINAPI *Release)(IAgentNotifySinkEx *This);
      HRESULT (WINAPI *GetTypeInfoCount)(IAgentNotifySinkEx *This,UINT *pctinfo);
      HRESULT (WINAPI *GetTypeInfo)(IAgentNotifySinkEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
      HRESULT (WINAPI *GetIDsOfNames)(IAgentNotifySinkEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
      HRESULT (WINAPI *Invoke)(IAgentNotifySinkEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
      HRESULT (WINAPI *Command)(IAgentNotifySinkEx *This,long dwCommandID,IUnknown *punkUserInput);
      HRESULT (WINAPI *ActivateInputState)(IAgentNotifySinkEx *This,long dwCharID,long bActivated);
      HRESULT (WINAPI *Restart)(IAgentNotifySinkEx *This);
      HRESULT (WINAPI *Shutdown)(IAgentNotifySinkEx *This);
      HRESULT (WINAPI *VisibleState)(IAgentNotifySinkEx *This,long dwCharID,long bVisible,long dwCause);
      HRESULT (WINAPI *Click)(IAgentNotifySinkEx *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *DblClick)(IAgentNotifySinkEx *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *DragStart)(IAgentNotifySinkEx *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *DragComplete)(IAgentNotifySinkEx *This,long dwCharID,short fwKeys,long x,long y);
      HRESULT (WINAPI *RequestStart)(IAgentNotifySinkEx *This,long dwRequestID);
      HRESULT (WINAPI *RequestComplete)(IAgentNotifySinkEx *This,long dwRequestID,long hrStatus);
      HRESULT (WINAPI *BookMark)(IAgentNotifySinkEx *This,long dwBookMarkID);
      HRESULT (WINAPI *Idle)(IAgentNotifySinkEx *This,long dwCharID,long bStart);
      HRESULT (WINAPI *Move)(IAgentNotifySinkEx *This,long dwCharID,long x,long y,long dwCause);
      HRESULT (WINAPI *Size)(IAgentNotifySinkEx *This,long dwCharID,long lWidth,long lHeight);
      HRESULT (WINAPI *BalloonVisibleState)(IAgentNotifySinkEx *This,long dwCharID,long bVisible);
      HRESULT (WINAPI *HelpComplete)(IAgentNotifySinkEx *This,long dwCharID,long dwCommandID,long dwCause);
      HRESULT (WINAPI *ListeningState)(IAgentNotifySinkEx *This,long dwCharID,long bListening,long dwCause);
      HRESULT (WINAPI *DefaultCharacterChange)(IAgentNotifySinkEx *This,BSTR bszGUID);
      HRESULT (WINAPI *AgentPropertyChange)(IAgentNotifySinkEx *This);
      HRESULT (WINAPI *ActiveClientChange)(IAgentNotifySinkEx *This,long dwCharID,long lStatus);
    END_INTERFACE
  } IAgentNotifySinkExVtbl;
  struct IAgentNotifySinkEx {
    CONST_VTBL struct IAgentNotifySinkExVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentNotifySinkEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentNotifySinkEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentNotifySinkEx_Release(This) (This)->lpVtbl->Release(This)
#define IAgentNotifySinkEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IAgentNotifySinkEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IAgentNotifySinkEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IAgentNotifySinkEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IAgentNotifySinkEx_Command(This,dwCommandID,punkUserInput) (This)->lpVtbl->Command(This,dwCommandID,punkUserInput)
#define IAgentNotifySinkEx_ActivateInputState(This,dwCharID,bActivated) (This)->lpVtbl->ActivateInputState(This,dwCharID,bActivated)
#define IAgentNotifySinkEx_Restart(This) (This)->lpVtbl->Restart(This)
#define IAgentNotifySinkEx_Shutdown(This) (This)->lpVtbl->Shutdown(This)
#define IAgentNotifySinkEx_VisibleState(This,dwCharID,bVisible,dwCause) (This)->lpVtbl->VisibleState(This,dwCharID,bVisible,dwCause)
#define IAgentNotifySinkEx_Click(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->Click(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySinkEx_DblClick(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->DblClick(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySinkEx_DragStart(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->DragStart(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySinkEx_DragComplete(This,dwCharID,fwKeys,x,y) (This)->lpVtbl->DragComplete(This,dwCharID,fwKeys,x,y)
#define IAgentNotifySinkEx_RequestStart(This,dwRequestID) (This)->lpVtbl->RequestStart(This,dwRequestID)
#define IAgentNotifySinkEx_RequestComplete(This,dwRequestID,hrStatus) (This)->lpVtbl->RequestComplete(This,dwRequestID,hrStatus)
#define IAgentNotifySinkEx_BookMark(This,dwBookMarkID) (This)->lpVtbl->BookMark(This,dwBookMarkID)
#define IAgentNotifySinkEx_Idle(This,dwCharID,bStart) (This)->lpVtbl->Idle(This,dwCharID,bStart)
#define IAgentNotifySinkEx_Move(This,dwCharID,x,y,dwCause) (This)->lpVtbl->Move(This,dwCharID,x,y,dwCause)
#define IAgentNotifySinkEx_Size(This,dwCharID,lWidth,lHeight) (This)->lpVtbl->Size(This,dwCharID,lWidth,lHeight)
#define IAgentNotifySinkEx_BalloonVisibleState(This,dwCharID,bVisible) (This)->lpVtbl->BalloonVisibleState(This,dwCharID,bVisible)
#define IAgentNotifySinkEx_HelpComplete(This,dwCharID,dwCommandID,dwCause) (This)->lpVtbl->HelpComplete(This,dwCharID,dwCommandID,dwCause)
#define IAgentNotifySinkEx_ListeningState(This,dwCharID,bListening,dwCause) (This)->lpVtbl->ListeningState(This,dwCharID,bListening,dwCause)
#define IAgentNotifySinkEx_DefaultCharacterChange(This,bszGUID) (This)->lpVtbl->DefaultCharacterChange(This,bszGUID)
#define IAgentNotifySinkEx_AgentPropertyChange(This) (This)->lpVtbl->AgentPropertyChange(This)
#define IAgentNotifySinkEx_ActiveClientChange(This,dwCharID,lStatus) (This)->lpVtbl->ActiveClientChange(This,dwCharID,lStatus)
#endif
#endif
  HRESULT WINAPI IAgentNotifySinkEx_HelpComplete_Proxy(IAgentNotifySinkEx *This,long dwCharID,long dwCommandID,long dwCause);
  void __RPC_STUB IAgentNotifySinkEx_HelpComplete_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySinkEx_ListeningState_Proxy(IAgentNotifySinkEx *This,long dwCharID,long bListening,long dwCause);
  void __RPC_STUB IAgentNotifySinkEx_ListeningState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySinkEx_DefaultCharacterChange_Proxy(IAgentNotifySinkEx *This,BSTR bszGUID);
  void __RPC_STUB IAgentNotifySinkEx_DefaultCharacterChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySinkEx_AgentPropertyChange_Proxy(IAgentNotifySinkEx *This);
  void __RPC_STUB IAgentNotifySinkEx_AgentPropertyChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentNotifySinkEx_ActiveClientChange_Proxy(IAgentNotifySinkEx *This,long dwCharID,long lStatus);
  void __RPC_STUB IAgentNotifySinkEx_ActiveClientChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentPrivateNotifySink_INTERFACE_DEFINED__
#define __IAgentPrivateNotifySink_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentPrivateNotifySink;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentPrivateNotifySink : public IUnknown {
  public:
    virtual HRESULT WINAPI ReleaseAll(void) = 0;
    virtual HRESULT WINAPI ReleaseOne(void *pnNotify) = 0;
    virtual HRESULT WINAPI GetClientID(DWORD *pdwClientID) = 0;
  };
#else
  typedef struct IAgentPrivateNotifySinkVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentPrivateNotifySink *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentPrivateNotifySink *This);
      ULONG (WINAPI *Release)(IAgentPrivateNotifySink *This);
      HRESULT (WINAPI *ReleaseAll)(IAgentPrivateNotifySink *This);
      HRESULT (WINAPI *ReleaseOne)(IAgentPrivateNotifySink *This,void *pnNotify);
      HRESULT (WINAPI *GetClientID)(IAgentPrivateNotifySink *This,DWORD *pdwClientID);
    END_INTERFACE
  } IAgentPrivateNotifySinkVtbl;
  struct IAgentPrivateNotifySink {
    CONST_VTBL struct IAgentPrivateNotifySinkVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentPrivateNotifySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentPrivateNotifySink_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentPrivateNotifySink_Release(This) (This)->lpVtbl->Release(This)
#define IAgentPrivateNotifySink_ReleaseAll(This) (This)->lpVtbl->ReleaseAll(This)
#define IAgentPrivateNotifySink_ReleaseOne(This,pnNotify) (This)->lpVtbl->ReleaseOne(This,pnNotify)
#define IAgentPrivateNotifySink_GetClientID(This,pdwClientID) (This)->lpVtbl->GetClientID(This,pdwClientID)
#endif
#endif
  HRESULT WINAPI IAgentPrivateNotifySink_ReleaseAll_Proxy(IAgentPrivateNotifySink *This);
  void __RPC_STUB IAgentPrivateNotifySink_ReleaseAll_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPrivateNotifySink_ReleaseOne_Proxy(IAgentPrivateNotifySink *This,void *pnNotify);
  void __RPC_STUB IAgentPrivateNotifySink_ReleaseOne_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  HRESULT WINAPI IAgentPrivateNotifySink_GetClientID_Proxy(IAgentPrivateNotifySink *This,DWORD *pdwClientID);
  void __RPC_STUB IAgentPrivateNotifySink_GetClientID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentCustomMarshalMaker_INTERFACE_DEFINED__
#define __IAgentCustomMarshalMaker_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentCustomMarshalMaker;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentCustomMarshalMaker : public IUnknown {
  public:
    virtual HRESULT WINAPI Create(IUnknown *pSink,REFIID riidSink,IUnknown **pMarshaledSink) = 0;

  };
#else
  typedef struct IAgentCustomMarshalMakerVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentCustomMarshalMaker *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentCustomMarshalMaker *This);
      ULONG (WINAPI *Release)(IAgentCustomMarshalMaker *This);
      HRESULT (WINAPI *Create)(IAgentCustomMarshalMaker *This,IUnknown *pSink,REFIID riidSink,IUnknown **pMarshaledSink);
    END_INTERFACE
  } IAgentCustomMarshalMakerVtbl;
  struct IAgentCustomMarshalMaker {
    CONST_VTBL struct IAgentCustomMarshalMakerVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentCustomMarshalMaker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentCustomMarshalMaker_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentCustomMarshalMaker_Release(This) (This)->lpVtbl->Release(This)
#define IAgentCustomMarshalMaker_Create(This,pSink,riidSink,pMarshaledSink) (This)->lpVtbl->Create(This,pSink,riidSink,pMarshaledSink)
#endif
#endif
  HRESULT WINAPI IAgentCustomMarshalMaker_Create_Proxy(IAgentCustomMarshalMaker *This,IUnknown *pSink,REFIID riidSink,IUnknown **pMarshaledSink);
  void __RPC_STUB IAgentCustomMarshalMaker_Create_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#ifndef __IAgentClientStatus_INTERFACE_DEFINED__
#define __IAgentClientStatus_INTERFACE_DEFINED__
  EXTERN_C const IID IID_IAgentClientStatus;
#if defined(__cplusplus) && !defined(CINTERFACE)
  struct IAgentClientStatus : public IUnknown {
  public:
    virtual HRESULT WINAPI Ping(void) = 0;
  };
#else
  typedef struct IAgentClientStatusVtbl {
    BEGIN_INTERFACE
      HRESULT (WINAPI *QueryInterface)(IAgentClientStatus *This,REFIID riid,void **ppvObject);
      ULONG (WINAPI *AddRef)(IAgentClientStatus *This);
      ULONG (WINAPI *Release)(IAgentClientStatus *This);
      HRESULT (WINAPI *Ping)(IAgentClientStatus *This);
    END_INTERFACE
  } IAgentClientStatusVtbl;
  struct IAgentClientStatus {
    CONST_VTBL struct IAgentClientStatusVtbl *lpVtbl;
  };
#ifdef COBJMACROS
#define IAgentClientStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAgentClientStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAgentClientStatus_Release(This) (This)->lpVtbl->Release(This)
#define IAgentClientStatus_Ping(This) (This)->lpVtbl->Ping(This)
#endif
#endif
  HRESULT WINAPI IAgentClientStatus_Ping_Proxy(IAgentClientStatus *This);
  void __RPC_STUB IAgentClientStatus_Ping_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif

#define AGENT_VERSION_MAJOR (2)
#define AGENT_VERSION_MINOR (0)

  extern RPC_IF_HANDLE __MIDL_itf_AgentServer_0229_v0_0_c_ifspec;
  extern RPC_IF_HANDLE __MIDL_itf_AgentServer_0229_v0_0_s_ifspec;

#ifndef __AgentServerObjects_LIBRARY_DEFINED__
#define __AgentServerObjects_LIBRARY_DEFINED__

  EXTERN_C const IID LIBID_AgentServerObjects;
  EXTERN_C const CLSID CLSID_AgentServer;

#ifdef __cplusplus
  class AgentServer;
#endif
#endif

  unsigned long __RPC_API BSTR_UserSize(unsigned long *,unsigned long,BSTR *);
  unsigned char *__RPC_API BSTR_UserMarshal(unsigned long *,unsigned char *,BSTR *);
  unsigned char *__RPC_API BSTR_UserUnmarshal(unsigned long *,unsigned char *,BSTR *);
  void __RPC_API BSTR_UserFree(unsigned long *,BSTR *);
  unsigned long __RPC_API VARIANT_UserSize(unsigned long *,unsigned long,VARIANT *);
  unsigned char *__RPC_API VARIANT_UserMarshal(unsigned long *,unsigned char *,VARIANT *);
  unsigned char *__RPC_API VARIANT_UserUnmarshal(unsigned long *,unsigned char *,VARIANT *);
  void __RPC_API VARIANT_UserFree(unsigned long *,VARIANT *);

#ifdef __cplusplus
}
#endif
#endif