YYClientSDK  beta 1.15
 全部  函数 枚举 枚举值
yy-api-get.h
1 
2 
18 #ifndef YY_PLATFORM_SDK_YY_API_GET_H
19 #define YY_PLATFORM_SDK_YY_API_GET_H
20 
21 #include <tchar.h>
22 #include "yy-api-client.h"
23 #include "yy-api-ex-client.h"
24 
25 typedef yy::IYY* (*IYYCREATEFUNC)(void);
26 //typedef int (*IYYQUERYINTERFACE)(void **interface, char *guid, unsigned int size);
27 #define YYPLATFORM_SDK_FUNC_NAME ("GetYYOpenInterface")
28 //#define YYPLATFORM_SDK_QUERY_NAME ("QueryInterface")
29 #define YYPLATFORM_SDK_DLL_NAME _T("yyplatformsdk.dll")
30 //#define YY1_GUID ("{3E10F70E-5FA1-40e0-A26F-0CA5D0EE93CA}")
31 
32 #define YYPLATFORM_SDK_EX_FUNC_NAME ("GetOpenApiInterface")
33 typedef int (*IYYQUERYINTERFACE)(int type, const wchar_t *cmdline, void** api);
34 
35 inline yy::IYY* GetYYApi(unsigned int& err)
36 {
37  HMODULE hModule = ::LoadLibrary(YYPLATFORM_SDK_DLL_NAME);
38 
39  if (hModule==NULL)
40  {
41  err = ::GetLastError();
42  return NULL;
43  }
44 
45  IYYCREATEFUNC pFunc = (IYYCREATEFUNC)::GetProcAddress(hModule, YYPLATFORM_SDK_FUNC_NAME);
46 
47  if (pFunc==NULL)
48  {
49  err = ::GetLastError();
50  return NULL;
51  }
52 
53  err = 0;
54  return pFunc();
55 }
56 
57 /*
58 
59 inline int GetYYApi(IYY1 **iyy1)
60 {
61  HMODULE hModule = ::LoadLibrary(YYPLATFORM_SDK_DLL_NAME);
62 
63  if (hModule==NULL)
64  {
65  return ::GetLastError();
66  }
67 
68  IYYQUERYINTERFACE pQueryInterface = (IYYQUERYINTERFACE)::GetProcAddress(hModule, YYPLATFORM_SDK_QUERY_NAME);
69 
70  if (pFunc==NULL)
71  {
72  err = ::GetLastError();
73 
74  return err;
75  }
76 
77  return pQueryInterface((void **)iyy1, YY1_GUID, 40);
78 }
79 */
80 
81 inline int GetYYAPIEx(yy::IYYEx** api, const wchar_t * cmd_line)
82 {
83  HMODULE hModule = ::LoadLibrary(YYPLATFORM_SDK_DLL_NAME);
84 
85  if (hModule==NULL)
86  {
87  return -1;
88  }
89 
90  IYYQUERYINTERFACE pFunc = (IYYQUERYINTERFACE)::GetProcAddress(hModule, YYPLATFORM_SDK_EX_FUNC_NAME);
91 
92  if (pFunc!=NULL)
93  {
94  return pFunc(1, cmd_line, (void **)api);
95  }
96 
97  return -1;
98 }
99 #endif