BooksDAL_p.c
上传用户:weisheen
上传日期:2022-07-09
资源大小:19390k
文件大小:15k
源码类别:

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. /* this ALWAYS GENERATED file contains the proxy stub code */
  2. /* File created by MIDL compiler version 5.01.0164 */
  3. /* at Tue Mar 02 11:48:13 2010
  4.  */
  5. /* Compiler settings for D:VCday15BooksDALBooksDAL.idl:
  6.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  7.     error checks: allocation ref bounds_check enum stub_data 
  8. */
  9. //@@MIDL_FILE_HEADING(  )
  10. #define USE_STUBLESS_PROXY
  11. /* verify that the <rpcproxy.h> version is high enough to compile this file*/
  12. #ifndef __REDQ_RPCPROXY_H_VERSION__
  13. #define __REQUIRED_RPCPROXY_H_VERSION__ 440
  14. #endif
  15. #include "rpcproxy.h"
  16. #ifndef __RPCPROXY_H_VERSION__
  17. #error this stub requires an updated version of <rpcproxy.h>
  18. #endif // __RPCPROXY_H_VERSION__
  19. #include "BooksDAL.h"
  20. #define TYPE_FORMAT_STRING_SIZE   71                                
  21. #define PROC_FORMAT_STRING_SIZE   165                               
  22. typedef struct _MIDL_TYPE_FORMAT_STRING
  23.     {
  24.     short          Pad;
  25.     unsigned char  Format[ TYPE_FORMAT_STRING_SIZE ];
  26.     } MIDL_TYPE_FORMAT_STRING;
  27. typedef struct _MIDL_PROC_FORMAT_STRING
  28.     {
  29.     short          Pad;
  30.     unsigned char  Format[ PROC_FORMAT_STRING_SIZE ];
  31.     } MIDL_PROC_FORMAT_STRING;
  32. extern const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
  33. extern const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
  34. /* Standard interface: __MIDL_itf_BooksDAL_0000, ver. 0.0,
  35.    GUID={0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}} */
  36. /* Object interface: IUnknown, ver. 0.0,
  37.    GUID={0x00000000,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
  38. /* Object interface: IDispatch, ver. 0.0,
  39.    GUID={0x00020400,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
  40. /* Object interface: IDALMyBools, ver. 0.0,
  41.    GUID={0xA15D55B0,0x457B,0x447F,{0x84,0x00,0x05,0x14,0x67,0x50,0xB4,0x07}} */
  42. extern const MIDL_STUB_DESC Object_StubDesc;
  43. extern const MIDL_SERVER_INFO IDALMyBools_ServerInfo;
  44. #pragma code_seg(".orpc")
  45. extern const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1];
  46. static const MIDL_STUB_DESC Object_StubDesc = 
  47.     {
  48.     0,
  49.     NdrOleAllocate,
  50.     NdrOleFree,
  51.     0,
  52.     0,
  53.     0,
  54.     0,
  55.     0,
  56.     __MIDL_TypeFormatString.Format,
  57.     1, /* -error bounds_check flag */
  58.     0x20000, /* Ndr library version */
  59.     0,
  60.     0x50100a4, /* MIDL Version 5.1.164 */
  61.     0,
  62.     UserMarshalRoutines,
  63.     0,  /* notify & notify_flag routine table */
  64.     1,  /* Flags */
  65.     0,  /* Reserved3 */
  66.     0,  /* Reserved4 */
  67.     0   /* Reserved5 */
  68.     };
  69. static const unsigned short IDALMyBools_FormatStringOffsetTable[] = 
  70.     {
  71.     (unsigned short) -1,
  72.     (unsigned short) -1,
  73.     (unsigned short) -1,
  74.     (unsigned short) -1,
  75.     0,
  76.     34,
  77.     62,
  78.     96,
  79.     130
  80.     };
  81. static const MIDL_SERVER_INFO IDALMyBools_ServerInfo = 
  82.     {
  83.     &Object_StubDesc,
  84.     0,
  85.     __MIDL_ProcFormatString.Format,
  86.     &IDALMyBools_FormatStringOffsetTable[-3],
  87.     0,
  88.     0,
  89.     0,
  90.     0
  91.     };
  92. static const MIDL_STUBLESS_PROXY_INFO IDALMyBools_ProxyInfo =
  93.     {
  94.     &Object_StubDesc,
  95.     __MIDL_ProcFormatString.Format,
  96.     &IDALMyBools_FormatStringOffsetTable[-3],
  97.     0,
  98.     0,
  99.     0
  100.     };
  101. CINTERFACE_PROXY_VTABLE(12) _IDALMyBoolsProxyVtbl = 
  102. {
  103.     &IDALMyBools_ProxyInfo,
  104.     &IID_IDALMyBools,
  105.     IUnknown_QueryInterface_Proxy,
  106.     IUnknown_AddRef_Proxy,
  107.     IUnknown_Release_Proxy ,
  108.     0 /* (void *)-1 /* IDispatch::GetTypeInfoCount */ ,
  109.     0 /* (void *)-1 /* IDispatch::GetTypeInfo */ ,
  110.     0 /* (void *)-1 /* IDispatch::GetIDsOfNames */ ,
  111.     0 /* IDispatch_Invoke_Proxy */ ,
  112.     (void *)-1 /* IDALMyBools::GetBookByIsbn */ ,
  113.     (void *)-1 /* IDALMyBools::QueryAllBook */ ,
  114.     (void *)-1 /* IDALMyBools::SaveBook */ ,
  115.     (void *)-1 /* IDALMyBools::DeleteBookById */ ,
  116.     (void *)-1 /* IDALMyBools::Update */
  117. };
  118. static const PRPC_STUB_FUNCTION IDALMyBools_table[] =
  119. {
  120.     STUB_FORWARDING_FUNCTION,
  121.     STUB_FORWARDING_FUNCTION,
  122.     STUB_FORWARDING_FUNCTION,
  123.     STUB_FORWARDING_FUNCTION,
  124.     NdrStubCall2,
  125.     NdrStubCall2,
  126.     NdrStubCall2,
  127.     NdrStubCall2,
  128.     NdrStubCall2
  129. };
  130. CInterfaceStubVtbl _IDALMyBoolsStubVtbl =
  131. {
  132.     &IID_IDALMyBools,
  133.     &IDALMyBools_ServerInfo,
  134.     12,
  135.     &IDALMyBools_table[-3],
  136.     CStdStubBuffer_DELEGATING_METHODS
  137. };
  138. #pragma data_seg(".rdata")
  139. static const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1] = 
  140.         {
  141.             
  142.             {
  143.             BSTR_UserSize
  144.             ,BSTR_UserMarshal
  145.             ,BSTR_UserUnmarshal
  146.             ,BSTR_UserFree
  147.             }
  148.         };
  149. #if !defined(__RPC_WIN32__)
  150. #error  Invalid build platform for this stub.
  151. #endif
  152. #if !(TARGET_IS_NT40_OR_LATER)
  153. #error You need a Windows NT 4.0 or later to run this stub because it uses these features:
  154. #error   -Oif or -Oicf, [wire_marshal] or [user_marshal] attribute, more than 32 methods in the interface.
  155. #error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
  156. #error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
  157. #endif
  158. static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString =
  159.     {
  160.         0,
  161.         {
  162. /* Procedure GetBookByIsbn */
  163. 0x33, /* FC_AUTO_HANDLE */
  164. 0x6c, /* Old Flags:  object, Oi2 */
  165. /*  2 */ NdrFcLong( 0x0 ), /* 0 */
  166. /*  6 */ NdrFcShort( 0x7 ), /* 7 */
  167. #ifndef _ALPHA_
  168. /*  8 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  169. #else
  170. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  171. #endif
  172. /* 10 */ NdrFcShort( 0x8 ), /* 8 */
  173. /* 12 */ NdrFcShort( 0x8 ), /* 8 */
  174. /* 14 */ 0x5, /* Oi2 Flags:  srv must size, has return, */
  175. 0x3, /* 3 */
  176. /* Parameter bookisbn */
  177. /* 16 */ NdrFcShort( 0x48 ), /* Flags:  in, base type, */
  178. #ifndef _ALPHA_
  179. /* 18 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  180. #else
  181. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  182. #endif
  183. /* 20 */ 0x8, /* FC_LONG */
  184. 0x0, /* 0 */
  185. /* Parameter mybook */
  186. /* 22 */ NdrFcShort( 0x2013 ), /* Flags:  must size, must free, out, srv alloc size=8 */
  187. #ifndef _ALPHA_
  188. /* 24 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  189. #else
  190. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  191. #endif
  192. /* 26 */ NdrFcShort( 0x2 ), /* Type Offset=2 */
  193. /* Return value */
  194. /* 28 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  195. #ifndef _ALPHA_
  196. /* 30 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  197. #else
  198. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  199. #endif
  200. /* 32 */ 0x8, /* FC_LONG */
  201. 0x0, /* 0 */
  202. /* Procedure QueryAllBook */
  203. /* 34 */ 0x33, /* FC_AUTO_HANDLE */
  204. 0x6c, /* Old Flags:  object, Oi2 */
  205. /* 36 */ NdrFcLong( 0x0 ), /* 0 */
  206. /* 40 */ NdrFcShort( 0x8 ), /* 8 */
  207. #ifndef _ALPHA_
  208. /* 42 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  209. #else
  210. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  211. #endif
  212. /* 44 */ NdrFcShort( 0x0 ), /* 0 */
  213. /* 46 */ NdrFcShort( 0x8 ), /* 8 */
  214. /* 48 */ 0x5, /* Oi2 Flags:  srv must size, has return, */
  215. 0x2, /* 2 */
  216. /* Parameter allBook */
  217. /* 50 */ NdrFcShort( 0x2013 ), /* Flags:  must size, must free, out, srv alloc size=8 */
  218. #ifndef _ALPHA_
  219. /* 52 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  220. #else
  221. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  222. #endif
  223. /* 54 */ NdrFcShort( 0x2 ), /* Type Offset=2 */
  224. /* Return value */
  225. /* 56 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  226. #ifndef _ALPHA_
  227. /* 58 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  228. #else
  229. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  230. #endif
  231. /* 60 */ 0x8, /* FC_LONG */
  232. 0x0, /* 0 */
  233. /* Procedure SaveBook */
  234. /* 62 */ 0x33, /* FC_AUTO_HANDLE */
  235. 0x6c, /* Old Flags:  object, Oi2 */
  236. /* 64 */ NdrFcLong( 0x0 ), /* 0 */
  237. /* 68 */ NdrFcShort( 0x9 ), /* 9 */
  238. #ifndef _ALPHA_
  239. /* 70 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  240. #else
  241. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  242. #endif
  243. /* 72 */ NdrFcShort( 0x0 ), /* 0 */
  244. /* 74 */ NdrFcShort( 0x10 ), /* 16 */
  245. /* 76 */ 0x6, /* Oi2 Flags:  clt must size, has return, */
  246. 0x3, /* 3 */
  247. /* Parameter bookdata */
  248. /* 78 */ NdrFcShort( 0x10b ), /* Flags:  must size, must free, in, simple ref, */
  249. #ifndef _ALPHA_
  250. /* 80 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  251. #else
  252. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  253. #endif
  254. /* 82 */ NdrFcShort( 0x2c ), /* Type Offset=44 */
  255. /* Parameter pResult */
  256. /* 84 */ NdrFcShort( 0x2150 ), /* Flags:  out, base type, simple ref, srv alloc size=8 */
  257. #ifndef _ALPHA_
  258. /* 86 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  259. #else
  260. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  261. #endif
  262. /* 88 */ 0x8, /* FC_LONG */
  263. 0x0, /* 0 */
  264. /* Return value */
  265. /* 90 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  266. #ifndef _ALPHA_
  267. /* 92 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  268. #else
  269. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  270. #endif
  271. /* 94 */ 0x8, /* FC_LONG */
  272. 0x0, /* 0 */
  273. /* Procedure DeleteBookById */
  274. /* 96 */ 0x33, /* FC_AUTO_HANDLE */
  275. 0x6c, /* Old Flags:  object, Oi2 */
  276. /* 98 */ NdrFcLong( 0x0 ), /* 0 */
  277. /* 102 */ NdrFcShort( 0xa ), /* 10 */
  278. #ifndef _ALPHA_
  279. /* 104 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  280. #else
  281. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  282. #endif
  283. /* 106 */ NdrFcShort( 0x8 ), /* 8 */
  284. /* 108 */ NdrFcShort( 0x10 ), /* 16 */
  285. /* 110 */ 0x4, /* Oi2 Flags:  has return, */
  286. 0x3, /* 3 */
  287. /* Parameter id */
  288. /* 112 */ NdrFcShort( 0x48 ), /* Flags:  in, base type, */
  289. #ifndef _ALPHA_
  290. /* 114 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  291. #else
  292. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  293. #endif
  294. /* 116 */ 0x8, /* FC_LONG */
  295. 0x0, /* 0 */
  296. /* Parameter iResult */
  297. /* 118 */ NdrFcShort( 0x2150 ), /* Flags:  out, base type, simple ref, srv alloc size=8 */
  298. #ifndef _ALPHA_
  299. /* 120 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  300. #else
  301. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  302. #endif
  303. /* 122 */ 0x8, /* FC_LONG */
  304. 0x0, /* 0 */
  305. /* Return value */
  306. /* 124 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  307. #ifndef _ALPHA_
  308. /* 126 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  309. #else
  310. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  311. #endif
  312. /* 128 */ 0x8, /* FC_LONG */
  313. 0x0, /* 0 */
  314. /* Procedure Update */
  315. /* 130 */ 0x33, /* FC_AUTO_HANDLE */
  316. 0x6c, /* Old Flags:  object, Oi2 */
  317. /* 132 */ NdrFcLong( 0x0 ), /* 0 */
  318. /* 136 */ NdrFcShort( 0xb ), /* 11 */
  319. #ifndef _ALPHA_
  320. /* 138 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  321. #else
  322. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  323. #endif
  324. /* 140 */ NdrFcShort( 0x0 ), /* 0 */
  325. /* 142 */ NdrFcShort( 0x10 ), /* 16 */
  326. /* 144 */ 0x6, /* Oi2 Flags:  clt must size, has return, */
  327. 0x3, /* 3 */
  328. /* Parameter Book */
  329. /* 146 */ NdrFcShort( 0x10b ), /* Flags:  must size, must free, in, simple ref, */
  330. #ifndef _ALPHA_
  331. /* 148 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  332. #else
  333. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  334. #endif
  335. /* 150 */ NdrFcShort( 0x2c ), /* Type Offset=44 */
  336. /* Parameter iResult */
  337. /* 152 */ NdrFcShort( 0x2150 ), /* Flags:  out, base type, simple ref, srv alloc size=8 */
  338. #ifndef _ALPHA_
  339. /* 154 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  340. #else
  341. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  342. #endif
  343. /* 156 */ 0x8, /* FC_LONG */
  344. 0x0, /* 0 */
  345. /* Return value */
  346. /* 158 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  347. #ifndef _ALPHA_
  348. /* 160 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  349. #else
  350. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  351. #endif
  352. /* 162 */ 0x8, /* FC_LONG */
  353. 0x0, /* 0 */
  354. 0x0
  355.         }
  356.     };
  357. static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString =
  358.     {
  359.         0,
  360.         {
  361. NdrFcShort( 0x0 ), /* 0 */
  362. /*  2 */
  363. 0x11, 0x14, /* FC_RP [alloced_on_stack] */
  364. /*  4 */ NdrFcShort( 0x2 ), /* Offset= 2 (6) */
  365. /*  6 */
  366. 0x13, 0x0, /* FC_OP */
  367. /*  8 */ NdrFcShort( 0x24 ), /* Offset= 36 (44) */
  368. /* 10 */
  369. 0x13, 0x0, /* FC_OP */
  370. /* 12 */ NdrFcShort( 0xc ), /* Offset= 12 (24) */
  371. /* 14 */
  372. 0x1b, /* FC_CARRAY */
  373. 0x1, /* 1 */
  374. /* 16 */ NdrFcShort( 0x2 ), /* 2 */
  375. /* 18 */ 0x9, /* Corr desc: FC_ULONG */
  376. 0x0, /*  */
  377. /* 20 */ NdrFcShort( 0xfffc ), /* -4 */
  378. /* 22 */ 0x6, /* FC_SHORT */
  379. 0x5b, /* FC_END */
  380. /* 24 */
  381. 0x17, /* FC_CSTRUCT */
  382. 0x3, /* 3 */
  383. /* 26 */ NdrFcShort( 0x8 ), /* 8 */
  384. /* 28 */ NdrFcShort( 0xfffffff2 ), /* Offset= -14 (14) */
  385. /* 30 */ 0x8, /* FC_LONG */
  386. 0x8, /* FC_LONG */
  387. /* 32 */ 0x5c, /* FC_PAD */
  388. 0x5b, /* FC_END */
  389. /* 34 */ 0xb4, /* FC_USER_MARSHAL */
  390. 0x83, /* 131 */
  391. /* 36 */ NdrFcShort( 0x0 ), /* 0 */
  392. /* 38 */ NdrFcShort( 0x4 ), /* 4 */
  393. /* 40 */ NdrFcShort( 0x0 ), /* 0 */
  394. /* 42 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (10) */
  395. /* 44 */
  396. 0x1a, /* FC_BOGUS_STRUCT */
  397. 0x3, /* 3 */
  398. /* 46 */ NdrFcShort( 0xc ), /* 12 */
  399. /* 48 */ NdrFcShort( 0x0 ), /* 0 */
  400. /* 50 */ NdrFcShort( 0x0 ), /* Offset= 0 (50) */
  401. /* 52 */ 0x8, /* FC_LONG */
  402. 0x4c, /* FC_EMBEDDED_COMPLEX */
  403. /* 54 */ 0x0, /* 0 */
  404. NdrFcShort( 0xffffffeb ), /* Offset= -21 (34) */
  405. 0x4c, /* FC_EMBEDDED_COMPLEX */
  406. /* 58 */ 0x0, /* 0 */
  407. NdrFcShort( 0xffffffe7 ), /* Offset= -25 (34) */
  408. 0x5b, /* FC_END */
  409. /* 62 */
  410. 0x11, 0x0, /* FC_RP */
  411. /* 64 */ NdrFcShort( 0xffffffec ), /* Offset= -20 (44) */
  412. /* 66 */
  413. 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */
  414. /* 68 */ 0x8, /* FC_LONG */
  415. 0x5c, /* FC_PAD */
  416. 0x0
  417.         }
  418.     };
  419. const CInterfaceProxyVtbl * _BooksDAL_ProxyVtblList[] = 
  420. {
  421.     ( CInterfaceProxyVtbl *) &_IDALMyBoolsProxyVtbl,
  422.     0
  423. };
  424. const CInterfaceStubVtbl * _BooksDAL_StubVtblList[] = 
  425. {
  426.     ( CInterfaceStubVtbl *) &_IDALMyBoolsStubVtbl,
  427.     0
  428. };
  429. PCInterfaceName const _BooksDAL_InterfaceNamesList[] = 
  430. {
  431.     "IDALMyBools",
  432.     0
  433. };
  434. const IID *  _BooksDAL_BaseIIDList[] = 
  435. {
  436.     &IID_IDispatch,
  437.     0
  438. };
  439. #define _BooksDAL_CHECK_IID(n) IID_GENERIC_CHECK_IID( _BooksDAL, pIID, n)
  440. int __stdcall _BooksDAL_IID_Lookup( const IID * pIID, int * pIndex )
  441. {
  442.     
  443.     if(!_BooksDAL_CHECK_IID(0))
  444.         {
  445.         *pIndex = 0;
  446.         return 1;
  447.         }
  448.     return 0;
  449. }
  450. const ExtendedProxyFileInfo BooksDAL_ProxyFileInfo = 
  451. {
  452.     (PCInterfaceProxyVtblList *) & _BooksDAL_ProxyVtblList,
  453.     (PCInterfaceStubVtblList *) & _BooksDAL_StubVtblList,
  454.     (const PCInterfaceName * ) & _BooksDAL_InterfaceNamesList,
  455.     (const IID ** ) & _BooksDAL_BaseIIDList,
  456.     & _BooksDAL_IID_Lookup, 
  457.     1,
  458.     2,
  459.     0, /* table of [async_uuid] interfaces */
  460.     0, /* Filler1 */
  461.     0, /* Filler2 */
  462.     0  /* Filler3 */
  463. };