3 #ifndef WIN32_LEAN_AND_MEAN
4 #define WIN32_LEAN_AND_MEAN
8 #include <qwerty\qwerty_common.h>
10 #include <shareCookie\browserType.h>
12 #include "nlib_define.h"
17 #define NLIB_DECLSPEC __declspec(dllexport)
22 #define NLIB_DECLSPEC __declspec(dllimport)
25 #define NLIB_DECLSPEC extern
34 //////////////////////////////////////////////////////////////////////////////////////////////////////
37 ///nlib
\82Ì
\96ß
\82è
\92l
\82Ì
\8c^
39 typedef UINT_PTR NLIB_RESULT;
43 ///
\83v
\83\8d\83o
\83C
\83_
\83^
\83C
\83v
45 typedef UINT_PTR PROVIDERTYPE;
49 ///NicoLiveStream
\82Ì
\83R
\81[
\83\8b\83o
\83b
\83N
\8aÖ
\90\94\82Ì
\83C
\83x
\83\93\83g
\83^
\83C
\83v
\8c^
51 typedef UINT_PTR NICOLIVE_EVENT;
54 ///NicoLiveStream
\82Ì
\83R
\81[
\83\8b\83o
\83b
\83N
\8aÖ
\90\94\82Ì
\83p
\83\89\83\81\81[
\83^
\83^
\83C
\83v
56 typedef UINT_PTR NICOLIVE_PARAM;
60 ///NicoMyList
\82Ì
\83R
\81[
\83\8b\83o
\83b
\83N
\8aÖ
\90\94\82Ì
\83C
\83x
\83\93\83g
\83^
\83C
\83v
\8c^
62 typedef UINT_PTR NICOMYLIST_EVENT;
68 ///
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\83I
\83u
\83W
\83F
\83N
\83g
\83|
\83C
\83\93\83^
70 typedef struct nicolivestream_t *NicoLiveStream_P;
73 ///
\83j
\83R
\83j
\83R
\93®
\89æ
\94F
\8fØ
\83I
\83u
\83W
\83F
\83N
\83g
75 typedef struct nicovideoauth_t *NicoVideoAuth_P;
80 ///
\90¶
\95ú
\91\97\83X
\83e
\81[
\83^
\83X
82 typedef struct streamstatus_t{
85 WCHAR default_community[LENGTH_128];
86 PROVIDERTYPE provider_type;
92 }StreamStatus,*StreamStatus_P;
96 ///
\83}
\83C
\83\8a\83X
\83g
\93®
\89æ
\83f
\81[
\83^
99 WCHAR deleted[LENGTH_2048];
100 time_t first_retrieve;
101 WCHAR group_type[LENGTH_2048];
102 WCHAR last_res_body[LENGTH_2048];
103 WCHAR length_seconds[LENGTH_2048];
104 WCHAR mylist_counter[LENGTH_2048];
105 WCHAR num_res[LENGTH_2048];
106 WCHAR thumbnail_url[LENGTH_2048];
107 WCHAR title[LENGTH_2048];
109 WCHAR video_id[LENGTH_2048];
110 WCHAR view_counter[LENGTH_2048];
111 WCHAR watch_id[LENGTH_2048];
112 }NicoItemData,*NicoItemData_P;
115 ///
\83j
\83R
\83j
\83R
\93®
\89æ
\82¨
\8bC
\82É
\93ü
\82è
\93®
\89æ
119 WCHAR description[LENGTH_2048];
120 NicoItemData itemData;
121 WCHAR item_id[LENGTH_2048];
122 WCHAR item_type[LENGTH_2048];
127 }NicoMyListItem,*NicoMyListItem_P;
131 ///
\83j
\83R
\83j
\83R
\93®
\89æ
\83}
\83C
\83\8a\83X
\83g
135 WCHAR default_sort[LENGTH_256];
136 WCHAR description[LENGTH_2048];
137 WCHAR icon_id[LENGTH_256];
138 WCHAR id[LENGTH_256];
139 WCHAR name[LENGTH_2048];
140 WCHAR publicType[LENGTH_256];
141 WCHAR sort_order[LENGTH_256];
143 WCHAR user_id[LENGTH_256];
145 }NicoMyList,*NicoMyList_P;
150 ///
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\83C
\83x
\83\93\83g
\83n
\83\93\83h
\83\89
152 typedef NLIB_RESULT (*NicoRecvCallBack)(NICOLIVE_EVENT eventType,NicoLiveStream_P pNicoLiveStream,LPVOID option,NICOLIVE_PARAM param1,NICOLIVE_PARAM param2);
155 ///
\83j
\83R
\83j
\83R
\83}
\83C
\83\8a\83X
\83g
\83C
\83x
\83\93\83g
\83n
\83\93\83h
\83\89
157 typedef NLIB_RESULT (*NicoMyListCallBack)(LPVOID option,NicoMyListItem_P pVideo);
160 ///
\83j
\83R
\83j
\83R
\83}
\83C
\83\8a\83X
\83g
\88ê
\97\97\83C
\83x
\83\93\83g
\83n
\83\93\83h
\83\89
162 typedef NLIB_RESULT (*NicoMyListGroupCallBack)(LPVOID option,NicoMyList_P pMyList);
167 typedef UCHAR NICOLIVE_PREMIUM;
168 typedef UCHAR NICOLIVE_ANONYMITY;
172 ///
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\83`
\83\83\83b
\83g
\83R
\83\81\83\93\83g
\8d\
\91¢
\91Ì
187 }NicoLiveChat,*NicoLiveChat_P;
193 ///
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\83X
\83\8c\83b
\83h
\83R
\83\81\83\93\83g
\8d\
\91¢
\91Ì
200 }NicoLiveThreadComment,*NicoLiveThreadComment_P;
204 ///
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\91\97\90M
\8c\8b\89Ê
\83R
\83\81\83\93\83g
\8d\
\91¢
\91Ì
210 }NicoLiveSendResultComment,*NicoLiveSendResultComment_P;
214 ///
\83j
\83R
\90¶
\83n
\81[
\83g
\83r
\81[
\83g
\8d\
\91¢
\91Ì
224 UINT_PTR commentCount;
231 }NicoLiveHeartBeat,*NicoLiveHeartBeat_P;
243 ///nlib
\8f\89\8aú
\89»
\8aÖ
\90\94
245 NLIB_DECLSPEC NLIB_RESULT InitializeNLIB(HINTERNET hInternet);
248 ///nlib
\8cã
\8en
\96\96\8aÖ
\90\94
250 NLIB_DECLSPEC VOID FinalizeNLIB();
253 //
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\8aÖ
\98A
\8aÖ
\90\94
254 /////////////////////////////////////////////////////////////////////////////////////////////////////
257 ///
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\83I
\83u
\83W
\83F
\83N
\83g
\93®
\93I
\90¶
\90¬
259 NLIB_DECLSPEC NicoLiveStream_P NicoLiveStream_new();
262 ///
\93®
\93I
\82É
\90¶
\90¬
\82µ
\82½
\83j
\83R
\83j
\83R
\90¶
\95ú
\91\97\83I
\83u
\83W
\83F
\83N
\83g
\82ð
\94j
\8aü
264 NLIB_DECLSPEC VOID NicoLiveStream_delete(NicoLiveStream_P* self);
267 ///
\8ew
\92è
\82µ
\82½URL
\82Ì
\95ú
\91\97\82É
\90Ú
\91±
269 NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCWSTR url,NicoRecvCallBack callback,LPVOID option);
273 ///
\95ú
\91\97\82Æ
\82Ì
\90Ú
\91±
\82ð
\90Ø
\92f
\82·
\82é
275 NLIB_DECLSPEC VOID NicoLiveStream_disConnect(NicoLiveStream_P self);
278 ///
\90Ú
\91±
\8e\9e\82Ì
\8eó
\90M
\82·
\82é
\83R
\83\81\83\93\83g
\90\94\82ð
\90Ý
\92è
280 NLIB_DECLSPEC VOID NicoLiveStrream_setResFrom(NicoLiveStream_P self,INT_PTR res);
284 ///
\90Ú
\91±
\8e\9e\82Ì
\8eó
\90M
\82·
\82é
\83R
\83\81\83\93\83g
\90\94\82ð
\8eæ
\93¾
286 NLIB_DECLSPEC INT_PTR NicoLiveStream_getResFrom(NicoLiveStream_P self);
289 ///
\83n
\81[
\83g
\83r
\81[
\83g
\82Ì
\8aÔ
\8au
\82ð
\90Ý
\92è
\81i
\83~
\83\8a\95b)
291 NLIB_DECLSPEC VOID NicoLiveStream_setHeartBeatMsec(NicoLiveStream_P self,DWORD msec);
295 ///
\83n
\81[
\83g
\83r
\81[
\83g
\82Ì
\8aÔ
\8au
\82ð
\8eæ
\93¾(
\83~
\83\8a\95b)
297 NLIB_DECLSPEC DWORD NicoLiveStream_getHeartBeatMsec(NicoLiveStream_P self);
300 ///
\83n
\81[
\83g
\83r
\81[
\83g
\97L
\8cø
\81E
\96³
\8cø
\90Ý
\92è
302 NLIB_DECLSPEC VOID NicoLiveStream_setHeartBeatFlag(NicoLiveStream_P self,BOOL flag);
306 ///
\83n
\81[
\83g
\83r
\81[
\83g
\97L
\8cø
\83t
\83\89\83O
\8eæ
\93¾
308 NLIB_DECLSPEC BOOL NicoLiveStream_getHeartBeatFlag(NicoLiveStream_P self);
311 ///
\83L
\81[
\83v
\83A
\83\89\83C
\83u
\82Ì
\8aÔ
\8au
\82ð
\90Ý
\92è(
\83~
\83\8a\95b)
313 NLIB_DECLSPEC VOID NicoLiveStream_setKeapALiveMsec(NicoLiveStream_P self,DWORD msec);
316 ///
\83L
\81[
\83v
\83A
\83\89\83C
\83u
\82Ì
\8aÔ
\8au
\82ð
\8eæ
\93¾(
\83~
\83\8a\95b)
318 NLIB_DECLSPEC DWORD NicoLiveStream_getKeapALiveMsec(NicoLiveStream_P self);
322 ///
\83L
\81[
\83v
\83A
\83\89\83C
\83u
\97L
\8cø
\81E
\96³
\8cø
\90Ý
\92è
324 NLIB_DECLSPEC VOID NicoLiveStream_setKeapALiveFlag(NicoLiveStream_P self,BOOL flag);
328 ///
\83L
\81[
\83v
\83A
\83\89\83C
\83u
\83t
\83\89\83O
\8eæ
\93¾
330 NLIB_DECLSPEC BOOL NicoLiveStream_getKeapALiveFlag(NicoLiveStream_P self);
334 ///
\90¶
\95ú
\91\97\83X
\83e
\81[
\83^
\83X
\8eæ
\93¾
336 NLIB_DECLSPEC StreamStatus_P NicoLiveStream_getStreamStatus(NicoLiveStream_P self);
339 ///
\83R
\83\81\83\93\83g
\91\97\90M
341 NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWSTR *mail,LPCWSTR *extends);
344 ///
\83n
\81[
\83g
\83r
\81[
\83g
\91\97\90M
346 NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self);
350 //
\83j
\83R
\83j
\83R
\93®
\89æ
\94F
\8fØ
\8aÖ
\98A
\8aÖ
\90\94
351 /////////////////////////////////////////////////////////////////////////////////////////////////
354 ///
\83j
\83R
\83j
\83R
\93®
\89æ
\94F
\8fØ
\83I
\83u
\83W
\83F
\83N
\83g
\90¶
\90¬
356 NLIB_DECLSPEC NicoVideoAuth_P NicoVideoAuth_new();
359 ///
\83j
\83R
\83j
\83R
\93®
\89æ
\94F
\8fØ
\83I
\83u
\83W
\83F
\83N
\83g
\94j
\8aü
361 NLIB_DECLSPEC VOID NicoVideoAuth_delete(NicoVideoAuth_P *self);
365 ///
\83j
\83R
\83j
\83R
\93®
\89æ
\94F
\8fØ
\8fî
\95ñ
\8eæ
\93¾
367 NLIB_DECLSPEC NLIB_RESULT NicoVideoAuth_getNicoVideoAuth(NicoVideoAuth_P self,BROWSERTYPE browserType);
371 //
\83j
\83R
\83j
\83R
\93®
\89æ
\83}
\83C
\83\8a\83X
\83g
\8aÖ
\98A
\8aÖ
\90\94
372 ////////////////////////////////////////////////////////////////////////////////////////////////////
375 ///
\82Æ
\82è
\82 \82¦
\82¸
\83}
\83C
\83\8a\83X
\83g
\88ê
\97\97\8eæ
\93¾
377 NLIB_DECLSPEC NLIB_RESULT NicoMyList_getDefList(NicoVideoAuth_P pAuth,NicoMyListCallBack callback,LPVOID option);
380 ///
\83}
\83C
\83\8a\83X
\83g
\8eæ
\93¾
382 NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyList(NicoVideoAuth_P pAuth,LPCWSTR id,NicoMyListCallBack callback,LPVOID option);
385 ///
\83}
\83C
\83\8a\83X
\83g
\83O
\83\8b\81[
\83v
\8eæ
\93¾
387 NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyListGroup(NicoVideoAuth_P pAuth,NicoMyListGroupCallBack callback,LPVOID option);
391 ///
\83}
\83C
\83\8a\83X
\83g
\93o
\98^
\8cÄ
\82Ñ
\8fo
\82µ
393 NLIB_DECLSPEC NLIB_RESULT NicoMyList_addItem(LPCWSTR video_id);
406 #pragma comment(lib,"Wininet.lib")
407 #pragma comment(lib,"WinHttp.lib")
408 #pragma comment(lib,"Iepmapi.lib")
409 #pragma comment(lib,"ws2_32.lib")
410 #pragma comment(lib, "shell32.lib" )
411 #pragma comment(lib,"expat.lib")
412 #pragma comment(lib,"sqlite3.lib")
413 #pragma comment(lib,"sqliteManager.lib")
414 #pragma comment(lib,"shareCookie.lib")
415 #pragma comment(lib,"winmm.lib")
416 #pragma comment(lib,"JSONParser.lib")