OSDN Git Service

2012/01/23 17:17:27
authorunknown <qwerty2501@users.sourceforge.jp>
Mon, 23 Jan 2012 08:17:27 +0000 (17:17 +0900)
committerunknown <qwerty2501@users.sourceforge.jp>
Mon, 23 Jan 2012 08:17:27 +0000 (17:17 +0900)
45 files changed:
include/qwerty/windebuger.h
nlib/StdAfx.h
nlib/nlib.h
nlib/nlib.vcxproj
nlib/nlib.vcxproj.filters
nlib/nlib_common.c
nlib/nlib_common.h
nlib/nlib_define.h
nlib/nlib_errorMessage.c [new file with mode: 0644]
nlib/nlib_myList.c
nlib/nlib_mylist.h
nlib/nlib_nicoLive.c
nlib/nlib_nicoLive.h
nlib/nlib_nicoVideoAuth.c
nlib/nlib_xmlHandler.c
nlib_driver/nlib_driver.cpp
nlib_driver/stdafx.h
nlite.suo
nlite/nlite.cpp
nlite/nlite.h
nlite/nlite.vcxproj
nlite/nlite.vcxproj.filters
nlite/nlite_appInfo.cpp
nlite/nlite_appinfo.h
nlite/nlite_chatData.cpp
nlite/nlite_chatData.h
nlite/nlite_commentWrite.cpp
nlite/nlite_commentWrite.h
nlite/nlite_commentview.cpp
nlite/nlite_commentview.h
nlite/nlite_exception.cpp [new file with mode: 0644]
nlite/nlite_exception.h
nlite/nlite_mailframe.h
nlite/nlite_mainframe.cpp
nlite/nlite_nlib.cpp
nlite/nlite_nlib.h
nlite/nlite_property.cpp
nlite/nlite_property.h
nlite/nlite_string.cpp [new file with mode: 0644]
nlite/nlite_string.h
nlite/stdafx.h
nlite_stub/nlib_stub.h
nlite_stub/nlite_stub.cpp
nlite_stub/nlite_stub.vcxproj
nlite_stub/nlite_stub.vcxproj.filters

index d042387..2ade2f1 100644 (file)
@@ -511,9 +511,10 @@ static VOID DebugOutMB(UINT codePage,LPSTR fileName,LPSTR functionName,UINT line
  
 static VOID DebugOutputCommon(LPCWSTR szBuf,UINT mode,const struct tm* now){
 
-       WCHAR logFileName[24];
+
+       
        LPWSTR logFileNameFormat = L"debug_%d-%d-%d.log";
-       DWORD number;
+       
 
 
 #ifndef WINDEBUGER_NOTRACEING
@@ -524,6 +525,7 @@ static VOID DebugOutputCommon(LPCWSTR szBuf,UINT mode,const struct tm* now){
 
 #ifndef WINDEBUGER_NOPRINTING
        if(mode & PRINTING__DEBUGER__){
+               DWORD number;
                AllocConsole();
                WriteConsoleW(GetStdHandle(STD_OUTPUT_HANDLE),szBuf,wcslen(szBuf),&number,NULL);
                
@@ -540,7 +542,7 @@ static VOID DebugOutputCommon(LPCWSTR szBuf,UINT mode,const struct tm* now){
        
 #ifndef WINDEBUGER_NOLOGGING
        if(mode & LOGGING__DEBUGER__){
-
+               WCHAR logFileName[24];
                wsprintfW(logFileName,logFileNameFormat,now->tm_year + 1900,now->tm_mon + 1,now->tm_mday);
 
 
index 028b795..b4ccb1d 100644 (file)
@@ -1,9 +1,10 @@
 #pragma once
 
 #include "targetver.h"
-#define _CRT_NON_CONFORMING_SWPRINTFS = 1
+#define _CRT_NON_CONFORMING_SWPRINTFS  1
+#define _CRT_SECURE_NO_WARNINGS  1
 #define WIN32_LEAN_AND_MEAN             // Windows \83w\83b\83_\81[\82©\82ç\8eg\97p\82³\82ê\82Ä\82¢\82È\82¢\95\94\95ª\82ð\8f\9c\8aO\82µ\82Ü\82·\81B
-
+#define WINDEBUGER_NOPRINTING                          //\83f\83o\83b\83O\8fo\97Í\82ð\83R\83\93\83\\81[\83\8b\82É\95\\8e¦\82µ\82½\82­\82È\82¢\8fê\8d\87\92è\8b`\82·\82é
 
 
 //windowsAPI\8aÖ\98A\83w\83b\83_
index 2c47163..edde352 100644 (file)
@@ -33,6 +33,9 @@
 //\8c^\92è\8b`
 //////////////////////////////////////////////////////////////////////////////////////////////////////
 
+
+
+
 ///
 ///nlib\82Ì\96ß\82è\92l\82Ì\8c^
 ///
@@ -77,74 +80,27 @@ typedef struct nicovideoauth_t *NicoVideoAuth_P;
 
 
 ///
-///\90\95ú\91\97\83X\83e\81[\83^\83X
+///\83j\83R\83j\83R\90\95ú\91\97\83X\83e\81[\83^\83X
 ///
-typedef struct streamstatus_t{
+typedef struct streamstatus_t *StreamStatus_P;
+
 
-       WCHAR id[LENGTH_128];
-       WCHAR default_community[LENGTH_128];
-       PROVIDERTYPE provider_type;
-       BOOL  is_owner;
-       time_t start_time;
-       time_t end_time;
-       time_t open_time;
-       time_t base_time;
-}StreamStatus,*StreamStatus_P;
 
 
 ///
-///\83}\83C\83\8a\83X\83g\93®\89æ\83f\81[\83^
+///\83j\83R\83j\83R\93®\89æ\83}\83C\83\8a\83X\83g\83A\83C\83e\83\80\83I\83u\83W\83F\83N\83g
 ///
-typedef struct {
-       WCHAR deleted[LENGTH_2048];
-       time_t first_retrieve;
-       WCHAR group_type[LENGTH_2048];
-       WCHAR last_res_body[LENGTH_2048];
-       WCHAR length_seconds[LENGTH_2048];
-       WCHAR mylist_counter[LENGTH_2048];
-       WCHAR num_res[LENGTH_2048];
-       WCHAR thumbnail_url[LENGTH_2048];
-       WCHAR title[LENGTH_2048];
-       time_t update_time;
-       WCHAR video_id[LENGTH_2048];
-       WCHAR view_counter[LENGTH_2048];
-       WCHAR watch_id[LENGTH_2048];
-}NicoItemData,*NicoItemData_P;
+typedef struct nicomylistitem_t *NicoMyListItem_P;
 
 ///
-///\83j\83R\83j\83R\93®\89æ\82¨\8bC\82É\93ü\82è\93®\89æ
+///\83j\83R\83j\83R\93®\89æ\83}\83C\83\8a\83X\83g\83A\83C\83e\83\80\83f\81[\83^\83I\83u\83W\83F\83N\83g
 ///
-typedef struct {
-       time_t create_time;
-       WCHAR description[LENGTH_2048];
-       NicoItemData itemData;
-       WCHAR item_id[LENGTH_2048];
-       WCHAR item_type[LENGTH_2048];
-       time_t update_time;
-       UINT_PTR watch;
-
-
-}NicoMyListItem,*NicoMyListItem_P;
-
+typedef struct nicoitemdata_t *NicoItemData_P;
 
 ///
-///\83j\83R\83j\83R\93®\89æ\83}\83C\83\8a\83X\83g
+///\83j\83R\83j\83R\93®\89æ\82Ì\83}\83C\83\8a\83X\83g\83I\83u\83W\83F\83N\83g
 ///
-typedef struct {
-       time_t create_time;
-       WCHAR default_sort[LENGTH_256];
-       WCHAR description[LENGTH_2048];
-       WCHAR icon_id[LENGTH_256];
-       WCHAR id[LENGTH_256];
-       WCHAR name[LENGTH_2048];
-       WCHAR publicType[LENGTH_256];
-       WCHAR sort_order[LENGTH_256];
-       time_t update_time;
-       WCHAR user_id[LENGTH_256];
-
-}NicoMyList,*NicoMyList_P;
-
-
+typedef struct nicomylist_t *NicoMyList_P;
 
 ///
 ///\83j\83R\83j\83R\90\95ú\91\97\83C\83x\83\93\83g\83n\83\93\83h\83\89
@@ -162,27 +118,21 @@ typedef NLIB_RESULT (*NicoMyListCallBack)(LPVOID option,NicoMyListItem_P pVideo)
 typedef NLIB_RESULT (*NicoMyListGroupCallBack)(LPVOID option,NicoMyList_P pMyList);
 
 
-
-
-typedef UCHAR NICOLIVE_PREMIUM;
-typedef UCHAR NICOLIVE_ANONYMITY;
-
-
 ///
 ///\83j\83R\83j\83R\90\95ú\91\97\83`\83\83\83b\83g\83R\83\81\83\93\83g\8d\\91¢\91Ì
 ///
 typedef struct{
-       LPCWSTR premium;
-       LPCWSTR anonymity;
-       LPCWSTR thread;
-       LPCWSTR no;
-       LPCWSTR vpos;
-       LPCWSTR date;
-       LPCWSTR locale;
-       LPCWSTR user_id;
-       LPCWSTR name;
-       LPCWSTR chatBuf;
-       LPCWSTR* mail;
+       LPCTSTR premium;
+       LPCTSTR anonymity;
+       LPCTSTR thread;
+       LPCTSTR no;
+       LPCTSTR vpos;
+       LPCTSTR date;
+       LPCTSTR locale;
+       LPCTSTR user_id;
+       LPCTSTR name;
+       LPCTSTR chatBuf;
+       LPCTSTR* mail;
        UINT_PTR mailCount;
 }NicoLiveChat,*NicoLiveChat_P;
 
@@ -193,10 +143,10 @@ typedef struct{
 ///\83j\83R\83j\83R\90\95ú\91\97\83X\83\8c\83b\83h\83R\83\81\83\93\83g\8d\\91¢\91Ì
 ///
 typedef struct{
-       LPCWSTR thread;
-       LPCWSTR ticket;
-       LPCWSTR last_res;
-       LPCWSTR server_time;
+       LPCTSTR thread;
+       LPCTSTR ticket;
+       LPCTSTR last_res;
+       LPCTSTR server_time;
 }NicoLiveThreadComment,*NicoLiveThreadComment_P;
 
 
@@ -204,9 +154,9 @@ typedef struct{
 ///\83j\83R\83j\83R\90\95ú\91\97\91\97\90M\8c\8b\89Ê\83R\83\81\83\93\83g\8d\\91¢\91Ì
 ///
 typedef struct{
-       LPCWSTR status;
-       LPCWSTR no;
-       LPCWSTR thread;
+       LPCTSTR status;
+       LPCTSTR no;
+       LPCTSTR thread;
 }NicoLiveSendResultComment,*NicoLiveSendResultComment_P;
 
 
@@ -223,9 +173,9 @@ typedef struct{
 
        UINT_PTR commentCount;
 
-       LPCWSTR is_restrict;
+       LPCTSTR is_restrict;
 
-       LPCWSTR ticket;
+       LPCTSTR ticket;
 
 
 }NicoLiveHeartBeat,*NicoLiveHeartBeat_P;
@@ -249,6 +199,12 @@ extern "C" {
        ///
        NLIB_DECLSPEC VOID FinalizeNLIB();
 
+
+       ///
+       ///\83G\83\89\81[\83\81\83b\83Z\81[\83W\8eæ\93¾
+       ///
+       NLIB_DECLSPEC LPCTSTR NLIB_GetErrorMessage(NLIB_RESULT rsltCode);
+
        //
        //\83j\83R\83j\83R\90\95ú\91\97\8aÖ\98A\8aÖ\90\94
        /////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -266,7 +222,7 @@ extern "C" {
        ///
        ///\8ew\92è\82µ\82½URL\82Ì\95ú\91\97\82É\90Ú\91±
        ///
-       NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCWSTR url,NicoRecvCallBack callback,LPVOID option);
+       NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCTSTR url,NicoRecvCallBack callback,LPVOID option);
        
 
        ///
@@ -338,13 +294,55 @@ extern "C" {
        ///
        ///\83R\83\81\83\93\83g\91\97\90M
        ///
-       NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWSTR *mail,LPCWSTR *extends);
+       NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCTSTR chatbuf,LPCTSTR *mail,LPCTSTR *extends);
 
        ///
        ///\83n\81[\83g\83r\81[\83g\91\97\90M
        ///
        NLIB_DECLSPEC NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self);
 
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82ÌID\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC LPCTSTR StreamStatus_getId(StreamStatus_P self);
+
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83R\83~\83\85\83j\83e\83B\94Ô\8d\86\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC LPCTSTR StreamStatus_getDefaultCommunity(StreamStatus_P self);
+
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83v\83\8d\83o\83C\83_\83^\83C\83v\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC PROVIDERTYPE StreamStatus_getProviderType(StreamStatus_P self);
+
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83I\81[\83i\81[\83t\83\89\83O\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC BOOL StreamStatus_isOwner(StreamStatus_P self);
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8aJ\8en\8e\9e\8d\8f\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC time_t StreamStatus_getStartTime(StreamStatus_P self);
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8fI\97¹\8e\9e\8d\8f\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC time_t StreamStatus_getEndTime(StreamStatus_P self);
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8aJ\8fê\8e\9e\8d\8f\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC time_t StreamStatus_getOpenTime(StreamStatus_P self);
+
+       ///
+       ///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83x\81[\83X\8e\9e\8d\8f\82ð\8eæ\93¾
+       ///
+       NLIB_DECLSPEC time_t StreamStatus_getBaseTime(StreamStatus_P self);
 
        //
        //\83j\83R\83j\83R\93®\89æ\94F\8fØ\8aÖ\98A\8aÖ\90\94
@@ -379,7 +377,7 @@ extern "C" {
        ///
        ///\83}\83C\83\8a\83X\83g\8eæ\93¾
        ///
-       NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyList(NicoVideoAuth_P pAuth,LPCWSTR id,NicoMyListCallBack callback,LPVOID option);
+       NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyList(NicoVideoAuth_P pAuth,LPCTSTR id,NicoMyListCallBack callback,LPVOID option);
 
        ///
        ///\83}\83C\83\8a\83X\83g\83O\83\8b\81[\83v\8eæ\93¾
@@ -390,7 +388,7 @@ extern "C" {
        ///
        ///\83}\83C\83\8a\83X\83g\93o\98^\8cÄ\82Ñ\8fo\82µ
        /// 
-       NLIB_DECLSPEC NLIB_RESULT NicoMyList_addItem(LPCWSTR video_id);
+       NLIB_DECLSPEC NLIB_RESULT NicoMyList_addItem(LPCTSTR video_id);
 
 
 
index 9078a41..961f62b 100644 (file)
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="nlib_common.c" />
+    <ClCompile Include="nlib_errorMessage.c" />
     <ClCompile Include="nlib_myList.c" />
     <ClCompile Include="nlib_nicoLive.c" />
     <ClCompile Include="nlib_nicoVideoAuth.c" />
index 7b5b6fa..99aef3c 100644 (file)
@@ -36,6 +36,9 @@
     <ClCompile Include="stdAfx.c">
       <Filter>ソース ファイル</Filter>
     </ClCompile>
+    <ClCompile Include="nlib_errorMessage.c">
+      <Filter>ソース ファイル</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="nlib_xmlHandler.h">
index 531506d..385bff6 100644 (file)
@@ -7,8 +7,8 @@ HINTERNET hHttpSession;                 //HINTERNET
 HINTERNET hWatchLiveNicoConnect;
 HINTERNET hNicoVideoConnect;
 
-WCHAR appDataPath[_MAX_PATH];
-WCHAR localAppDataPath[_MAX_PATH];
+TCHAR appDataPath[_MAX_PATH];
+TCHAR localAppDataPath[_MAX_PATH];
 XML_Parser xmlParser;
 static CRITICAL_SECTION playerStatusParserCs;
 
@@ -26,18 +26,20 @@ static INLINE VOID Parser_Finalize();
 
 NLIB_RESULT InitializeNLIB(HINTERNET hInternet){
 
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        hHttpSession = hInternet;
        if(hHttpSession == NULL){
 
-               return NLIB_INITALIZE_FAILED_NETWORK;
+               rslt = NLIB_INITALIZE_FAILED_NETWORK;
+               goto end;
 
        }
 
        hWatchLiveNicoConnect = WinHttpConnect(hHttpSession,WTEXT(WATCH_LIVE_NICO_VIDEO_DOMEINNAME),INTERNET_DEFAULT_HTTP_PORT,0);
 
        if(hHttpSession == NULL){
-
-               return NLIB_INITALIZE_FAILED_NETWORK;
+               rslt = NLIB_INITALIZE_FAILED_NETWORK;
+               goto end;
        }
 
        hNicoVideoConnect = WinHttpConnect(hHttpSession,WWW_NICO_VIDEO_DOMEINNAME,INTERNET_DEFAULT_HTTP_PORT,0);
@@ -61,7 +63,12 @@ NLIB_RESULT InitializeNLIB(HINTERNET hInternet){
        //\83p\81[\83T\82ð\8f\89\8aú\89»
        Parser_Initialize();
 
-       return NLIB_ERR_OK;
+       rslt = NLIB_ERR_OK;
+
+end:
+
+
+       return rslt;
 }
 
 VOID FinalizeNLIB(){
index 08efdd8..7563d96 100644 (file)
@@ -11,7 +11,7 @@
 
 typedef struct nicovideoauth_t{
 
-       WCHAR userSession[LENGTH_256];
+       TCHAR userSession[LENGTH_256];
 
 
 }NicoVideoAuth;
@@ -35,13 +35,13 @@ extern HINTERNET hNicoVideoConnect;
 ///
 ///appData\83t\83H\83\8b\83_
 ///
-extern WCHAR appDataPath[];
+extern TCHAR appDataPath[];
 
 
 ///
 ///localAppDAta\83t\83H\83\8b\83_
 ///
-extern WCHAR localAppDataPath[];
+extern TCHAR localAppDataPath[];
 
 
 ///
index 3060631..173227a 100644 (file)
 ///\83N\83b\83L\81[\8eæ\93¾\8e¸\94s
 #define NLIB_ERR_COOKIE_FAILED                                                                                                 ((NLIB_RESULT)1)
 
-///NLIB\8f\89\8aú\89»\83G\83\89\81[\81F\83l\83b\83g\83\8f\81[\83N\8f\89\8aú\89»\8e¸\94s
+///\83l\83b\83g\83\8f\81[\83N\8f\89\8aú\89»\8e¸\94s
 #define NLIB_INITALIZE_FAILED_NETWORK                                                                                  ((NLIB_RESULT)2)
 
-///\93ü\97Í\82³\82ê\82½\95ú\91\97\94Ô\8d\86\82ª\94F\8e¯\82Å\82«\82È\82¢
-#define NLIB_LIVENO_FAILED_INPUT                                                                                               ((NLIB_RESULT)3)
+///\93ü\97Í\82³\82ê\82½\95ú\91\97\94Ô\8d\86\82ªNULL
+#define NLIB_LIVENO_IS_NULL                                                                                            ((NLIB_RESULT)3)
 
 ///\93ü\97Í\82³\82ê\82½\95ú\91\97\94Ô\8d\86\82ª\92·\82·\82¬\82é
 #define NLIB_LIVENO_FAILED_TOOBIG                                                                                              ((NLIB_RESULT)4)
 #define NLIB_ERR_GETPLAYERSTATUS_NOT_PERMITTED                                                                 ((NLIB_RESULT)23)
 
 ///\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\8eæ\93¾\83G\83\89\81[:require_accept_print_timeshift_ticket\82ª\94­\90\82µ\82½
-#define NLIB_ERR_GETPLAYERSTATUS_NOT_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET             ((NLIB_RESULT)24)
+#define NLIB_ERR_GETPLAYERSTATUS_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET                 ((NLIB_RESULT)24)
 
 ///\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\8eæ\93¾\83G\83\89\81[:tsarchive\82ª\94­\90\82µ\82½
 #define NLIB_ERR_GETPLAYERSTATUS_TSARCHIVE                                                                             ((NLIB_RESULT)25)
 
 
 ///\90\95ú\91\97\82É\90Ú\91±\82µ\82Ä\82¢\82È\82¢
-#define NLIB_ERR_NOT_CONNECT                                                                                                   ((NLIB_RESULT)35)
+#define NLIB_ERR_NOT_LIVECONNECT                                                                                               ((NLIB_RESULT)35)
+
+///\83R\83\81\83\93\83g\91\97\90M\97p\82Ì\83|\83X\83g\83L\81[\8eæ\93¾\8e¸\94s
+#define NLIB_ERR_LIVE_GETPOSTKEY_FAILED                                                                                        ((NLIB_RESULT)36)
+
+///\83G\83\89\81[\83R\81[\83h\82ª\90Ý\92è\82³\82ê\82Ä\82¢\82È\82¢
+#define NLIB_ERR_CODE_NOTSET                                                                                                   ((NLIB_RESULT)0xFFFFFFFF)
 
 
 
diff --git a/nlib/nlib_errorMessage.c b/nlib/nlib_errorMessage.c
new file mode 100644 (file)
index 0000000..63b96cc
--- /dev/null
@@ -0,0 +1,218 @@
+#include "StdAfx.h"
+#include "nlib_include.h"
+
+
+//NLIB_ERR_OK
+static const LPCTSTR NLIB_ERR_OK_STRING = 
+       TEXT("\83G\83\89\81[\82Í\94­\90\82µ\82Ä\82¢\82Ü\82¹\82ñ");
+
+//NLIB_ERR_COOKIE_FAILED
+static const LPCTSTR NLIB_ERR_COOKIE_FAILED_STRING = 
+       TEXT("\83N\83b\83L\81[\8eæ\93¾\82É\8e¸\94s\82µ\82Ü\82µ\82½");
+
+//NLIB_INITALIZE_FAILED_NETWORK
+static const LPCTSTR NLIB_INITALIZE_FAILED_NETWORK_STRING= 
+       TEXT("\83l\83b\83g\83\8f\81[\83N\82Ì\8f\89\8aú\89»\82É\8e¸\94s\82µ\82Ü\82µ\82½");             
+
+//NLIB_LIVENO_IS_NULL
+static const LPCTSTR NLIB_LIVENO_IS_NULL_STRING= 
+       TEXT("\93ü\97Í\82³\82ê\82½\95ú\91\97\94Ô\8d\86\82ªNULL\92l\82Å\82·");
+
+//NLIB_LIVENO_FAILED_TOOBIG
+static const LPCTSTR NLIB_LIVENO_FAILED_TOOBIG_STRING= 
+       TEXT("\93ü\97Í\82³\82ê\82½\95ú\91\97\94Ô\8d\86\82ª\92·\82·\82¬\82Ü\82·");
+
+//NLIB_LIVENO_FAILED_UNDEFEINE
+static const LPCTSTR NLIB_LIVENO_FAILED_UNDEFEINE_STRING= 
+       TEXT("\93ü\97Í\82³\82ê\82½\95ú\91\97\94Ô\8d\86\82ª\90³\82µ\82­\82 \82è\82Ü\82¹\82ñ");   
+
+//NLIB_USERSESSION_FAILED_TOOBIG
+static const LPCTSTR NLIB_USERSESSION_FAILED_TOOBIG_STRING= 
+       TEXT("\83\86\81[\83U\81[\83Z\83b\83V\83\87\83\93\82Ì\95\8e\9a\97ñ\82ª\92·\82·\82¬\82Ü\82·");
+
+//NLIB_GETPLAYERSTATUS_FAILED_CONNECT
+static const LPCTSTR NLIB_GETPLAYERSTATUS_FAILED_CONNECT_STRING= 
+       TEXT("\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\82Ì\90Ú\91±\82É\8e¸\94s\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_INVALID_LV
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_INVALID_LV_STRING= 
+       TEXT("\96³\8cø\82È\95ú\91\97\94Ô\8d\86\82Å\82·");
+
+//NLIB_ERR_GETPLAYERSTATUS_INVALID_THREAD
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_INVALID_THREAD_STRING= 
+       TEXT("\95ú\91\97\83X\83\8c\83b\83h\82ª\8c©\82Â\82©\82è\82Ü\82¹\82ñ\82Å\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_CLOSED
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_CLOSED_STRING= 
+       TEXT("\95ú\91\97\82ª\8fI\97¹\82µ\82Ä\82¢\82Ü\82·");
+
+//NLIB_ERR_GETPLAYERSTATUS_UNKNOWN_ERROR
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_UNKNOWN_ERROR_STRING= 
+       TEXT("\95ú\91\97\90Ú\91±\92\86\82É\95s\96¾\82È\83G\83\89\81[\82ª\94­\90\82µ\82Ü\82µ\82½:unknown_error");
+
+//NLIB_ERR_GETPLAYERSTATUS_SERVER_ERROR
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_SERVER_ERROR_STRING= 
+       TEXT("\95ú\91\97\83T\81[\83o\81[\90Ú\91±\82É\8e¸\94s\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_DELETED
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_DELETED_STRING= 
+       TEXT("\95ú\91\97\82ª\8dí\8f\9c\82³\82ê\82Ä\82¢\82Ü\82·");
+
+//NLIB_ERR_GETPLAYERSTATUS_FULL
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_FULL_STRING= 
+       TEXT("\96\9e\88õ\82Ì\82½\82ß\90Ú\91±\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_PERMISSION_DENIED
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_PERMISSION_DENIED_STRING =
+       TEXT("\95ú\91\97\82É\90Ú\91±\82·\82é\8c \8cÀ\82ª\82 \82è\82Ü\82¹\82ñ");
+
+//NLIB_ERR_GETPLAYERSTATUS_ACCESS_LOCKED
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_ACCESS_LOCKED_STRING=
+       TEXT("\95ú\91\97\82ª\83\8d\83b\83N\82³\82ê\82Ä\82¢\82Ä\90Ú\91±\82Å\82«\82Ü\82¹\82ñ");
+
+//NLIB_ERR_GETPLAYERSTATUS_REQUIRE_COMMUNITY_MEMBER
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_REQUIRE_COMMUNITY_MEMBER_STRING=
+       TEXT("\83R\83~\83\85\83j\83e\83B\8cÀ\92è\95ú\91\97\82Ì\82½\82ß\90Ú\91±\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_COMINGSOON
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_COMINGSOON_STRING=
+       TEXT("\95ú\91\97\82ª\8aJ\8fê\82³\82ê\82Ä\82¢\82È\82¢\82½\82ß\90Ú\91±\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_NOTFOUND
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_NOTFOUND_STRING=
+       TEXT("\95ú\91\97\82ª\8c©\82Â\82©\82è\82Ü\82¹\82ñ\82Å\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_NOTLOGIN
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_NOTLOGIN_STRING=
+       TEXT("\83\8d\83O\83C\83\93\82µ\82Ä\82¢\82È\82¢\82½\82ß\95ú\91\97\82É\90Ú\91±\82Å\82«\82Ü\82¹\82ñ");
+
+//NLIB_ERR_GETPLAYERSTATUS_UNKNOWN
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_UNKNOWN_STRING=
+       TEXT("\95ú\91\97\90Ú\91±\92\86\82É\95s\96¾\82È\83G\83\89\81[\82ª\94­\90\82µ\82Ü\82µ\82½:unknown");
+
+//NLIB_ERR_GETPLAYERSTATUS_MAINTENANCE
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_MAINTENANCE_STRING=
+       TEXT("\83\81\83\93\83e\83i\83\93\83X\92\86\82Å\82·");
+
+//NLIB_ERR_GETPLAYERSTATUS_NOT_PERMITTED
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_NOT_PERMITTED_STRING=
+       TEXT("\8fI\97¹\82µ\82½\95ú\91\97\82©\81A\8cÃ\82¢\95ú\91\97\81A\82 \82é\82¢\82ÍBAN\82³\82ê\82Ä\82¢\82Ü\82·");
+
+//NLIB_ERR_GETPLAYERSTATUS_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET_STRING=
+       TEXT("\83^\83C\83\80\83V\83t\83g\82Ì\8e\8b\92®\8c \97\98\82ª\82 \82è\82Ü\82¹\82ñ");
+
+//NLIB_ERR_GETPLAYERSTATUS_TSARCHIVE
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_TSARCHIVE_STRING=
+       TEXT("\97L\97¿\95ú\91\97\82Ì\83A\81[\83J\83C\83u\8e\8b\92®\8c \97\98\82ª\82È\82¢\82½\82ß\90Ú\91±\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½");
+
+//NLIB_ERR_GETPLAYERSTATUS_USERTIMESHIFT
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_USERTIMESHIFT_STRING=
+       TEXT("\83R\83~\83\85\83j\83e\83B\82É\8eQ\89Á\82µ\82Ä\82¢\82È\82¢\82½\82ß\83^\83C\83\80\83V\83t\83g\82ð\8e\8b\92®\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82¹\82ñ");
+
+//NLIB_ERR_GETPLAYERSTATUS_UNDEFINED
+static const LPCTSTR NLIB_ERR_GETPLAYERSTATUS_UNDEFINED_STRING=
+       TEXT("\83A\83v\83\8a\83P\81[\83V\83\87\83\93\93à\82Å\92è\8b`\82³\82ê\82Ä\82È\82¢\83G\83\89\81[\82ª\94­\90\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_WATCHLIVENICOVIDEO_FAILED_CONNECT
+static const LPCTSTR NLIB_ERR_WATCHLIVENICOVIDEO_FAILED_CONNECT_STRING=
+       TEXT("\83j\83R\90\82Ì\83T\81[\83o\81[\90Ú\91±\82É\8e¸\94s\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_BUFFER_TOOLITTLE
+static const LPCTSTR NLIB_ERR_BUFFER_TOOLITTLE_STRING=
+       TEXT("\93à\95\94\82Å\8am\95Û\82³\82ê\82½\83o\83b\83t\83@\82ª\91«\82è\82Ü\82¹\82ñ");
+
+//NLIB_ERR_FAILED_NETWORK
+static const LPCTSTR NLIB_ERR_FAILED_NETWORK_STRING=
+       TEXT("\83l\83b\83g\83\8f\81[\83N\82É\89½\82ç\82©\82Ì\88Ù\8fí\82ª\94­\90\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_PLAYERSTATUS_ERROR
+static const LPCTSTR NLIB_ERR_PLAYERSTATUS_ERROR_STRING=
+       TEXT("\8eæ\93¾\82µ\82½\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\82ª\83G\83\89\81[\82Å\82·");
+
+//NLIB_ERR_HEARTBEAT_ERROR
+static const LPCTSTR NLIB_ERR_HEARTBEAT_ERROR_STRING=
+       TEXT("\8eæ\93¾\82µ\82½\83n\81[\83g\83r\81[\83g\82ª\83G\83\89\81[\82Å\82·");
+
+//NLIB_ERR_JSON_PARSE
+static const LPCTSTR NLIB_ERR_JSON_PARSE_STRING=
+       TEXT("json\89ð\90Í\92\86\82É\83G\83\89\81[\82ª\94­\90\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_SHELL_FAILED
+static const LPCTSTR NLIB_ERR_SHELL_FAILED_STRING=
+       TEXT("shell\83R\83}\83\93\83h\8eÀ\8ds\82É\8e¸\94s\82µ\82Ü\82µ\82½");
+
+//NLIB_ERR_NOT_LIVECONNECT
+static const LPCTSTR NLIB_ERR_NOT_LIVECONNECT_STRING=
+       TEXT("\90\95ú\91\97\82É\90Ú\91±\82µ\82Ä\82¢\82Ü\82¹\82ñ");
+
+//NLIB_ERR_LIVE_GETPOSTKEY_FAILED
+static const LPCTSTR NLIB_ERR_LIVE_GETPOSTKEY_FAILED_STRING=
+       TEXT("\83R\83\81\83\93\83g\91\97\90M\97p\82Ì\83|\83X\83g\83L\81[\8eæ\93¾\82É\8e¸\94s\82µ\82Ü\82µ\82½");
+
+
+//NLIB_ERR_CODE_NOTSET
+static const LPCTSTR NLIB_ERR_CODE_NOTSET_STRING=
+       TEXT("\83G\83\89\81[\83R\81[\83h\82ª\90Ý\92è\82³\82ê\82Ä\82¢\82Ü\82¹\82ñ\81B\83\89\83C\83u\83\89\83\8a\82Ì\8eÀ\91\95\82É\89½\82ç\82©\82Ì\96â\91è\82ª\82 \82é\82Ì\82Å\8aJ\94­\8eÒ\82É\95ñ\8d\90\82µ\82Ä\82­\82¾\82³\82¢");
+
+#define NLIB_ERRMESSAGE_TABLE_START(c) switch(c){
+
+
+#define NLIB_ERRMESSAGE_CASE(m,c)\
+case c:{\
+       m = c##_STRING;\
+       break;\
+}
+
+#define NLIB_ERRMESSAGE_TABLE_END()            }
+
+LPCTSTR NLIB_GetErrorMessage(NLIB_RESULT rsltCode){
+
+       static const LPCTSTR INI_ERRMES = TEXT("");
+       LPCTSTR errmes = INI_ERRMES;
+
+       NLIB_ERRMESSAGE_TABLE_START(rsltCode)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_OK)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_COOKIE_FAILED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_INITALIZE_FAILED_NETWORK)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_LIVENO_IS_NULL)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_LIVENO_FAILED_TOOBIG)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_LIVENO_FAILED_UNDEFEINE)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_USERSESSION_FAILED_TOOBIG)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_GETPLAYERSTATUS_FAILED_CONNECT)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_INVALID_LV)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_INVALID_THREAD)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_CLOSED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_UNKNOWN_ERROR)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_SERVER_ERROR)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_DELETED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_FULL)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_PERMISSION_DENIED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_ACCESS_LOCKED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_REQUIRE_COMMUNITY_MEMBER)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_COMINGSOON)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_NOTFOUND)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_NOTLOGIN)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_UNKNOWN)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_MAINTENANCE)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_NOT_PERMITTED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_TSARCHIVE)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_USERTIMESHIFT)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_UNDEFINED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_WATCHLIVENICOVIDEO_FAILED_CONNECT)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_BUFFER_TOOLITTLE)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_FAILED_NETWORK)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_PLAYERSTATUS_ERROR)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_HEARTBEAT_ERROR)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_JSON_PARSE)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_SHELL_FAILED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_NOT_LIVECONNECT)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_LIVE_GETPOSTKEY_FAILED)
+               NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_CODE_NOTSET)
+       NLIB_ERRMESSAGE_TABLE_END()
+       
+
+
+       return errmes;
+}
\ No newline at end of file
index 0e55b41..7e4ebea 100644 (file)
@@ -48,9 +48,9 @@ typedef struct {
 ///
 ///\83}\83C\83\8a\83X\83g\88ê\97\97\8eæ\93¾\8b¤\92Ê\8f\88\97\9d
 ///
-static NLIB_RESULT NicoMyList_getMyListInternal(NicoVideoAuth_P pAuth,LPCWSTR objectName,NicoMyListCallBack callback,LPVOID option);
+static NLIB_RESULT NicoMyList_getMyListInternal(NicoVideoAuth_P pAuth,LPCTSTR objectName,NicoMyListCallBack callback,LPVOID option);
 
-static NLIB_RESULT NicoMyList_common(NicoVideoAuth_P pAuth,LPCWSTR objectName,JSONStructEventHandler structHandler,JSONDataEventHandler dataHandler,JSONStructEndEventHandler endHandler,LPVOID item);
+static NLIB_RESULT NicoMyList_common(NicoVideoAuth_P pAuth,LPCTSTR objectName,JSONStructEventHandler structHandler,JSONDataEventHandler dataHandler,JSONStructEndEventHandler endHandler,LPVOID item);
 
 static NicoMyListItem_P NicoMyListItem_new();
 
@@ -74,7 +74,7 @@ static JSONVoid myListItemDataEndEventHandler(JSONVoid *option,JSONUInt thisHier
 
 
 
-static NLIB_RESULT jsonStrCpy(LPWSTR buf,LPCWSTR in,SIZE_T size);
+static NLIB_RESULT jsonStrCpy(LPTSTR buf,LPCTSTR in,SIZE_T size);
 
 
 
@@ -84,8 +84,8 @@ static NLIB_RESULT jsonStrCpy(LPWSTR buf,LPCWSTR in,SIZE_T size);
 //
 #define jsonToArray(arr,in) jsonStrCpy((arr),(in),sizeof(arr) / sizeof(arr[0]))
 
-#define jsonDataDecimal(nmc,dt)        if((valueType) == JSONTypeDecimal && wcscmp((name),(nmc)) == 0){(dt) = wcstoul((LPCWSTR)param,NULL,10);goto jsondataend;}
-#define jsonDataString(nmc,dt,err)     if((valueType) == JSONTypeString && wcscmp((name),(nmc)) == 0){(err) = jsonToArray((dt),(LPCWSTR)param);goto jsondataend;}
+#define jsonDataDecimal(nmc,dt)        if((valueType) == JSONTypeDecimal && wcscmp((name),(nmc)) == 0){(dt) = wcstoul((LPCTSTR)param,NULL,10);goto jsondataend;}
+#define jsonDataString(nmc,dt,err)     if((valueType) == JSONTypeString && wcscmp((name),(nmc)) == 0){(err) = jsonToArray((dt),(LPCTSTR)param);goto jsondataend;}
 
 
 ///
@@ -94,19 +94,19 @@ static NLIB_RESULT jsonStrCpy(LPWSTR buf,LPCWSTR in,SIZE_T size);
 NLIB_RESULT NicoMyList_getDefList(NicoVideoAuth_P pAuth,NicoMyListCallBack callback,LPVOID option){
 
        
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        
-       
-       NLIB_RESULT rslt = NicoMyList_getMyListInternal(pAuth,L"api/deflist/list",callback,option);
+       rslt = NicoMyList_getMyListInternal(pAuth,L"api/deflist/list",callback,option);
 
        
        return rslt;
        
 }
 
-NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyList(NicoVideoAuth_P pAuth,LPCWSTR id,NicoMyListCallBack callback,LPVOID option){
+NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyList(NicoVideoAuth_P pAuth,LPCTSTR id,NicoMyListCallBack callback,LPVOID option){
 
-       WCHAR objectName[LENGTH_512];
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       TCHAR objectName[LENGTH_512];
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        if(wcslen(id) > ARRAY_LENGTH(objectName) / 2){
                return NLIB_ERR_BUFFER_TOOLITTLE;
        }
@@ -118,8 +118,8 @@ NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyList(NicoVideoAuth_P pAuth,LPCWSTR id,
 }
 
 
-static NLIB_RESULT NicoMyList_getMyListInternal(NicoVideoAuth_P pAuth,LPCWSTR objectName,NicoMyListCallBack callback,LPVOID option){
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+static NLIB_RESULT NicoMyList_getMyListInternal(NicoVideoAuth_P pAuth,LPCTSTR objectName,NicoMyListCallBack callback,LPVOID option){
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        NicoMyListItemContainer itemContainer;
        ZeroMemory(&itemContainer,sizeof(itemContainer));
        itemContainer.callBack = callback;
@@ -133,7 +133,7 @@ static NLIB_RESULT NicoMyList_getMyListInternal(NicoVideoAuth_P pAuth,LPCWSTR ob
 
 NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyListGroup(NicoVideoAuth_P pAuth,NicoMyListGroupCallBack callback,LPVOID option){
 
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        NicoMyListContainer listContainer;
        ZeroMemory(&listContainer,sizeof(listContainer));
        listContainer.callBack = callback;
@@ -144,11 +144,11 @@ NLIB_DECLSPEC NLIB_RESULT NicoMyList_getMyListGroup(NicoVideoAuth_P pAuth,NicoMy
        NicoMyList_delete(&listContainer.pMyList);
        return rslt;
 }
-NLIB_DECLSPEC NLIB_RESULT NicoMyList_addItem(LPCWSTR video_id){
+NLIB_DECLSPEC NLIB_RESULT NicoMyList_addItem(LPCTSTR video_id){
 
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
 
-       WCHAR addApi[LENGTH_512] = {L"http://www.nicovideo.jp/mylist_add/video/"};
+       TCHAR addApi[LENGTH_512] = {L"http://www.nicovideo.jp/mylist_add/video/"};
        if(wcslen(video_id) > ARRAY_LENGTH(addApi) /2){
 
                goto buffererr;
@@ -159,6 +159,7 @@ NLIB_DECLSPEC NLIB_RESULT NicoMyList_addItem(LPCWSTR video_id){
                goto shellerr;
        }
        
+       rslt = NLIB_ERR_OK;
 
        
 end:
@@ -178,13 +179,13 @@ buffererr:
 //\83v\83\89\83C\83x\81[\83g\8aÖ\90\94
 //
 
-static NLIB_RESULT NicoMyList_common(NicoVideoAuth_P pAuth,LPCWSTR objectName,JSONStructEventHandler structHandler,JSONDataEventHandler dataHandler,JSONStructEndEventHandler endHandler,LPVOID item){
+static NLIB_RESULT NicoMyList_common(NicoVideoAuth_P pAuth,LPCTSTR objectName,JSONStructEventHandler structHandler,JSONDataEventHandler dataHandler,JSONStructEndEventHandler endHandler,LPVOID item){
 
        //\95Ï\90\94\90é\8c¾\81A\8f\89\8aú\89»
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        //HINTERNET hNicoVideoSession = NULL;
        HINTERNET hrequest = NULL;
-       WCHAR sendBuffer[LENGTH_512] = {L"Cookie: "};
+       TCHAR sendBuffer[LENGTH_512] = {L"Cookie: "};
        JSONParser_P jsonParser = JSONParser_new();
        
 
@@ -207,7 +208,7 @@ static NLIB_RESULT NicoMyList_common(NicoVideoAuth_P pAuth,LPCWSTR objectName,JS
        wcscat(sendBuffer,pAuth->userSession);
        //hNicoVideoSession = WinHttpConnect(hHttpSession,WWW_NICO_VIDEO_DOMEINNAME,INTERNET_DEFAULT_HTTP_PORT,0);
 
-       hrequest = WinHttpOpenRequest(hNicoVideoConnect,L"GET",objectName,L"1.1",(LPCWSTR)WINHTTP_NO_REFERER,(LPCWSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
+       hrequest = WinHttpOpenRequest(hNicoVideoConnect,L"GET",objectName,L"1.1",(LPCTSTR)WINHTTP_NO_REFERER,(LPCTSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
 
        if(hrequest == NULL){
                goto networkerr;
@@ -267,6 +268,8 @@ static NLIB_RESULT NicoMyList_common(NicoVideoAuth_P pAuth,LPCWSTR objectName,JS
                }
        }
 
+       rslt = NLIB_ERR_OK;
+
 end:
        free(readBuffer);
        JSONParser_delete(&jsonParser);
@@ -383,27 +386,27 @@ static JSONVoid myListItemDataEventHandler(JSONVoid *option,JSONUInt thisHierarc
 
                        if(valueType == JSONTypeDecimal && wcscmp(name,L"create_time") == 0){
 
-                               self->pitem->create_time = wcstoul((LPCWSTR)param,NULL,10);
+                               self->pitem->create_time = wcstoul((LPCTSTR)param,NULL,10);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"description") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->description,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->description,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"item_id") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->item_id,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->item_id,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"item_type") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->item_type,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->item_type,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeDecimal && wcscmp(name,L"update_time") == 0){
 
-                               self->pitem->update_time = wcstoul((LPCWSTR)param,NULL,10);
+                               self->pitem->update_time = wcstoul((LPCTSTR)param,NULL,10);
 
                        } else if(valueType == JSONTypeDecimal && wcscmp(name,L"watch") == 0){
 
-                               self->pitem->watch = wcstoul((LPCWSTR)param,NULL,10);
+                               self->pitem->watch = wcstoul((LPCTSTR)param,NULL,10);
                        }
 
                        break;
@@ -412,55 +415,55 @@ static JSONVoid myListItemDataEventHandler(JSONVoid *option,JSONUInt thisHierarc
 
                        if(valueType == JSONTypeString && wcscmp(name,L"deleted") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.deleted,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.deleted,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeDecimal && wcscmp(name,L"first_retrieve") == 0){
 
-                               self->pitem->itemData.first_retrieve = wcstoul((LPCWSTR)param,NULL,10);
+                               self->pitem->itemData.first_retrieve = wcstoul((LPCTSTR)param,NULL,10);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"group_type") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.group_type,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.group_type,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"last_res_body") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.last_res_body,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.last_res_body,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"length_seconds") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.length_seconds,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.length_seconds,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"mylist_counter") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.mylist_counter,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.mylist_counter,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"num_res") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.num_res,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.num_res,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"thumbnail_url") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.thumbnail_url,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.thumbnail_url,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"title") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.title,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.title,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeDecimal && wcscmp(name,L"update_time") == 0){
 
-                               self->pitem->itemData.update_time = wcstoul((LPCWSTR)param,NULL,10);
+                               self->pitem->itemData.update_time = wcstoul((LPCTSTR)param,NULL,10);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"video_id") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.video_id,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.video_id,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"view_counter") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.view_counter,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.view_counter,(LPCTSTR)param);
 
                        } else if(valueType == JSONTypeString && wcscmp(name,L"watch_id") == 0){
 
-                               self->container.errcode = jsonToArray(self->pitem->itemData.watch_id,(LPCWSTR)param);
+                               self->container.errcode = jsonToArray(self->pitem->itemData.watch_id,(LPCTSTR)param);
 
                        }
 
@@ -570,7 +573,7 @@ static JSONVoid myListStructEndEventHandler(JSONVoid *option,JSONUInt thisHierar
        return;
 }
 
-static NLIB_RESULT jsonStrCpy(LPWSTR buf,LPCWSTR in,SIZE_T size){
+static NLIB_RESULT jsonStrCpy(LPTSTR buf,LPCTSTR in,SIZE_T size){
 
        NLIB_RESULT rslt = NLIB_ERR_OK;
 
@@ -585,4 +588,9 @@ static NLIB_RESULT jsonStrCpy(LPWSTR buf,LPCWSTR in,SIZE_T size){
        }
 
        return rslt;
-}
\ No newline at end of file
+}
+
+
+
+
+
index 6f70f09..6e84d42 100644 (file)
@@ -1 +1,52 @@
 #pragma once
+
+
+///
+///\83}\83C\83\8a\83X\83g\93®\89æ\83f\81[\83^
+///
+typedef struct nicoitemdata_t{
+       TCHAR deleted[LENGTH_2048];
+       time_t first_retrieve;
+       TCHAR group_type[LENGTH_2048];
+       TCHAR last_res_body[LENGTH_2048];
+       TCHAR length_seconds[LENGTH_2048];
+       TCHAR mylist_counter[LENGTH_2048];
+       TCHAR num_res[LENGTH_2048];
+       TCHAR thumbnail_url[LENGTH_2048];
+       TCHAR title[LENGTH_2048];
+       time_t update_time;
+       TCHAR video_id[LENGTH_2048];
+       TCHAR view_counter[LENGTH_2048];
+       TCHAR watch_id[LENGTH_2048];
+}NicoItemData,*NicoItemData_P;
+
+///
+///\83j\83R\83j\83R\93®\89æ\82¨\8bC\82É\93ü\82è\93®\89æ
+///
+typedef struct nicomylistitem_t{
+       time_t create_time;
+       TCHAR description[LENGTH_2048];
+       NicoItemData itemData;
+       TCHAR item_id[LENGTH_2048];
+       TCHAR item_type[LENGTH_2048];
+       time_t update_time;
+       UINT_PTR watch;
+}NicoMyListItem,*NicoMyListItem_P;
+
+
+///
+///\83j\83R\83j\83R\93®\89æ\83}\83C\83\8a\83X\83g
+///
+typedef struct nicomylist_t{
+       time_t create_time;
+       TCHAR default_sort[LENGTH_256];
+       TCHAR description[LENGTH_2048];
+       TCHAR icon_id[LENGTH_256];
+       TCHAR id[LENGTH_256];
+       TCHAR name[LENGTH_2048];
+       TCHAR publicType[LENGTH_256];
+       TCHAR sort_order[LENGTH_256];
+       time_t update_time;
+       TCHAR user_id[LENGTH_256];
+
+}NicoMyList,*NicoMyList_P;
\ No newline at end of file
index f01d112..7456c42 100644 (file)
@@ -76,7 +76,7 @@ static CRITICAL_SECTION heartBeatCs;
 ///
 ///\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\8eæ\93¾
 ///
-static INLINE NLIB_RESULT GetPlayerStatus(NicoLivePlayerStatus_P pPlayerStatus,LPCWSTR userSession,HINTERNET hConnect,LPVOID buffer);
+static INLINE NLIB_RESULT GetPlayerStatus(NicoLivePlayerStatus_P pPlayerStatus,LPCTSTR userSession,HINTERNET hConnect,LPVOID buffer);
 
 ///
 ///nicoLiveHistory\8eæ\93¾
@@ -126,7 +126,7 @@ static unsigned int loopCommon(NicoLiveStream_P self,WSAEVENT sendEvent,WSAEVENT
 ///
 ///\83R\83\81\83\93\83g\89ð\90Í\8aÖ\90\94
 ///
-static VOID  NicoLiveParseComment(NicoLiveStream_P self,LPWSTR commentBuf,UINT_PTR endSize,LPWSTR* mailCountBuf,SIZE_T* mailCountBufSize,SIZE_T* commentBufSize);
+static VOID  NicoLiveParseComment(NicoLiveStream_P self,LPTSTR commentBuf,UINT_PTR endSize,LPTSTR* mailCountBuf,SIZE_T* mailCountBufSize,SIZE_T* commentBufSize);
 
 static void NicoLiveError(void *buf);
 
@@ -138,7 +138,7 @@ static VOID OnSendKeepAllive(NicoLiveStream_P self);
 ///
 ///\83\\83P\83b\83g\8eæ\93¾\8aÖ\90\94
 ///
-static INLINE SOCKET GetConectedSocket(LPCWSTR nordName,LPCWSTR port,int socktype,int addr_famiry,int protocol);
+static INLINE SOCKET GetConectedSocket(LPCTSTR nordName,LPCTSTR port,int socktype,int addr_famiry,int protocol);
 
 
 StreamStatus_P NicoLiveStream_getStreamStatus(NicoLiveStream_P self){
@@ -154,12 +154,12 @@ BOOL Initialize_NicoLive(){
 
        //\83n\81[\83g\83r\81[\83g\83R\83\93\83e\83i\8f\89\8aú\89»
        ZeroMemory(&heartBeatContainer,sizeof(heartBeatContainer));
-       heartBeatContainer.is_restrictSize = sizeof(WCHAR) * LENGTH_1024;
-       heartBeatContainer.is_restrictBuff = (LPWSTR)calloc(1,heartBeatContainer.is_restrictSize);
+       heartBeatContainer.is_restrictSize = sizeof(TCHAR) * LENGTH_1024;
+       heartBeatContainer.is_restrictBuff = (LPTSTR)calloc(1,heartBeatContainer.is_restrictSize);
        heartBeatContainer.heartBeat.is_restrict = heartBeatContainer.is_restrictBuff;
 
-       heartBeatContainer.ticketSize = sizeof(WCHAR) * LENGTH_1024;
-       heartBeatContainer.ticketBuff = (LPWSTR)calloc(1,heartBeatContainer.ticketSize);
+       heartBeatContainer.ticketSize = sizeof(TCHAR) * LENGTH_1024;
+       heartBeatContainer.ticketBuff = (LPTSTR)calloc(1,heartBeatContainer.ticketSize);
        heartBeatContainer.heartBeat.ticket = heartBeatContainer.ticketBuff;
 
        InitializeCriticalSection(&heartBeatCs);
@@ -407,12 +407,12 @@ INT_PTR NicoLiveStream_getResFrom(NicoLiveStream_P self){
        return (-1) * self->res_from;
 }
 
-NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCWSTR url,NicoRecvCallBack callback,LPVOID option){
+NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCTSTR url,NicoRecvCallBack callback,LPVOID option){
 
 #define NICOLIVE_CONNECTIONSTREAM_COOKIE_COUNT         1
 #define LIVENO_LENGTH                                                          LENGTH_NICOLIVEID
 
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
 
 
 
@@ -421,10 +421,10 @@ NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVid
 
 
        //url\82©\82ç\90Ú\91±\94Ô\8d\86\82ð\92\8a\8fo
-       LPCWSTR pInputLiveNo = url;
-       LPCWSTR psrech = wcsstr(url,L"http://");
-       LPCWSTR pInputLiveNoEnd;
-       WCHAR liveNo[LIVENO_LENGTH] = {0};
+       LPCTSTR pInputLiveNo = url;
+       LPCTSTR psrech = wcsstr(url,L"http://");
+       LPCTSTR pInputLiveNoEnd;
+       TCHAR liveNo[LIVENO_LENGTH] = {0};
        
 
        if(self == NULL)goto end;
@@ -454,7 +454,7 @@ NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVid
 
        if(pInputLiveNo == NULL){
 
-               rslt = NLIB_LIVENO_FAILED_INPUT;
+               rslt = NLIB_LIVENO_IS_NULL;
                goto end;
 
        }else if(pInputLiveNoEnd - pInputLiveNo + 2 >= LIVENO_LENGTH - 1){
@@ -492,14 +492,14 @@ NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVid
 
 
        {
-               WCHAR objectName[LENGTH_256] = {L"api/getplayerstatus?v="};
+               TCHAR objectName[LENGTH_256] = {L"api/getplayerstatus?v="};
                wcsncat(objectName,liveNo,sizeof(objectName) / sizeof(objectName[0]));
 
 
 
        
 
-               self->sessionManager.getPlayerStatusSession = WinHttpOpenRequest(hWatchLiveNicoConnect,L"GET",objectName,L"1.1",(LPCWSTR)WINHTTP_NO_REFERER,(LPCWSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
+               self->sessionManager.getPlayerStatusSession = WinHttpOpenRequest(hWatchLiveNicoConnect,L"GET",objectName,L"1.1",(LPCTSTR)WINHTTP_NO_REFERER,(LPCTSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
        }
 
        //\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\8eæ\93¾
@@ -524,6 +524,8 @@ NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVid
 
        self->isConnecting = TRUE;
 
+
+       rslt = NLIB_ERR_OK;
        //nicoLiveHistory\82ð\8eæ\93¾(\95K\97v\82È\82µ\81H)
        //GetNicoLiveHistory(self,hWatchLiveNicVideo);
 
@@ -537,10 +539,10 @@ end:
 NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self){
 
        
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
 
        if(self->isConnecting == FALSE){
-               rslt = NLIB_ERR_NOT_CONNECT;
+               rslt = NLIB_ERR_NOT_LIVECONNECT;
                goto end;
        }
        if(self == NULL || self->playerStatus.error != NLIB_ERR_OK){
@@ -558,9 +560,9 @@ NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self){
                const UINT_PTR buflen = LENGTH_65536;
                LPVOID buffer = self->sessionManager.buffer;
         
-               LPWSTR objectName = (LPWSTR)buffer;
-               LPWSTR indexPtr;
-               //LPWSTR sendBuffer = (LPWSTR)&objectName[LENGTH_4096];
+               LPTSTR objectName = (LPTSTR)buffer;
+               LPTSTR indexPtr;
+               //LPTSTR sendBuffer = (LPTSTR)&objectName[LENGTH_4096];
                LPSTR recvBuffer = (LPSTR)&objectName[LENGTH_4096];
                DWORD readSize;
                DWORD statusCode;
@@ -579,7 +581,7 @@ NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self){
 
        
                if(self->sessionManager.heartBeatSession == NULL){
-                       self->sessionManager.heartBeatSession = WinHttpOpenRequest(hWatchLiveNicoConnect,L"GET",objectName,L"1.1",(LPCWSTR)WINHTTP_NO_REFERER,(LPCWSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
+                       self->sessionManager.heartBeatSession = WinHttpOpenRequest(hWatchLiveNicoConnect,L"GET",objectName,L"1.1",(LPCTSTR)WINHTTP_NO_REFERER,(LPCTSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
                
                }
                if(WinHttpSendRequest(self->sessionManager.heartBeatSession,self->userSession,-1,WINHTTP_NO_REQUEST_DATA,0,0,0) == FALSE){
@@ -645,6 +647,8 @@ NLIB_RESULT NicoLiveStream_sendHeartBeat(NicoLiveStream_P self){
 
 
                }
+
+               rslt = NLIB_ERR_OK;
 connectend:
                ZeroMemory(self->sessionManager.buffer,sizeof(self->sessionManager.buffer));
                LeaveCriticalSection(&self->sessionManager.cs);
@@ -700,9 +704,9 @@ end:
 #define NICOLIVE_SENDCHATBUFLEN                        LENGTH_4096
 #define NICOLIVE_SENDFORMAT                            "<chat thread=\"%d\" ticket=\"%S\"  postkey=\"%s\" user_id=\"%S\" premium=\"%d\" locale=\"%S\" vpos=\"%ld\"%s>%S</chat>"
 
-NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWSTR *mail,LPCWSTR *extends){
+NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCTSTR chatbuf,LPCTSTR *mail,LPCTSTR *extends){
 
-       NLIB_RESULT rslt = NLIB_ERR_OK;
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        EnterCriticalSection(&self->sessionManager.cs);
        
        {
@@ -711,8 +715,8 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                LPSTR postKey;
                LPSTR postKeyBuf = (LPSTR)chunk;
-               LPWSTR postKeyReqBuf = (LPWSTR)&postKeyBuf[NICOLIVE_SENDCHATBUFLEN];
-               LPWSTR cookieBuf = &postKeyReqBuf[NICOLIVE_SENDCHATBUFLEN];
+               LPTSTR postKeyReqBuf = (LPTSTR)&postKeyBuf[NICOLIVE_SENDCHATBUFLEN];
+               LPTSTR cookieBuf = &postKeyReqBuf[NICOLIVE_SENDCHATBUFLEN];
                DWORD statusCode;
                DWORD statusCodeSize = sizeof(statusCode);
                DWORD readSize;
@@ -722,13 +726,13 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
                
 
                if(self->isConnecting == FALSE){
-                       rslt = NLIB_ERR_NOT_CONNECT;
-                       goto end;
+                       rslt = NLIB_ERR_NOT_LIVECONNECT;
+                       goto errorend;
                }
                if(chatbuf == NULL || wcslen(chatbuf) >= LENGTH_1024){
 
                        rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                       goto end;
+                       goto errorend;
 
                }
 
@@ -737,7 +741,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
                _swprintf(postKeyReqBuf,L"api/getpostkey?thread=%u&block_no=%u",self->playerStatus.ms.thread,self->chatManager.chatNo / 100);
 
                //hWatchLiveNicoVideo = WinHttpConnect(hHttpSession,WTEXT(WATCH_LIVE_NICO_VIDEO_DOMEINNAME),INTERNET_DEFAULT_HTTP_PORT,0);
-               hGetPostKeySession = WinHttpOpenRequest(hWatchLiveNicoConnect,L"GET",postKeyReqBuf,L"1.1",(LPCWSTR)WINHTTP_NO_REFERER,(LPCWSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
+               hGetPostKeySession = WinHttpOpenRequest(hWatchLiveNicoConnect,L"GET",postKeyReqBuf,L"1.1",(LPCTSTR)WINHTTP_NO_REFERER,(LPCTSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
 
 
                //_swprintf(cookieBuf,L"Cookie: %s; %s",self->userSession,self->nicoLiveHistory);
@@ -745,29 +749,29 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                if(WinHttpSendRequest(hGetPostKeySession,self->userSession,-1,WINHTTP_NO_REQUEST_DATA,0,0,0) == FALSE){
 
-                       rslt = NLIB_GETPLAYERSTATUS_FAILED_CONNECT;
-                       goto end;
+                       rslt = NLIB_ERR_LIVE_GETPOSTKEY_FAILED;
+                       goto errorend;
 
                }
 
 
                if(WinHttpReceiveResponse(hGetPostKeySession,NULL) == FALSE){
 
-                       rslt = NLIB_GETPLAYERSTATUS_FAILED_CONNECT;
-                       goto end;
+                       rslt = NLIB_ERR_LIVE_GETPOSTKEY_FAILED;
+                       goto errorend;
 
                }
 
 
                if (WinHttpQueryHeaders(hGetPostKeySession,WINHTTP_QUERY_STATUS_CODE | WINHTTP_QUERY_FLAG_NUMBER,WINHTTP_HEADER_NAME_BY_INDEX,&statusCode,&statusCodeSize,WINHTTP_NO_HEADER_INDEX) == FALSE){
-                       rslt = NLIB_GETPLAYERSTATUS_FAILED_CONNECT;
-                       goto end;
+                       rslt = NLIB_ERR_LIVE_GETPOSTKEY_FAILED;
+                       goto errorend;
                }
 
 
                if (HTTP_STATUS_OK != statusCode){
-                       rslt = NLIB_GETPLAYERSTATUS_FAILED_CONNECT;
-                       goto end;
+                       rslt = NLIB_ERR_LIVE_GETPOSTKEY_FAILED;
+                       goto errorend;
                }
 
 
@@ -776,8 +780,8 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                if(ReadHttpBody(hGetPostKeySession,(LPBYTE)postKeyBuf,buflen,&readSize) == FALSE){
 
-                       rslt = NLIB_GETPLAYERSTATUS_FAILED_CONNECT;
-                       goto end;
+                       rslt = NLIB_ERR_LIVE_GETPOSTKEY_FAILED;
+                       goto errorend;
 
                }
                postKeyBuf[readSize] = '\0';
@@ -805,7 +809,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
                                len = NICOLIVE_SENDCHATBUFLEN - (indexPtr - mailBuf) - 1;
                                if(GetLenToMB(CP_UTF8,mail[0]) >= len){
                                        rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                                       goto end;
+                                       goto errorend;
 
                                }
 
@@ -823,7 +827,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                                                if(GetLenToMB(CP_UTF8,mail[0]) >= len){
                                                        rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                                                       goto end;
+                                                       goto errorend;
 
                                                }
 
@@ -854,7 +858,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                                if(GetLenToMB(CP_UTF8,extends[0]) >= len){
                                        rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                                       goto end;
+                                       goto errorend;
 
                                }
                                WideToMB(CP_UTF8,extends[0],indexPtr,len);
@@ -869,7 +873,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                                if(GetLenToMB(CP_UTF8,extends[1]) >= len){
                                        rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                                       goto end;
+                                       goto errorend;
 
                                }
                                WideToMB(CP_UTF8,extends[1],indexPtr,len);
@@ -884,7 +888,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                                        if(GetLenToMB(CP_UTF8,extends[0]) >= len){
                                                rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                                               goto end;
+                                               goto errorend;
 
                                        }
                                        WideToMB(CP_UTF8,extends[0],indexPtr,len);
@@ -899,7 +903,7 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
 
                                        if(GetLenToMB(CP_UTF8,extends[1]) >= len){
                                                rslt = NLIB_ERR_BUFFER_TOOLITTLE;
-                                               goto end;
+                                               goto errorend;
 
                                        }
                                        WideToMB(CP_UTF8,extends[1],indexPtr,len);
@@ -983,9 +987,9 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
                                strcpy(indexPtr,">");
                                indexPtr += strlen(indexPtr);
                                {
-                                       LPWSTR sendBuf = (LPWSTR)&buffer[NICOLIVE_SENDCHATBUFLEN * 4];
-                                       LPWSTR sendPtr = sendBuf;
-                                       LPCWSTR endPtr= chatbuf + wcslen(chatbuf);
+                                       LPTSTR sendBuf = (LPTSTR)&buffer[NICOLIVE_SENDCHATBUFLEN * 4];
+                                       LPTSTR sendPtr = sendBuf;
+                                       LPCTSTR endPtr= chatbuf + wcslen(chatbuf);
 
 
                                        //convertTEXT(indexPtr,chatbuf,indexPtr,endPtr);
@@ -1043,14 +1047,15 @@ NLIB_RESULT NicoLiveStream_sendChat(NicoLiveStream_P self,LPCWSTR chatbuf,LPCWST
                        }
                }
 
+               rslt = NLIB_ERR_OK;
                
-end:
+errorend:
        
-       WinHttpCloseHandle(hGetPostKeySession);
+               WinHttpCloseHandle(hGetPostKeySession);
 
-       ZeroMemory(self->sessionManager.buffer,sizeof(self->sessionManager.buffer));
-       LeaveCriticalSection(&self->sessionManager.cs);
-       }
+               ZeroMemory(self->sessionManager.buffer,sizeof(self->sessionManager.buffer));
+               LeaveCriticalSection(&self->sessionManager.cs);
+               }
 
 
 
@@ -1070,7 +1075,7 @@ end:
 
 
 
-NLIB_RESULT GetPlayerStatus(NicoLivePlayerStatus_P self,LPCWSTR userSession,HINTERNET hConnect,LPVOID buffer){
+NLIB_RESULT GetPlayerStatus(NicoLivePlayerStatus_P self,LPCTSTR userSession,HINTERNET hConnect,LPVOID buffer){
 
        NLIB_RESULT rslt = NLIB_ERR_OK;
 
@@ -1080,7 +1085,7 @@ NLIB_RESULT GetPlayerStatus(NicoLivePlayerStatus_P self,LPCWSTR userSession,HINT
                //HINTERNET hGetPlayerStatusRequest = NULL;
                const UINT_PTR buflen = LENGTH_65536;
                //LPVOID buffer = ;
-               //LPWSTR sendBuffer;
+               //LPTSTR sendBuffer;
                LPSTR recvBuffer = (LPSTR)buffer;
                DWORD readSize;
                DWORD statusCode;
@@ -1165,8 +1170,8 @@ static INLINE NLIB_RESULT GetNicoLiveHistory(NicoLiveStream_P self,HINTERNET hCo
        HINTERNET hStreamBrowse = NULL;
 
 
-       WCHAR objectName[GETNICOLIVEHIS_OBJNAMELENGTH] = {L"/watch/"};
-       WCHAR cookie[GETNICOLIVEHIS_COOKIELENGTH] = {L"Cookie: "};
+       TCHAR objectName[GETNICOLIVEHIS_OBJNAMELENGTH] = {L"/watch/"};
+       TCHAR cookie[GETNICOLIVEHIS_COOKIELENGTH] = {L"Cookie: "};
        DWORD statusCode;
        DWORD statusCodeSize = sizeof(statusCode);
        DWORD chunkSize = LENGTH_65536;
@@ -1174,7 +1179,7 @@ static INLINE NLIB_RESULT GetNicoLiveHistory(NicoLiveStream_P self,HINTERNET hCo
        
 
 
-       LPWSTR buffer = (LPWSTR)chunkSize;
+       LPTSTR buffer = (LPTSTR)chunkSize;
 
 
 
@@ -1193,7 +1198,7 @@ static INLINE NLIB_RESULT GetNicoLiveHistory(NicoLiveStream_P self,HINTERNET hCo
 
        
 
-       hStreamBrowse = WinHttpOpenRequest(hNicoVideoConnect,L"GET",objectName,L"1.1",(LPCWSTR)WINHTTP_NO_REFERER,(LPCWSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
+       hStreamBrowse = WinHttpOpenRequest(hNicoVideoConnect,L"GET",objectName,L"1.1",(LPCTSTR)WINHTTP_NO_REFERER,(LPCTSTR*)WINHTTP_DEFAULT_ACCEPT_TYPES,0);
 
 
 
@@ -1231,9 +1236,9 @@ static INLINE NLIB_RESULT GetNicoLiveHistory(NicoLiveStream_P self,HINTERNET hCo
        }
 
        {
-               LPWSTR start =wcsstr(buffer,L"nicolivehistory=");
+               LPTSTR start =wcsstr(buffer,L"nicolivehistory=");
 
-               LPWSTR end = wcsstr(start,L";");
+               LPTSTR end = wcsstr(start,L";");
 
                UINT_PTR length = end - start;
 
@@ -1389,7 +1394,7 @@ static VOID OnSendHeartBeat(NicoLiveStream_P self){
 static VOID OnSendKeepAllive(NicoLiveStream_P self){
        
        if(self->chatManager.keapALiveFlag){
-               LPCWSTR mail[2] = {L"184",NULL};
+               LPCTSTR mail[2] = {L"184",NULL};
                NicoLiveStream_sendChat(self,L"/keapalive",mail,NULL);
        }
 
@@ -1402,9 +1407,9 @@ static unsigned int WINAPI NicoLiveRecvChat(void* lpBuffer){
 
        unsigned int rslt = 0;
 
-       //LPWSTR user_id = NULL;
-       //LPWSTR name = NULL;
-       //LPWSTR chatBuf = NULL;
+       //LPTSTR user_id = NULL;
+       //LPTSTR name = NULL;
+       //LPTSTR chatBuf = NULL;
 
 
 
@@ -1543,8 +1548,8 @@ static BOOL NicoLiveRecvChatLoop(NicoLiveStream_P self){
        //\83R\83\81\83\93\83g\8eó\90M\8f\88\97\9d
        //
        BOOL rslt = TRUE;                                                                               //\8c\8b\89Ê
-       LPWSTR commentBuf = NULL;                                                               //\83R\83\81\83\93\83g\83o\83b\83t\83@
-       LPWSTR* mailCountBuf = NULL;                                                    //\83\81\81[\83\8b\83|\83C\83\93\83^\83o\83b\83t\83@
+       LPTSTR commentBuf = NULL;                                                               //\83R\83\81\83\93\83g\83o\83b\83t\83@
+       LPTSTR* mailCountBuf = NULL;                                                    //\83\81\81[\83\8b\83|\83C\83\93\83^\83o\83b\83t\83@
        INT_PTR recevedLen;                                                                             //\8eó\90M\95\8e\9a\97ñ\92·
        INT_PTR messageBufLen;                                                                  //\83o\83b\83t\83@\92·
 
@@ -1555,8 +1560,8 @@ static BOOL NicoLiveRecvChatLoop(NicoLiveStream_P self){
        DWORD dwResult;                                                                                 //\83C\83x\83\93\83g\82ª\83E\83F\83C\83g\8aÖ\90\94\82Ì\8c\8b\89Ê\82ð\8ai\94[\82·\82é\95Ï\90\94
 
        
-       SIZE_T commentBufSize = sizeof(WCHAR) * LENGTH_2048;    //\83R\83\81\83\93\83g\83o\83b\83t\83@\92·
-       SIZE_T mailCountBufSize = sizeof(LPWSTR) * LENGTH_256;  //\83\81\81[\83\8b\82Ì\83|\83C\83\93\83^\97p\83o\83b\83t\83@\92·
+       SIZE_T commentBufSize = sizeof(TCHAR) * LENGTH_2048;    //\83R\83\81\83\93\83g\83o\83b\83t\83@\92·
+       SIZE_T mailCountBufSize = sizeof(LPTSTR) * LENGTH_256;  //\83\81\81[\83\8b\82Ì\83|\83C\83\93\83^\97p\83o\83b\83t\83@\92·
 
 
        WSAEVENT hRecvEvent = NULL;
@@ -1569,8 +1574,8 @@ static BOOL NicoLiveRecvChatLoop(NicoLiveStream_P self){
        hEventArray[0] = hRecvEvent;
        hEventArray[1] = self->chatManager.endEvent;
 
-       commentBuf = (LPWSTR)malloc(commentBufSize);
-       mailCountBuf = (LPWSTR*)malloc(mailCountBufSize);
+       commentBuf = (LPTSTR)malloc(commentBufSize);
+       mailCountBuf = (LPTSTR*)malloc(mailCountBufSize);
 
        //\90Ø\92f\82³\82ê\82é\82Ü\82Å\83\8b\81[\83v
        while(1){
@@ -1651,24 +1656,24 @@ end:
 
 
 
-static VOID  NicoLiveParseComment(NicoLiveStream_P self,LPWSTR commentBuf,UINT_PTR endSize,LPWSTR* mailCountBuf,SIZE_T* mailCountBufSize,SIZE_T* commentBufSize){
+static VOID  NicoLiveParseComment(NicoLiveStream_P self,LPTSTR commentBuf,UINT_PTR endSize,LPTSTR* mailCountBuf,SIZE_T* mailCountBufSize,SIZE_T* commentBufSize){
 
-       LPWSTR indexPtr;                                                                                //\89ð\90Í\8e\9e\82Ì\8ew\95W\83|\83C\83\93\83^
+       LPTSTR indexPtr;                                                                                //\89ð\90Í\8e\9e\82Ì\8ew\95W\83|\83C\83\93\83^
        NicoLiveChat nicoLiveChat;                                                              //\83`\83\83\83b\83g\83R\83\81\83\93\83g\8ai\94[\97p\8d\\91¢\91Ì
        NicoLiveThreadComment nicoLiveThreadComment;                    //\90Ú\91±\89\9e\93\9a\83R\83\81\83\93\83g\8ai\94[\97p\8d\\91¢\91Ì
        NicoLiveSendResultComment nicoLiveSendResultComment;    //\91\97\90M\89\9e\93\9a\83R\83\81\83\93\83g\8ai\94[\97p\8d\\91¢\91Ì
        NicoLiveChat nicoLiveChatBase;                                                  //\83`\83\83\83b\83g\83R\83\81\83\93\83g\8aî\92ê\8d\\91¢\91Ì
        NicoLiveThreadComment nicoLiveThreadCommentBase;                //\90Ú\91±\89\9e\93\9a\83R\83\81\83\93\83g\8aî\92ê\8d\\91¢\91Ì
        NicoLiveSendResultComment nicoLiveSendResultCommentBase;//\91\97\90M\89\9e\93\9a\83R\83\81\83\93\83g\8aî\92ê\8d\\91¢\91Ì
-       LPWSTR attrNameStart;                                                                   //\91®\90«\96¼\8aJ\8en\83|\83C\83\93\83^
-       LPWSTR attrNameEnd;                                                                             //\91®\90«\96¼\8fI\97¹\83|\83C\83\93\83^
-       LPWSTR attrValueStart;                                                                  //\91®\90«\92l\8aJ\8en\83|\83C\83\93\83^
-       LPWSTR attrValueEnd;                                                                    //\91®\90«\92l\8fI\97¹\83|\83C\83\93\83^
+       LPTSTR attrNameStart;                                                                   //\91®\90«\96¼\8aJ\8en\83|\83C\83\93\83^
+       LPTSTR attrNameEnd;                                                                             //\91®\90«\96¼\8fI\97¹\83|\83C\83\93\83^
+       LPTSTR attrValueStart;                                                                  //\91®\90«\92l\8aJ\8en\83|\83C\83\93\83^
+       LPTSTR attrValueEnd;                                                                    //\91®\90«\92l\8fI\97¹\83|\83C\83\93\83^
        INT_PTR nameLen;                                                                                //\91®\90«\82Ì\96¼\91O\82Ì\92·\82³
-       LPWSTR mailIndexPtr;                                                                    //\83\81\81[\83\8b\91®\90«\92l\89ð\90Í\97p\8ew\95W\83|\83C\83\93\83^
-       LPWSTR xmlTextPtr;                                                                              //xml\83e\83L\83X\83g\8c`\8e®\82Ì\83f\81[\83^\89ð\90Í\8e\9e\82É\8eg\97p\82·\82é\83|\83C\83\93\83^
-       LPWSTR xmlTextEnd;                                                                              //xml\83e\83L\83X\83g\8fI\97¹\83|\83C\83\93\83^
-       LPWSTR* mailIndex;                                                                              //\83\81\81[\83\8b\83R\83}\83\93\83h\83\8a\83X\83g\83|\83C\83\93\83^
+       LPTSTR mailIndexPtr;                                                                    //\83\81\81[\83\8b\91®\90«\92l\89ð\90Í\97p\8ew\95W\83|\83C\83\93\83^
+       LPTSTR xmlTextPtr;                                                                              //xml\83e\83L\83X\83g\8c`\8e®\82Ì\83f\81[\83^\89ð\90Í\8e\9e\82É\8eg\97p\82·\82é\83|\83C\83\93\83^
+       LPTSTR xmlTextEnd;                                                                              //xml\83e\83L\83X\83g\8fI\97¹\83|\83C\83\93\83^
+       LPTSTR* mailIndex;                                                                              //\83\81\81[\83\8b\83R\83}\83\93\83h\83\8a\83X\83g\83|\83C\83\93\83^
        BOOL isReceveChat = FALSE;                                                              //\83`\83\83\83b\83g\8eó\90M\83t\83\89\83O
        SIZE_T commentSizeCh;                                                                   //\8eó\90M\82µ\82½\83R\83\81\83\93\83g\82ð\83\86\83j\83R\81[\83h\82É\95Ï\8a·\82·\82é\82Æ\82«\82Ì\92·\82³
        LPSTR recvBufTmp;                                                                               //\8eó\90M\95\8e\9a\97ñ\91\80\8dì\97p\83|\83C\83\93\83^
@@ -1710,8 +1715,8 @@ static VOID  NicoLiveParseComment(NicoLiveStream_P self,LPWSTR commentBuf,UINT_P
        for (;recvBufTmp + strlen(recvBufTmp) < recvEndPoint;recvBufTmp += strlen(recvBufTmp) + 1){
 
 
-               commentSizeCh = sizeof(WCHAR) * GetLenToWide(CP_UTF8,recvBufTmp);
-               extendMalloc(commentBuf,LPWSTR,*commentBufSize,commentSizeCh);
+               commentSizeCh = sizeof(TCHAR) * GetLenToWide(CP_UTF8,recvBufTmp);
+               extendMalloc(commentBuf,LPTSTR,*commentBufSize,commentSizeCh);
                MBToWide(CP_UTF8,recvBufTmp,commentBuf,*commentBufSize);
 
                traceln(TEXT("comment:\r\n%s"),commentBuf);
@@ -1831,7 +1836,7 @@ static VOID  NicoLiveParseComment(NicoLiveStream_P self,LPWSTR commentBuf,UINT_P
 
                                        }
 
-                                       extendMalloc(mailCountBuf,LPWSTR*,*mailCountBufSize,nicoLiveChat.mailCount);
+                                       extendMalloc(mailCountBuf,LPTSTR*,*mailCountBufSize,nicoLiveChat.mailCount);
 
                                        nicoLiveChat.mail = mailCountBuf;
                                        mailCountBuf[0] = NULL;
@@ -1973,7 +1978,7 @@ static void NicoLiveSelfDisconnect(void *buf){
 
 }
 
-static INLINE SOCKET GetConectedSocket(LPCWSTR nordName,LPCWSTR port,int socktype,int addr_famiry,int protocol){
+static INLINE SOCKET GetConectedSocket(LPCTSTR nordName,LPCTSTR port,int socktype,int addr_famiry,int protocol){
 
 
        SOCKET rslt = INVALID_SOCKET;
@@ -2032,4 +2037,77 @@ static INLINE SOCKET GetConectedSocket(LPCWSTR nordName,LPCWSTR port,int socktyp
 
        return rslt;
 
+}
+
+
+//
+//\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\8aÖ\98A
+//
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82ÌID\82ð\8eæ\93¾
+///
+NLIB_DECLSPEC LPCTSTR StreamStatus_getId(StreamStatus_P self){
+
+       return self->id;
+}
+
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83R\83~\83\85\83j\83e\83B\94Ô\8d\86\82ð\8eæ\93¾
+///
+NLIB_DECLSPEC LPCTSTR StreamStatus_getDefaultCommunity(StreamStatus_P self){
+
+       return self->default_community;
+}
+
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83v\83\8d\83o\83C\83_\83^\83C\83v\82ð\8eæ\93¾
+///
+PROVIDERTYPE StreamStatus_getProviderType(StreamStatus_P self){
+
+       return self->provider_type;
+}
+
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83I\81[\83i\81[\83t\83\89\83O\82ð\8eæ\93¾
+///
+BOOL StreamStatus_isOwner(StreamStatus_P self){
+
+       return self->is_owner;
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8aJ\8en\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getStartTime(StreamStatus_P self){
+
+       return self->start_time;
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8fI\97¹\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getEndTime(StreamStatus_P self){
+
+       return self->end_time;
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8aJ\8fê\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getOpenTime(StreamStatus_P self){
+
+       return self->open_time;
+
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83x\81[\83X\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getBaseTime(StreamStatus_P self){
+
+       return self->base_time;
 }
\ No newline at end of file
index 2f7f871..cbf9cb1 100644 (file)
@@ -17,9 +17,9 @@ typedef VOID(*NicoLiveOnSend)(NicoLiveStream_P self);
 
 typedef struct {
        NicoLiveHeartBeat heartBeat;
-       LPWSTR is_restrictBuff;
+       LPTSTR is_restrictBuff;
        INT_PTR is_restrictSize;
-       LPWSTR ticketBuff;
+       LPTSTR ticketBuff;
        INT_PTR ticketSize;
        NLIB_RESULT error;
 
@@ -60,13 +60,26 @@ typedef struct {
        time_t baseVpos;
 }ChatManager,*ChatManager_P;
 
-
+///
+///\90\95ú\91\97\83X\83e\81[\83^\83X
+///
+typedef struct streamstatus_t{
+
+       TCHAR id[LENGTH_128];
+       TCHAR default_community[LENGTH_128];
+       PROVIDERTYPE provider_type;
+       BOOL  is_owner;
+       time_t start_time;
+       time_t end_time;
+       time_t open_time;
+       time_t base_time;
+}StreamStatus,*StreamStatus_P;
 
 ///\83\81\83b\83Z\81[\83W\83T\81[\83o\81[\83X\83e\81[\83^\83X
 typedef struct messageserver_t{
 
-       WCHAR addr[LENGTH_IP];
-       WCHAR port[LENGTH_32];
+       TCHAR addr[LENGTH_IP];
+       TCHAR port[LENGTH_32];
        UINT_PTR thread;
        
 
@@ -77,8 +90,8 @@ typedef struct messageserver_t{
 typedef struct{
 
        UINT_PTR is_premium;
-       WCHAR user_id[LENGTH_128];
-       WCHAR userDomain[LENGTH_128];
+       TCHAR user_id[LENGTH_128];
+       TCHAR userDomain[LENGTH_128];
 }NicoLivePSOwn,*NicoLivePSOwn_P;
 
 
@@ -103,9 +116,9 @@ typedef struct {
 #define NICOLIVEHISTORY_LENGTH         LENGTH_256
 
 typedef struct nicolivestream_t{
-       WCHAR userSession[USERSESSION_LENGTH];
-       WCHAR nicoLiveHistory[NICOLIVEHISTORY_LENGTH];
-       WCHAR ticket[LENGTH_256];
+       TCHAR userSession[USERSESSION_LENGTH];
+       TCHAR nicoLiveHistory[NICOLIVEHISTORY_LENGTH];
+       TCHAR ticket[LENGTH_256];
        LPVOID option;
        NicoLivePlayerStatus playerStatus;
        ChatManager chatManager;
index f5abaa3..8dd4ba2 100644 (file)
@@ -22,13 +22,15 @@ VOID NicoVideoAuth_delete(NicoVideoAuth_P* self){
 
 NLIB_RESULT NicoVideoAuth_getNicoVideoAuth(NicoVideoAuth_P self,BROWSERTYPE browserType){
 
-
+       NLIB_RESULT rslt = NLIB_ERR_CODE_NOTSET;
        //\83N\83b\83L\81[\82Ì\8eæ\93¾
        if( GetCookie(browserType,self->userSession,sizeof(self->userSession),L"user_session",WTEXT(NICO_VIDEO_DOMEINNAME)) != COOKIE_ERR_OK){
-
-               return NLIB_ERR_COOKIE_FAILED;
+               rslt = NLIB_ERR_COOKIE_FAILED;
+               goto end;
        }
 
+       rslt = NLIB_ERR_OK;
+end:
 
-       return NLIB_ERR_OK;
+       return rslt;
 }
\ No newline at end of file
index f2c5984..4f26e4a 100644 (file)
@@ -41,12 +41,12 @@ enum NicoLiveHeartBeat_NORD{
 
 #define StrCpyArray(buf,pszData,nLength) StrCpy(buf,sizeof(buf) / sizeof(buf[0]),pszData,nLength)
 
-static INLINE NLIB_RESULT StrCpy(LPWSTR buf,UINT_PTR buflen,LPCWSTR pszData,UINT_PTR nLength);
+static INLINE NLIB_RESULT StrCpy(LPTSTR buf,UINT_PTR buflen,LPCTSTR pszData,UINT_PTR nLength);
 
 ///
 ///UTF8\95Ï\8a·\93à\95\94\8aÖ\90\94
 ///
-static INLINE VOID ToUTF8(LPSTR buf,LPCWSTR input,INT_PTR nLength,INT_PTR maxLength);
+static INLINE VOID ToUTF8(LPSTR buf,LPCTSTR input,INT_PTR nLength,INT_PTR maxLength);
 
 
 
@@ -445,7 +445,7 @@ void NPlayerStatus_CharacterDataHandler(void *userData,const XML_Char *pszData,i
                        
                }else if(_tcsncmp(pszData,TEXT("require_accept_print_timeshift_ticket"),nLength) == 0) {
 
-                       ps->error = NLIB_ERR_GETPLAYERSTATUS_NOT_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET;
+                       ps->error = NLIB_ERR_GETPLAYERSTATUS_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET;
 
 
                }else if(_tcsncmp(pszData,TEXT("access_locked"),nLength) == 0) {
@@ -499,7 +499,7 @@ extern void NPlayerStatus_ElementEndHandler(void *userData,const XML_Char *pszNa
 }
 
 
-static INLINE NLIB_RESULT StrCpy(LPWSTR buf,UINT_PTR buflen,LPCWSTR pszData,UINT_PTR nLength){
+static INLINE NLIB_RESULT StrCpy(LPTSTR buf,UINT_PTR buflen,LPCTSTR pszData,UINT_PTR nLength){
 
        if(nLength >= buflen){
                return NLIB_ERR_BUFFER_TOOLITTLE;
@@ -627,7 +627,7 @@ void NicoLiveHeartBeat_CharacterDataHandler(void *userData,const XML_Char *pszDa
                //heartbeat/is_restrict
        case MAKENORD1(NicoLiveHeartBeat_HEARTBEAT,NicoLiveHeartBeat_IS_RESTRICT):
 
-               extendMalloc(hbc->is_restrictBuff,LPWSTR,hbc->is_restrictSize,(INT_PTR)sizeof(WCHAR) * nLength);
+               extendMalloc(hbc->is_restrictBuff,LPTSTR,hbc->is_restrictSize,(INT_PTR)sizeof(TCHAR) * nLength);
 
                wcsncpy(hbc->is_restrictBuff,pszData,nLength);
 
@@ -638,7 +638,7 @@ void NicoLiveHeartBeat_CharacterDataHandler(void *userData,const XML_Char *pszDa
                //heartbeat/ticket
        case MAKENORD1(NicoLiveHeartBeat_HEARTBEAT,NicoLiveHeartBeat_TICKET):
 
-               extendMalloc(hbc->ticketBuff,LPWSTR,hbc->ticketSize,(INT_PTR)sizeof(WCHAR) * nLength);
+               extendMalloc(hbc->ticketBuff,LPTSTR,hbc->ticketSize,(INT_PTR)sizeof(TCHAR) * nLength);
 
                wcsncpy(hbc->ticketBuff,pszData,nLength);
 
@@ -660,7 +660,7 @@ void NicoLiveHeartBeat_ElementEndHandler(void *userData,const XML_Char *pszName)
 
 }
 
-static INLINE VOID ToUTF8(LPSTR buf,LPCWSTR input,INT_PTR nLength,INT_PTR maxLength){
+static INLINE VOID ToUTF8(LPSTR buf,LPCTSTR input,INT_PTR nLength,INT_PTR maxLength){
 
 
        if(WideCharToMultiByte(CP_UTF8,0,input,nLength,(LPSTR)NULL,0,(LPCSTR)NULL,(LPBOOL)NULL) > maxLength){
index 991c8fc..660f54a 100644 (file)
@@ -154,7 +154,7 @@ NLIB_RESULT callback(NICOLIVE_EVENT eventType,NicoLiveStream_P pNicoLiveStream,L
 
 NLIB_RESULT myListCallBack(LPVOID option,NicoMyListItem_P pVideo){
 
-       dumpln(TEXT("video_id:%s"),pVideo->itemData.video_id);
+//     dumpln(TEXT("video_id:%s"),pVideo->itemData.video_id);
 
 
 
@@ -164,7 +164,7 @@ NLIB_RESULT myListCallBack(LPVOID option,NicoMyListItem_P pVideo){
 static NLIB_RESULT myListGroupCallBack(LPVOID option,NicoMyList_P pMyList){
        WCHAR buf[256];
        NLIB_RESULT rslt;
-       wcscpy(buf,pMyList->id);
+//     wcscpy(buf,pMyList->id);
        dumpln(TEXT("id:%s"),buf);
        rslt = NicoMyList_getMyList(nva,buf,myListCallBack,NULL);
        
@@ -214,6 +214,8 @@ void nicoLive_connect(void) {
        //Sleep(3000);
 
 
+       
+
 
        return;
 }
@@ -241,12 +243,17 @@ int _tmain(int argc, _TCHAR* argv[])
        
        nicoLive_setup();
        
-       nicoLive_connect();
-       nicoLive_mylist();
+       for(int index = 0; index <= NLIB_ERR_NOT_LIVECONNECT;index++){
+
+               idumpln(TEXT("errmessage:%s"),NLIB_GetErrorMessage(index));
+       }
+
+       //nicoLive_connect();
+       //nicoLive_mylist();
        
        nicoLive_teardown();
 
 
-       getch();
+       _getch();
        return 0;
 }
\ No newline at end of file
index 756d442..8655d45 100644 (file)
@@ -4,7 +4,7 @@
 //
 
 #pragma once
-
+#define  _CRT_NON_CONFORMING_SWPRINTFS 1
 #include <nlite\targetver.h>
 
 #include <stdio.h>
index e1b0d8a..0f6a60e 100644 (file)
Binary files a/nlite.suo and b/nlite.suo differ
index 0b92f70..af5edc8 100644 (file)
@@ -12,7 +12,7 @@ CAppModule _Module;
 
 
 
-const CApplicationInfo* nlite::appInfo = NULL;
+const CApplicationInfo * nlite::appInfo = NULL;
 static TCHAR localAppDataPath[_MAX_PATH];
 
 static WSAData wsaData;                                                        //winsockdata
@@ -168,3 +168,14 @@ static BOOL InitializeNlite(){
         return;
  }
 
+ VOID nlite::UnexpectedErrorMessageShow(LPCTSTR headMessage,LPCTSTR summary){
+       CNLiteString errMessage;
+       errMessage = headMessage;
+       errMessage += TEXT("\91z\92è\82³\82ê\82Ä\82¢\82È\82¢\83G\83\89\81[\82ª\94­\90\82µ\82Ü\82µ\82½\81B\83A\83v\83\8a\83P\81[\83V\83\87\83\93\94z\92u\83t\83H\83\8b\83_\82É\8dì\90¬\82³\82ê\82½\83\8d\83O\83t\83@\83C\83\8b\82ð\93n\82µ\82Ä\82à\82ç\82¦\82é\82Æ\8aJ\94­\8eÒ\82ª\94ñ\8fí\82É\8aì\82Ñ\82Ü\82·");
+       errMessage += TEXT("\r\n\83G\83\89\81[\83\81\83b\83Z\81[\83W:");
+       errMessage += summary;
+       ::MessageBox(NULL,errMessage,TEXT("\91z\92è\82³\82ê\82Ä\82¢\82È\82¢\83G\83\89\81["),MB_ICONERROR | MB_OK);
+
+
+        return;
+ }
\ No newline at end of file
index 8f3de9b..d062803 100644 (file)
@@ -4,11 +4,16 @@
 
 namespace nlite{
 
+       //\83N\83\89\83X\90æ\8ds\90é\8c¾
        class CApplicationInfo;
        class CListenerList;
 
-       extern const CApplicationInfo* appInfo;
+       //\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8fî\95ñ\83N\83\89\83X
+       extern const CApplicationInfo * appInfo;
        extern CListenerList listenerList;
+       extern VOID UnexpectedErrorMessageShow(LPCTSTR headMessage,LPCTSTR summary);
+       
+
 
 #define NLITE_ERR_MESSAGE_FORMAT "\83n\83\93\83h\83\8b\82³\82ê\82Ä\82¢\82È\82¢\83G\83\89\81[:\r\n%s\r\n\8ds\94Ô\8d\86:%d\r\n\83\\81[\83X\83t\83@\83C\83\8b:%s"
        
index b21e8df..49ca203 100644 (file)
     <ClCompile Include="nlite_chatData.cpp" />
     <ClCompile Include="nlite_commentview.cpp" />
     <ClCompile Include="nlite_commentWrite.cpp" />
+    <ClCompile Include="nlite_exception.cpp" />
     <ClCompile Include="nlite_mainframe.cpp" />
     <ClCompile Include="nlite_nlib.cpp" />
     <ClCompile Include="nlite_property.cpp" />
+    <ClCompile Include="nlite_string.cpp" />
     <ClCompile Include="stdafx.cpp">
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug-window|Win32'">Create</PrecompiledHeader>
index f535fab..ebb25a2 100644 (file)
     <ClCompile Include="nlite_nlib.cpp">
       <Filter>ソース ファイル</Filter>
     </ClCompile>
+    <ClCompile Include="nlite_exception.cpp">
+      <Filter>ソース ファイル</Filter>
+    </ClCompile>
+    <ClCompile Include="nlite_string.cpp">
+      <Filter>ソース ファイル</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ResourceCompile Include="nlite.rc">
index 2367e3f..c79d786 100644 (file)
@@ -3,6 +3,9 @@
 
 namespace nlite {
 
+
+       
+
 CApplicationInfo::CApplicationInfo(){
 
        struct LANGANDCODEPAGE {
@@ -105,4 +108,56 @@ CApplicationInfo::~CApplicationInfo(){
        safeFree(pBlock);
 }
 
+///
+///\83V\83\93\83O\83\8b\83g\83\93
+///
+CApplicationInfo& CApplicationInfo::getInstance(){
+       static CApplicationInfo appInfo;
+       return appInfo;
+
+}
+
+
+
+LPCTSTR CApplicationInfo::getProductVersion()const{
+
+       return pProductVersion;
+
+}
+
+LPCTSTR CApplicationInfo::getOriginalFileName()const{
+
+       return pOriginalFileName;
+
+}
+
+LPCTSTR CApplicationInfo::getLegalCopyright()const{
+
+       return pLegalCopyright;
+
+}
+
+LPCTSTR CApplicationInfo::getProcuctName() const{
+
+       return pProductName;
+}
+
+               
+VOID CApplicationInfo::show() const {
+
+       CNLiteString szApp;
+       CNLiteString szOtherStuff;
+
+
+       szApp = pOriginalFileName;
+       szApp += TEXT("\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8fî\95ñ");
+
+       szOtherStuff = TEXT("\83o\81[\83W\83\87\83\93\8fî\95ñ: ");
+       szOtherStuff += pProductVersion;
+       szOtherStuff += TEXT("\r\n\92\98\8dì\8c : ");
+       szOtherStuff += pLegalCopyright;
+
+       ShellAbout(NULL,szApp,szOtherStuff,NULL);
+}
+
 }
\ No newline at end of file
index ce18bd5..8744989 100644 (file)
@@ -21,23 +21,22 @@ namespace nlite{
                LPTSTR  pProductName;                                   //\90»\95i\96¼
        private:
                ///
-               ///\83R\83\93\83c\83g\83\89\83N\83^
+               ///\83R\83\93\83X\83g\83\89\83N\83^
                ///
                CApplicationInfo();
 
        public:
+
+               ///
+               ///\83f\83X\83g\83\89\83N\83^
+               ///
                ~CApplicationInfo();
        public:
-
                ///
                ///\83V\83\93\83O\83\8b\83g\83\93
                ///
-               static CApplicationInfo& getInstance(){
-                       static CApplicationInfo appInfo;
-                       return appInfo;
-
-               }
-
+               static CApplicationInfo& getInstance();
+               
 
 
 
@@ -45,45 +44,20 @@ namespace nlite{
                //\83Q\83b\83^\81[
                //
 
-               LPCTSTR getProductVersion()const{
-
-                       return pProductVersion;
-
-               }
-
-               LPCTSTR getOriginalFileName()const{
-
-                       return pOriginalFileName;
+               LPCTSTR getProductVersion()const;
 
-               }
+               LPCTSTR getOriginalFileName()const;
 
-               LPCTSTR getLegalCopyright()const{
+               LPCTSTR getLegalCopyright()const;
 
-                       return pLegalCopyright;
+               LPCTSTR getProcuctName() const;
 
-               }
-
-               LPCTSTR getProcuctName() const{
-
-                       return pProductName;
-               }
-
-               VOID show() const {
-
-                       CNLiteString szApp;
-                       CNLiteString szOtherStuff;
-
-
-                       szApp = pOriginalFileName;
-                       szApp += TEXT("\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8fî\95ñ");
-
-                       szOtherStuff = TEXT("\83o\81[\83W\83\87\83\93\8fî\95ñ: ");
-                       szOtherStuff += pProductVersion;
-                       szOtherStuff += TEXT("\r\n\92\98\8dì\8c : ");
-                       szOtherStuff += pLegalCopyright;
+               ///
+               ///\83E\83B\83\93\83h\83E\82É\95\\8e¦
+               ///
+               VOID show() const;
 
-                       ShellAbout(NULL,szApp,szOtherStuff,NULL);
-               }
+               
 
        };
 }
\ No newline at end of file
index ae1f7a3..d36febd 100644 (file)
@@ -21,6 +21,13 @@ struct ListenerPre{
 };
 
 
+ListenerData::ListenerData(LPCTSTR user_id_in):
+user_id(user_id_in),
+userName(TEXT("")),
+bkColor(RGB(0,0,0)),
+originBkFlag(FALSE)
+{}
+
 VOID ListenerData::SetBkColor(COLORREF bkColor_in){
        bkColor = bkColor_in;
        return;
@@ -79,6 +86,7 @@ VOID CChatData::SetChat(NicoLiveChat &chat_in){
 //\83R\83\81\83\93\83g\83\8a\83X\83g\83N\83\89\83X
 //////////////////////////////////////////////////////////////////////////
 
+//\91I\91ð\8ds\8eæ\93¾\97p\83t\83@\83\93\83N\83V\83\87\83i\83\8b
 struct GetCurSelFunc_t{
 
        INT_PTR count;
index 7acd4cf..bd96ed3 100644 (file)
@@ -22,14 +22,7 @@ namespace nlite{
                COLORREF bkColor;
                BOOL originBkFlag;
        public:
-               ListenerData(LPCTSTR user_id_in):
-                       user_id(user_id_in),
-                       userName(TEXT("")),
-                       bkColor(RGB(0,0,0)),
-                       originBkFlag(FALSE)
-                       {
-                               
-                       }
+               ListenerData(LPCTSTR user_id_in);
 
                VOID SetBkColor(COLORREF bkColor_in);
                
index c80ed5e..b1021b1 100644 (file)
@@ -19,50 +19,61 @@ const static UINT_PTR CHECKBUTTON_SUBSCRIPT_HEIGHT = 10;
 
 const static COLORREF MAX_COLOR = 0xFFFFFF;
 
-const CommentColorInfo generalUser::COMMENT_COLORLIST[] = {
-       {TEXT("white"),RGB(0xFF,0xFF,0xFF)},
-       {TEXT("red"),RGB(0xFF,0x00,0x00)},
-       {TEXT("pink"),RGB(0xFF,0x80,0x80)},
-       {TEXT("orange"),RGB(0xFF,0xC0,0x00)},
-       {TEXT("yellow"),RGB(0xFF,0xFF,0x00)},
-       {TEXT("green"),RGB(0x00,0xFF,0x00)},
-       {TEXT("cyan"),RGB(0x00,0xFF,0xFF)},
-       {TEXT("blue"),RGB(0x00,0x00,0xFF)},
-       {TEXT("purple"),RGB(0xC0,0x00,0xFF)},
+namespace generalUser{
+       const CommentColorInfo COMMENT_COLORLIST[] = {
+               {TEXT("white"),RGB(0xFF,0xFF,0xFF)},            //\94\92
+               {TEXT("red"),RGB(0xFF,0x00,0x00)},                      //\90Ô
+               {TEXT("pink"),RGB(0xFF,0x80,0x80)},                     //\83s\83\93\83N
+               {TEXT("orange"),RGB(0xFF,0xC0,0x00)},           //\83I\83\8c\83\93\83W
+               {TEXT("yellow"),RGB(0xFF,0xFF,0x00)},           //\89©\90F
+               {TEXT("green"),RGB(0x00,0xFF,0x00)},            //\97Î
+               {TEXT("cyan"),RGB(0x00,0xFF,0xFF)},                     //\8a¦\90F
+               {TEXT("blue"),RGB(0x00,0x00,0xFF)},                     //\90Â
+               {TEXT("purple"),RGB(0xC0,0x00,0xFF)},           //\8e\87
        
-};
-
-const CommentColorInfo premiumUser::COMMENT_COLORLIST[] = {
-       {TEXT("black"),RGB(0x00,0x00,0x00)},
-       {TEXT("white2"),RGB(0xCC,0xCC,0x99)},
-       {TEXT("red2"),RGB(0xCC,0x00,0x33)},
-       {TEXT("pink2"),RGB(0xFF,0x33,0xCC)},
-       {TEXT("orange2"),RGB(0xFF,0x66,0x00)},
-       {TEXT("yellow2"),RGB(0x99,0x99,0x00)},
-       {TEXT("green2"),RGB(0x00,0xCC,0x66)},
-       {TEXT("cyan2"),RGB(0x00,0xCC,0xCC)},
-       {TEXT("blue2"),RGB(0x33,0x99,0xFF)},
-       {TEXT("purple2"),RGB(0x66,0x33,0xCC)}
-//     {TEXT("black2"),RGB(0x66,0x66,0x66)}
-};
-
-const CommentSizeInfo generalUser::COMMENT_SIZELIST[] = {
-       {TEXT("\95\81\92Ê\81@"),TEXT("medium")},
-       {TEXT("\8f¬\81@"),TEXT("small")}
-};
-
-const CommentSizeInfo premiumUser::COMMENT_SIZELIST[] = {
-       {TEXT("\91å\81@"),TEXT("big")}
-};
-
-const CommentPosInfo generalUser::COMMENT_POSLIST[] = {
-       {TEXT("\92Ê\8fí\81@"),TEXT("naka")}
-};
-
-const CommentPosInfo premiumUser::COMMENT_POSLIST[] = {
-       {TEXT("\89º\81@"),TEXT("shita")},
-       {TEXT("\8fã\81@"),TEXT("ue")}
-};
+       };
+
+       const CommentSizeInfo COMMENT_SIZELIST[] = {
+               {TEXT("\95\81\92Ê\81@"),TEXT("medium")},                        //\95\81\92Ê\83T\83C\83Y
+               {TEXT("\8f¬\81@"),TEXT("small")}                            //\8f¬\83T\83C\83Y
+       };
+
+
+       const CommentPosInfo COMMENT_POSLIST[] = {
+               {TEXT("\92Ê\8fí\81@"),TEXT("naka")}                           //\92Ê\8fí\95\\8e¦
+       };
+}
+
+namespace premiumUser{
+
+       const CommentColorInfo COMMENT_COLORLIST[] = {
+               {TEXT("black"),RGB(0x00,0x00,0x00)},            //\8d\95
+               {TEXT("white2"),RGB(0xCC,0xCC,0x99)},           //\94\92\82»\82Ì\82Q
+               {TEXT("red2"),RGB(0xCC,0x00,0x33)},                     //\90Ô\82»\82Ì\82Q
+               {TEXT("pink2"),RGB(0xFF,0x33,0xCC)},            //\83s\83\93\83N\82»\82Ì\82Q
+               {TEXT("orange2"),RGB(0xFF,0x66,0x00)},          //\83I\83\8c\83\93\83W\82»\82Ì\82Q
+               {TEXT("yellow2"),RGB(0x99,0x99,0x00)},          //\89©\90F\82»\82Ì\82Q
+               {TEXT("green2"),RGB(0x00,0xCC,0x66)},           //\97Î\82»\82Ì\82Q
+               {TEXT("cyan2"),RGB(0x00,0xCC,0xCC)},            //\8a¦\90F\82»\82Ì\82Q
+               {TEXT("blue2"),RGB(0x33,0x99,0xFF)},            //\90Â\82»\82Ì\82Q
+               {TEXT("purple2"),RGB(0x66,0x33,0xCC)}           //\8e\87\82»\82Ì\82Q
+       //      {TEXT("black2"),RGB(0x66,0x66,0x66)}            //\8d\95\82»\82Ì\82Q\82Í\82È\82¢\81H
+       };
+
+       const CommentSizeInfo COMMENT_SIZELIST[] = {
+               {TEXT("\91å\81@"),TEXT("big")}                                      //\91å\83T\83C\83Y
+       };
+
+
+
+       const CommentPosInfo COMMENT_POSLIST[] = {
+               {TEXT("\89º\81@"),TEXT("shita")},                           //\89º\82É\95\\8e¦
+               {TEXT("\8fã\81@"),TEXT("ue")}                                       //\8fã\82É\95\\8e¦
+       };
+}
+
+
+
 
 
 template<typename T>
@@ -104,9 +115,7 @@ commentWriteInternalHeight(0),
 commentWriteMaxLength(INIT_COMMENTWRITE_MAXLENGTH),
 nicoLiveStream(in_nicoLiveStream),
 commentSubEdit(*this)
-{
-
-}
+{}
 
 
 
@@ -217,7 +226,7 @@ static VOID agreeEnterKeyThread(LPVOID userData){
        return;
 }
 
-VOID CCommentWriteWindow::SendChat(){
+BOOL CCommentWriteWindow::SendChat(){
        CCommentMaker commentMaker;
        std::vector<TCHAR> chat(commentEdit.GetWindowTextLengthW() + 1);
        commentEdit.GetWindowTextW(&chat[0],chat.size());
@@ -226,18 +235,36 @@ VOID CCommentWriteWindow::SendChat(){
 
                commentMaker.AddMail(ANONYMOUS_MAILCOMMAND);
        }
+       BOOL rslt = FALSE;
+       NLIB_RESULT code = nicoLiveStream.SendChat(commentMaker);
 
-       if(nicoLiveStream.SendChat(commentMaker) != NLIB_ERR_OK){
+       switch(code){
 
-               commentSubEdit.AgreeEnter();
-       } else {
+       case NLIB_ERR_OK:
 
-               _beginthread(agreeEnterKeyThread,0,&commentSubEdit);
+               rslt = TRUE;
+
+               break;
+
+       case NLIB_ERR_NOT_LIVECONNECT:
+
+               ::MessageBox(NULL,NLIB_GetErrorMessage(code),TEXT("\83R\83\81\83\93\83g\8f\91\82«\8d\9e\82Ý\83G\83\89\81["),MB_ICONERROR | MB_OK);
+
+               rslt = FALSE;
+               break;
+
+       default:
+               errprint(TEXT("\83R\83\81\83\93\83g\8f\91\82«\8d\9e\82Ý\92\86\82É\83G\83\89\81[:%s"),NLIB_GetErrorMessage(code));
+               UnexpectedErrorMessageShow(TEXT("\83R\83\81\83\93\83g\8f\91\82«\8d\9e\82Ý\92\86\82É"),NLIB_GetErrorMessage(code));
+               rslt = FALSE;
+               break;
 
        }
+
+       
        
 
-       return;
+       return rslt;
 }
 
 
@@ -443,7 +470,17 @@ void CSubChatEdit::OnKeyDown(TCHAR wParam, UINT upLParam,UINT loLParam){
                                        
                if(untilConnectingFlag == FALSE){
                        untilConnectingFlag = TRUE;
-                       self.SendChat();
+                       ;
+
+                       if(self.SendChat() != TRUE){
+
+                               _beginthread(agreeEnterKeyThread,0,this);
+
+                       }
+
+               
+
+       
                }
                                        
                cs.Unlock();
index 9c6ec89..a7b1467 100644 (file)
@@ -141,7 +141,7 @@ namespace nlite{
                
 
        public:
-               VOID SendChat();
+               BOOL SendChat();
 
                VOID OnSendChatResult();
 
index e042c01..4da7ab5 100644 (file)
@@ -4,6 +4,16 @@
 
 namespace nlite{
 
+//\90F\92è\90\94
+namespace ColorList{
+       enum type{
+               selectBack = RGB(255,240,240),
+               outLineSelect = RGB(255,0,0),
+               outLineNomal = RGB(0,0,0),
+               colLine = RGB(224,224,224)
+       };
+};
+
 //
 //\83R\83\81\83\93\83g\83r\83\85\81[\83N\83\89\83X\83\81\83\\83b\83h
 ///////////////////////////////////////////////////////
@@ -194,7 +204,7 @@ VOID CCommentView::OnChatReceve(NicoLiveChat_P chat,UINT_PTR commnetCountSum){
 }
 
 
-VOID CCommentView::SetStreamStatus(StreamStatus &st){
+VOID CCommentView::SetStreamStatus(StreamStatus_P st){
        
        streamStatus.SetStreamStatus(st);
 }
@@ -483,7 +493,7 @@ VOID CCommentView::OnVScroll(INT_PTR loWParam,SHORT hiWParam,HWND lParam){
 
 LRESULT CCommentView::OnCreate(LPCREATESTRUCT lpcs){
        m_header.Create(m_hWnd,0,WC_HEADER,WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN   | HDS_BUTTONS | HDS_HOTTRACK |HDS_DRAGDROP | HDS_FULLDRAG  ,0,commentViewConstant::HEADER_ID);
-       m_commentListWindow.Create(m_hWnd,0,commentViewConstant::NLITE_COMMENTLISTWINDOW,WS_CHILD | WS_VISIBLE  | WS_CLIPCHILDREN  , 0,commentViewConstant::LISTBOX_ID);
+       m_commentListWindow.Create(m_hWnd,0,commentViewConstant::NLITE_COMMENTLISTWINDOW,WS_CHILD | WS_VISIBLE  | WS_CLIPCHILDREN  , 0,commentViewConstant::LISTWINDOW);
        
        
        
@@ -558,7 +568,7 @@ VOID CCommentListWindow::OnPaint(HDC in_hdc){
        
        
        RECT windowRect;
-
+       RECT listRect = {0};
        RECT clientRect;
        
        self.GetClientRect(&clientRect);
@@ -569,14 +579,14 @@ VOID CCommentListWindow::OnPaint(HDC in_hdc){
        windowRect.bottom -= windowRect.top;
        windowRect.left = 0;
        windowRect.top = 0;
-       RECT listRect = windowRect;
-       listRect.right = self.GetColumnHolSizeSum();
+       
+       
        CPaintDC pdc(*this);
        
        {
                CMemoryDC mdc(pdc,windowRect);
                mdc.SelectFont(AtlGetDefaultGuiFont());
-               mdc.FillRect(&clientRect,(HBRUSH)::GetStockObject(GRAY_BRUSH));
+               
 
                CCommentList &commentList = self.commentlist;
 
@@ -588,7 +598,8 @@ VOID CCommentListWindow::OnPaint(HDC in_hdc){
        
                if(commentList.Size() > (UINT_PTR)viewStartHeight){
 
-       
+                       listRect = windowRect;
+                       listRect.right = self.GetColumnHolSizeSum();            
                        
                        CCommentList::iterator chatData = commentList.begin();
                        std::advance(chatData,viewStartHeight);
@@ -635,6 +646,8 @@ VOID CCommentListWindow::OnPaint(HDC in_hdc){
                        }
 
                }
+               windowRect.left = listRect.right;
+               mdc.FillRect(&windowRect,(HBRUSH)::GetStockObject(GRAY_BRUSH));
 
        
        
index 1a6171c..4751474 100644 (file)
@@ -2,18 +2,22 @@
 
 namespace nlite{
 
+       //\92è\90\94\97p\82Ì\96¼\91O\8bó\8aÔ
        namespace commentViewConstant{
-               const static LPCTSTR  NLITE_COMMENTVIEW = TEXT("NLITE_COMMENTVIEW");
 
-               const static LPCTSTR NLITE_COMMENTLISTBASE = TEXT("NLITE_COMMENTLISTBASE");
+               //\83R\83\81\83\93\83g\83r\83\85\81[\83E\83B\83\93\83h\83E\96¼
+               const static LPCTSTR  NLITE_COMMENTVIEW = TEXT("NLITE_COMMENTVIEW");
 
+               //\83R\83\81\83\93\83g\83\8a\83X\83g\83E\83B\83\93\83h\83E\96¼
                const static LPCTSTR NLITE_COMMENTLISTWINDOW = TEXT("NLITE_COMMENTLISTWINDOW");
 
+               //\83w\83b\83_\81[\82Ì\8d\82\82³
                const static UINT_PTR HEADER_HAIGHT = 20;
 
+               //\83w\83b\83_\81[\83R\83\93\83g\83\8d\81[\83\8bID
                const static UINT_PTR HEADER_ID = 257;
 
-               const static UINT_PTR LISTBOX_ID = 258;
+               const static UINT_PTR LISTWINDOW = 258;
 
                const static UINT_PTR MENU_OR_ID = 256;
        }
@@ -27,14 +31,7 @@ namespace nlite{
        private:
                CCommentView &self;
                
-               struct ColorList{
-                       enum type{
-                               selectBack = RGB(255,240,240),
-                               outLineSelect = RGB(255,0,0),
-                               outLineNomal = RGB(0,0,0),
-                               colLine = RGB(224,224,224)
-                       };
-               };
+               
 
        public:
 
@@ -245,7 +242,7 @@ namespace nlite{
                ///
                ///\83j\83R\90\82Ì\83X\83e\81[\83^\83X\90Ý\92è
                ///
-               VOID SetStreamStatus(StreamStatus &st);
+               VOID SetStreamStatus(StreamStatus_P st);
 
                ///
                ///\83`\83\83\83b\83g\83R\83\81\83\93\83g\8eó\90M\8e\9e\82Ì\8f\88\97\9d
diff --git a/nlite/nlite_exception.cpp b/nlite/nlite_exception.cpp
new file mode 100644 (file)
index 0000000..837753b
--- /dev/null
@@ -0,0 +1,48 @@
+#include "stdafx.h"
+#include "nlite_include.h"
+
+namespace nlite{
+
+Exception::Exception(){}
+
+Exception::Exception(const char* const& errMessage):exception(errMessage){}
+
+Exception::Exception(const wchar_t * const & errMessage,UINT_PTR in_line,LPCTSTR in_fileName):
+       wErrMessage(errMessage),
+       line(in_line)
+{
+       WCHAR file[_MAX_FNAME];
+       WCHAR ext[_MAX_EXT];
+       _wsplitpath(in_fileName,(wchar_t*)NULL,(wchar_t*)NULL,file,ext);
+       fileName = file;
+       fileName += ext;
+
+}
+
+LPCWSTR Exception::what(){
+
+       return wErrMessage;
+
+}
+
+UINT_PTR Exception::getLineNo(){
+
+       return line;
+}
+
+LPCWSTR Exception::getFileName(){
+                       
+       return fileName;
+               
+}
+
+
+AppInitException::AppInitException(UINT_PTR in_line,LPCTSTR in_fileName):Exception(TEXT("\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8f\89\8aú\89»\82É\8e¸\94s\82µ\82Ü\82µ\82½"),in_line,in_fileName){}
+
+
+
+NLIBException::NLIBException(LPCTSTR errmessage,NLIB_RESULT rslt,UINT_PTR in_line,LPCTSTR in_fileName):errcode(rslt),Exception(errmessage,in_line,in_fileName){}
+
+NLiveException::NLiveException(LPCTSTR errmessage,UINT_PTR in_line,LPCTSTR in_fileName):Exception(errmessage,in_line,in_fileName){}
+
+}
\ No newline at end of file
index 0204c14..a3af619 100644 (file)
@@ -11,52 +11,50 @@ namespace nlite{
                UINT_PTR line;
                CNLiteString fileName;
 
-               //\83R\83\93\83X\83g\83\89\83N\83^
+               
        public:
-               Exception(){}
-               Exception(const char* const& errMessage):exception(errMessage){}
-               Exception(const wchar_t * const & errMessage,UINT_PTR in_line,LPCTSTR in_fileName):
-                       wErrMessage(errMessage),
-                       line(in_line)
-               {
-                       WCHAR file[_MAX_FNAME];
-                       WCHAR ext[_MAX_EXT];
-                       _wsplitpath(in_fileName,(wchar_t*)NULL,(wchar_t*)NULL,file,ext);
-                       fileName = file;
-                       fileName += ext;
-
-               }
-
-               LPCWSTR what(){
-
-                       return wErrMessage;
-
-               }
+               ///
+               ///\83R\83\93\83X\83g\83\89\83N\83^
+               ///
+               Exception();
+               Exception(const char* const& errMessage);
+               Exception(const wchar_t * const & errMessage,UINT_PTR in_line,LPCTSTR in_fileName);
+               
+               
+               ///
+               ///\83G\83\89\81[\95\8c¾\8eæ\93¾
+               ///
+               LPCWSTR what();
 
-               UINT_PTR getLineNo(){
 
-                       return line;
-               }
+               ///
+               ///\83G\83\89\81[\94­\90\8ds\8eæ\93¾
+               ///
+               UINT_PTR getLineNo();
 
-               LPCWSTR getFileName(){
-                       
-                       return fileName;
-               
-               }
+               ///
+               ///\83G\83\89\81[\94­\90\83t\83@\83C\83\8b\96¼\8eæ\93¾
+               ///
+               LPCWSTR getFileName();
 
        };
 
-
+       ///
+       ///\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8f\89\8aú\89»\97á\8aO\83N\83\89\83X
+       ///
        class AppInitException : public Exception{
 
        public:
-
-               AppInitException(UINT_PTR in_line,LPCTSTR in_fileName):Exception(TEXT("\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8f\89\8aú\89»\82É\8e¸\94s\82µ\82Ü\82µ\82½"),in_line,in_fileName){}
-
-
-               
+               ///
+               ///\83R\83\93\83X\83g\83\89\83N\83^
+               ///
+               AppInitException(UINT_PTR in_line,LPCTSTR in_fileName);
        };
 
+
+       ///
+       ///nlib\97á\8aO\83N\83\89\83X
+       ///
        class NLIBException : public Exception{
 
        private:
@@ -64,17 +62,21 @@ namespace nlite{
                NLIB_RESULT errcode;
 
        public:
-               NLIBException(LPCTSTR errmessage,NLIB_RESULT rslt,UINT_PTR in_line,LPCTSTR in_fileName):errcode(rslt),Exception(errmessage,in_line,in_fileName)
-               {}
+               NLIBException(LPCTSTR errmessage,NLIB_RESULT rslt,UINT_PTR in_line,LPCTSTR in_fileName);
+               
        
 
        };
 
+
+       ///
+       ///\83j\83R\90\97á\8aO\83N\83\89\83X
+       ///
        class NLiveException :public Exception{
 
        public:
-
-               NLiveException(LPCTSTR errmessage,UINT_PTR in_line,LPCTSTR in_fileName):Exception(errmessage,in_line,in_fileName){}
+               NLiveException(LPCTSTR errmessage,UINT_PTR in_line,LPCTSTR in_fileName);
+               
 
        };
        
index f973c2d..ee7edba 100644 (file)
@@ -8,25 +8,16 @@ namespace nlite{
        ///
        const static LPCTSTR NLITE_MAINWINDOW = TEXT("nlite");
 
-       ///
-       ///\83E\83B\83\93\83h\83E\8dÅ\92á\83T\83C\83Y
-       ///
-       const static SIZE lowestFrameSize = {300,300};
+       
 
        ///
        ///\83\81\83C\83\93\83t\83\8c\81[\83\80\83N\83\89\83X
        ///
-       class CNliteMainFrame : public CFrameWindowImpl<CNliteMainFrame>,
-               public CUpdateUI<CNliteMainFrame>,public CMessageFilter, public CIdleHandler
+       class CNliteMainFrame : public CFrameWindowImpl<CNliteMainFrame>
+               ,public CUpdateUI<CNliteMainFrame>,public CMessageFilter, public CIdleHandler
        {
 
-               ///
-               ///\92è\90\94
-               ///
-               enum{
-                       IDC_COMBO_REBAR = 301,
-                       IDC_COMBO_TITLE = 302
-               };
+               
 
        public:
 
@@ -98,7 +89,7 @@ namespace nlite{
                        ///
                        ///\83R\83\81\83\93\83g\8eó\90M\8aJ\8en\8e\9e\82Ì\83R\81[\83\8b\83o\83b\83N\8f\88\97\9d
                        ///
-                       VOID OnChatReceveStart(StreamStatus &streamStatus);
+                       VOID OnChatReceveStart(StreamStatus_P streamStatus);
 
 
                        ///
@@ -136,7 +127,6 @@ namespace nlite{
                CSubLiveNoComboBox subLiveNoComboBox;           //\90\95ú\91\97\94Ô\8d\86\93ü\97Í\97p\83R\83\93\83{\83{\83b\83N\83X(\83T\83u\83N\83\89\83X)
                CCommentWriteWindow commentWriteWindow;         //\83R\83\81\83\93\83g\8f\91\82«\8d\9e\82Ý\97p\83N\83\89\83X
                CTabCtrl tabctrl;                                                       //\83^\83u\83R\83\93\83g\83\8d\81[\83\8b
-               
                HFONT hTabFont;                                                         //\83^\83u\83E\83B\83\93\83h\83E\97p\82Ì\83t\83H\83\93\83g                            
                CComboBoxEx lvNoCombo;                                          //\90\95ú\91\97\94Ô\8d\86\93ü\97Í\97p\83R\83\93\83{\83{\83b\83N\83X
                INT_PTR statusBarHeight;                                        //\83X\83e\81[\83^\83X\83o\81[\82Ì\8d\82\82³
@@ -145,18 +135,14 @@ namespace nlite{
                Property nliteProperty;                                         //\83A\83v\83\8a\83P\81[\83V\83\87\83\93\83v\83\8d\83p\83e\83B
                CNicoLiveStream nicoLiveStream;                         //\83j\83R\83j\83R\90\95ú\91\97\83I\83u\83W\83F\83N\83g
        private:
-
                // \83\81\83b\83Z\81[\83W\83t\83B\83\8b\83^\8f\88\97\9d
-               virtual BOOL PreTranslateMessage(MSG* pMsg){
-                       // \8aî\92ê\83N\83\89\83X\82ÌPreTranslateMessage\82ð\8cÄ\82Ñ\8fo\82·
-                       return CFrameWindowImpl<CNliteMainFrame>::PreTranslateMessage(pMsg);
-               }
+               virtual BOOL PreTranslateMessage(MSG* pMsg);
 
                // \83A\83C\83h\83\8b\8f\88\97\9d
-               virtual BOOL OnIdle(){
-                       return FALSE;
-               }
+               virtual BOOL OnIdle();
 
+               
+               
 
        public:
 
@@ -180,6 +166,7 @@ namespace nlite{
                // \83\81\83b\83Z\81[\83W\83}\83b\83v
                BEGIN_MSG_MAP_EX(CNliteMainFrame)
                        MSG_WM_CREATE(OnCreate)
+                       MSG_WM_CLOSE(OnClose)
                        MSG_WM_DESTROY(OnDestroy)
                        MESSAGE_HANDLER(WM_SIZE,OnSize)
                        MSG_WM_SIZING(OnSizing)
@@ -202,13 +189,25 @@ namespace nlite{
                ///
                VOID Finalaize();
                
-               VOID OnDestroy();
-
+               
+               ///
+               ///\97á\8aO\94­\90\8e\9e\82Ì\8f\88\97\9d
+               ///
                VOID OnException();
 
        private:
 
                ///
+               ///\83E\83B\83\93\83h\83E\82ð\95Â\82\82é\82Æ\82«\82Ì\8f\88\97\9d
+               ///
+               VOID OnClose();
+
+               ///
+               ///\83E\83B\83\93\83h\83E\94j\8aü\8e\9e\82Ì\8f\88\97\9d
+               ///
+               VOID OnDestroy();
+
+               ///
                ///\83c\81[\83\8b\83o\81[\8d\82\82³\95Ï\8dX
                ///
                LRESULT OnRbnHeightChange(INT_PTR wParam,LPNMHDR lParam,BOOL &bHandled);
@@ -236,7 +235,11 @@ namespace nlite{
                ///
                LRESULT OnCreate(LPCREATESTRUCT lpcs);
 
-               VOID ConnectNicoLive(LPCTSTR liveNo);
+
+               ///
+               ///\83j\83R\90\95ú\91\97\82É\90Ú\91±
+               ///
+               BOOL ConnectNicoLive(LPCTSTR liveNo);
 
                
                
@@ -250,7 +253,9 @@ namespace nlite{
                //\83N\83b\83L\81[\82Ì\90Ý\92è
                VOID OnCookie(UINT uNotifyCode,int nID,HWND hWndCtl);
 
-               
+               ///
+               ///CNicoLiveStream\82Ì\83R\81[\83\8b\83o\83b\83N\97p\8aÖ\90\94
+               ///
                static NLIB_RESULT LiveCallBack(NICOLIVE_EVENT eventType,NicoLiveStream_P pNicoLiveStream,LPVOID option,NICOLIVE_PARAM param1,NICOLIVE_PARAM param2);
 
                
index 0388410..83ad01e 100644 (file)
@@ -6,6 +6,20 @@ namespace nlite{
 
 static const RECT commentViewSize = {5,0,5,0};
 
+///
+///\92è\90\94
+///
+enum{
+       IDC_COMBO_REBAR = 301,
+       IDC_COMBO_TITLE = 302
+};
+
+
+///
+///\83E\83B\83\93\83h\83E\8dÅ\92á\83T\83C\83Y
+///
+const static SIZE lowestFrameSize = {300,300};
+
 
 
 CNliteMainFrame::~CNliteMainFrame(){
@@ -25,6 +39,18 @@ CNliteMainFrame::CNliteMainFrame()
        hTabFont = CreateFontIndirect(&lf);
 }
 
+
+// \83\81\83b\83Z\81[\83W\83t\83B\83\8b\83^\8f\88\97\9d
+BOOL CNliteMainFrame::PreTranslateMessage(MSG* pMsg){
+       // \8aî\92ê\83N\83\89\83X\82ÌPreTranslateMessage\82ð\8cÄ\82Ñ\8fo\82·
+       return CFrameWindowImpl<CNliteMainFrame>::PreTranslateMessage(pMsg);
+}
+
+// \83A\83C\83h\83\8b\8f\88\97\9d
+BOOL CNliteMainFrame::OnIdle(){
+       return FALSE;
+}
+
 //\83T\83C\83Y\95Ï\8dX\8f\88\97\9d
 VOID CNliteMainFrame::ChangeSize(const SIZE& client){
 
@@ -150,8 +176,16 @@ VOID CNliteMainFrame::Initialize(LPCTSTR localAppDataPath){
                        
 }
 
-VOID CNliteMainFrame::OnDestroy(){
+VOID CNliteMainFrame::OnClose(){
+       this->ShowWindow(SW_HIDE);
        nicoLiveStream.DisConnect();
+       this->DestroyWindow();
+
+       return;
+}
+
+VOID CNliteMainFrame::OnDestroy(){
+       
        commentView.DestroyWindow();
                        
        PostQuitMessage(0);
@@ -196,11 +230,63 @@ VOID CNliteMainFrame::OnCookie(UINT uNotifyCode,int nID,HWND hWndCtl){
 }
 
 
-VOID CNliteMainFrame::ConnectNicoLive(LPCTSTR liveNo){
+BOOL CNliteMainFrame::ConnectNicoLive(LPCTSTR liveNo){
                        
        nicoLiveStream.DisConnect();
        commentView.OnConnect();
-       nicoLiveStream.Connect(nicoVideoAuth,liveNo,LiveCallBack,&userData);
+       BOOL rslt = FALSE;
+       NLIB_RESULT code = nicoLiveStream.Connect(nicoVideoAuth,liveNo,LiveCallBack,&userData);
+
+       //\83G\83\89\81[\83R\81[\83h\8f\88\97\9d
+       switch(code){
+       
+               //\90³\8fí\8fI\97¹
+       case NLIB_ERR_OK:
+
+               rslt = TRUE;
+               break;
+
+               //\91z\92è\82³\82ê\82½\83G\83\89\81[\83R\81[\83h
+       case NLIB_ERR_COOKIE_FAILED:
+       case NLIB_LIVENO_FAILED_UNDEFEINE:
+       case NLIB_GETPLAYERSTATUS_FAILED_CONNECT:
+       case NLIB_ERR_GETPLAYERSTATUS_INVALID_LV:
+       case NLIB_ERR_GETPLAYERSTATUS_INVALID_THREAD:
+       case NLIB_ERR_GETPLAYERSTATUS_CLOSED:
+       case NLIB_ERR_GETPLAYERSTATUS_UNKNOWN_ERROR:
+       case NLIB_ERR_GETPLAYERSTATUS_SERVER_ERROR:
+       case NLIB_ERR_GETPLAYERSTATUS_DELETED:
+       case NLIB_ERR_GETPLAYERSTATUS_FULL:
+       case NLIB_ERR_GETPLAYERSTATUS_PERMISSION_DENIED:
+       case NLIB_ERR_GETPLAYERSTATUS_ACCESS_LOCKED:
+       case NLIB_ERR_GETPLAYERSTATUS_REQUIRE_COMMUNITY_MEMBER:
+       case NLIB_ERR_GETPLAYERSTATUS_COMINGSOON:
+       case NLIB_ERR_GETPLAYERSTATUS_NOTFOUND:
+       case NLIB_ERR_GETPLAYERSTATUS_NOTLOGIN:
+       case NLIB_ERR_GETPLAYERSTATUS_UNKNOWN:
+       case NLIB_ERR_GETPLAYERSTATUS_MAINTENANCE:
+       case NLIB_ERR_GETPLAYERSTATUS_NOT_PERMITTED:
+       case NLIB_ERR_GETPLAYERSTATUS_REQUIRE_ACCEPT_PRINT_TIMESHIFT_TICKET:
+       case NLIB_ERR_GETPLAYERSTATUS_TSARCHIVE:
+       case NLIB_ERR_GETPLAYERSTATUS_USERTIMESHIFT:
+       case NLIB_ERR_GETPLAYERSTATUS_UNDEFINED:
+
+               ::MessageBox(NULL,NLIB_GetErrorMessage(code),TEXT("\95ú\91\97\90Ú\91±\83G\83\89\81["),MB_ICONERROR | MB_OK);
+               rslt = FALSE;
+               break;
+
+
+               //\91z\92è\82³\82ê\82Ä\82¢\82È\82¢\83G\83\89\81[\83R\81[\83h
+       default:
+               {
+                       UnexpectedErrorMessageShow( TEXT("\95ú\91\97\90Ú\91±\92\86\82É"),NLIB_GetErrorMessage(code));
+                       errprint(TEXT("\95ú\91\97\90Ú\91±\83G\83\89\81[:%s"),NLIB_GetErrorMessage(code));
+                       rslt = FALSE;
+               }
+               break;
+
+       }
+       return rslt;
 
 }
 
@@ -267,7 +353,7 @@ NLIB_RESULT CNliteMainFrame::LiveCallBack(NICOLIVE_EVENT eventType,NicoLiveStrea
 
                case NICOLIVE_EVENT_RECEVE_CONNECTRESULT:
 
-                       userData.OnChatReceveStart(*NicoLiveStream_getStreamStatus(pNicoLiveStream));
+                       userData.OnChatReceveStart(NicoLiveStream_getStreamStatus(pNicoLiveStream));
 
                        break;
 
@@ -345,8 +431,9 @@ VOID CNliteMainFrame::CSubLiveNoComboBox::OnKeyDown(TCHAR wParam, UINT upLParam,
                        untilConnectingFlag = TRUE;
                        std::vector<TCHAR> buffer(this->GetWindowTextLengthW() + 1); 
                        ::GetWindowTextW(this->m_hWnd,&buffer[0],buffer.size());
-                       self.ConnectNicoLive(&buffer[0]);
-                       _beginthread(AgreeEnterKeyThread,0,this);
+                       if(self.ConnectNicoLive(&buffer[0]) != TRUE){
+                               _beginthread(AgreeEnterKeyThread,0,this);
+                       }
                }
                                        
                cs.Unlock();
@@ -383,7 +470,7 @@ VOID CNliteMainFrame::CLiveUserData::OnConnect(){
 }
 
 
-VOID CNliteMainFrame::CLiveUserData::OnChatReceveStart(StreamStatus &streamStatus){
+VOID CNliteMainFrame::CLiveUserData::OnChatReceveStart(StreamStatus_P streamStatus){
                                
        commentView.SetStreamStatus(streamStatus);
 
index 0c5159e..e2d9c1a 100644 (file)
@@ -26,15 +26,15 @@ VOID CStreamStatus::Initalize(){
 
 
 
-VOID CStreamStatus::SetStreamStatus(StreamStatus &streamStatus){
-
-       id = streamStatus.id;
-       default_community = streamStatus.default_community;
-       provider_type = streamStatus.provider_type;
-       start_time = streamStatus.start_time;
-       end_time = streamStatus.end_time;
-       open_time = streamStatus.open_time;
-       base_time = streamStatus.base_time;
+VOID CStreamStatus::SetStreamStatus(StreamStatus_P streamStatus){
+
+       id = StreamStatus_getId(streamStatus);
+       default_community = StreamStatus_getDefaultCommunity(streamStatus);
+       provider_type = StreamStatus_getProviderType(streamStatus);
+       start_time = StreamStatus_getStartTime(streamStatus);
+       end_time = StreamStatus_getEndTime(streamStatus);
+       open_time = StreamStatus_getOpenTime(streamStatus);
+       base_time = StreamStatus_getBaseTime(streamStatus);
 
 }
 
index f9fd2d6..72b0385 100644 (file)
@@ -21,7 +21,7 @@ namespace nlite{
                
                VOID Initalize();
                
-               VOID SetStreamStatus(StreamStatus &streamStatus);
+               VOID SetStreamStatus(StreamStatus_P streamStatus);
 
 
        };
index e7f0002..4510bc5 100644 (file)
@@ -43,6 +43,209 @@ WritePrivateProfileInt(
 }
 
 
+PropertyBase::PropertyBase(LPCTSTR in_sectionName):sectionName(in_sectionName){}
+
+BOOL CCookieSettingWindow::OnInitDialog(CWindow wndFocus, LPARAM lInitParam){
+       // \83X\83N\83\8a\81[\83\93\82Ì\92\86\89\9b\82É\94z\92u
+       CenterWindow();
+
+
+       CButton radio;
+
+       switch(this->browserType){
+
+       case BT_INTERNET_EXPLORER:
+
+               radio = GetDlgItem(IDC_RADIO_IE);
+
+               break;
+
+       case BT_FIRE_FOX:
+
+               radio = GetDlgItem(IDC_RADIO_FIREFOX);
+
+               break;
+
+
+       case BT_GOOGLE_CHROME:
+
+               radio = GetDlgItem(IDC_RADIO_CHROME);
+
+               break;
+
+       case BT_IE_COMPONENT:
+
+               radio = GetDlgItem(IDC_RADIO_IECM);
+
+               break;
+
+       default:
+               goto skip;
+       }
+       radio.SetCheck(BST_CHECKED);
+                       
+skip:
+                       
+       return TRUE;
+}
+
+VOID CCookieSettingWindow::OnOK(UINT uNotifyCode, int nID, CWindow wndCtl){
+       CButton ieRadio = GetDlgItem(IDC_RADIO_IE);
+       CButton firefoxRadio = GetDlgItem(IDC_RADIO_FIREFOX);
+       CButton chromeRadio = GetDlgItem(IDC_RADIO_CHROME);
+       CButton iecmRadio = GetDlgItem(IDC_RADIO_IECM);
+
+       if(ieRadio.GetCheck() == BST_CHECKED){
+
+               this->browserType = BT_INTERNET_EXPLORER;
+
+       }
+
+       if(firefoxRadio.GetCheck() == BST_CHECKED){
+
+               this->browserType = BT_FIRE_FOX;
+
+       }
+
+       if(chromeRadio.GetCheck() == BST_CHECKED){
+
+               this->browserType = BT_GOOGLE_CHROME;
+
+       }
+
+       if(iecmRadio.GetCheck() == BST_CHECKED){
+
+               this->browserType = BT_IE_COMPONENT;
+
+       }
+
+
+       EndDialog(nID);
+}
+
+VOID CCookieSettingWindow::OnCancel(UINT uNotifyCode, int nID, CWindow wndCtl){
+       EndDialog(nID);
+}
+
+VOID CCookieSettingWindow::SetBrowserType(BROWSERTYPE browserType){
+
+       this->browserType = browserType;
+
+
+       return;
+}
+
+BROWSERTYPE CCookieSettingWindow::GetBrowserType(){
+       return this->browserType;
+}
+
+
+
+CommentViewProperty::CommentViewProperty():
+       commentFoldingFlag(TRUE),
+       commentTimeType(StreamingTimeType),
+       PropertyBase(TEXT("COMMENTVIEW")),
+       baseStringColor(RGB(0,0,0)),
+       backColor(RGB(255,255,255))
+
+{
+
+       memset(headerholSize,-1,sizeof(headerholSize));
+}
+
+LPCTSTR CommentViewProperty::GetSectionName(){
+
+       return sectionName;
+
+}
+
+
+CommentReadProperty::CommentReadProperty():
+       commentReadFlag(FALSE),
+       ngWordReadFlag(TRUE),
+       ngUserReadFlag(TRUE),
+       managementReadFlag(TRUE),
+       bspReadFlag(TRUE),
+       userCommentReadFlag(TRUE),
+       teropReadFlag(TRUE),
+       PropertyBase(TEXT("COMMENTREAD"))
+{}
+
+LPCTSTR CommentReadProperty::GetSectionName(){
+
+       return sectionName;
+
+}
+
+
+GeneralProperty::GeneralProperty():
+       userCountUpdateFlag(TRUE),
+       commentLogAutoSaveFlag(FALSE),
+       defaultBroserFlag(TRUE),
+       autoNameRegisterFlag(FALSE),
+       autoNameUpdateFlag(FALSE),
+       numberNameFlag(FALSE),
+       autoColorRegisterFlag(FALSE),
+       activeCountTimeFlag(TRUE),
+       PropertyBase(TEXT("GENERAL")),
+       browserType(BT_NOSETTING)
+{}
+
+LPCTSTR GeneralProperty::GetSectionName(){
+
+       return sectionName;
+
+}
+
+MainFrameProperty::MainFrameProperty():
+windowFrontFlag(TRUE),
+PropertyBase(TEXT("MAINFRAME"))
+{
+
+       ZeroMemory(&windowSize,sizeof(windowSize));
+
+}
+
+LPCTSTR MainFrameProperty::GetSectionName(){
+
+       return sectionName;
+}
+
+
+Property::Property()
+{
+       TCHAR localAppPath[_MAX_PATH];
+       SHGetFolderPathW(0,CSIDL_LOCAL_APPDATA,0,SHGFP_TYPE_CURRENT,localAppPath);
+
+       this->appLocalPath = localAppPath;
+}
+
+Property::~Property()
+{
+                       
+               
+}
+
+VOID Property::Initialize(){
+       this->~Property();
+       new(this) Property;
+
+}
+
+BROWSERTYPE Property::CookieSetting(){
+
+       CCookieSettingWindow cookieSettingwindow;
+
+       cookieSettingwindow.SetBrowserType(gp.browserType);
+
+       cookieSettingwindow.DoModal();
+
+       this->gp.browserType = cookieSettingwindow.GetBrowserType();
+
+       return this->gp.browserType;
+
+}
+
 VOID Property::ReadIniFile(){
 
        CreatePropertyFile();
index c781401..bc6278c 100644 (file)
@@ -2,7 +2,17 @@
 
 namespace nlite{
 
-       
+       ///
+       ///\83v\83\8d\83p\83e\83B\83x\81[\83X\83N\83\89\83X
+       ///
+       struct PropertyBase{
+
+       protected:
+               CNLiteString sectionName;
+
+       public:
+               PropertyBase(LPCTSTR in_sectionName);
+       };
 
        class CCookieSettingWindow:public CDialogImpl<CCookieSettingWindow>{
                
@@ -18,104 +28,23 @@ namespace nlite{
                        COMMAND_ID_HANDLER_EX(IDCANCEL, OnCancel)
                END_MSG_MAP()
 
-               BOOL OnInitDialog(CWindow wndFocus, LPARAM lInitParam){
-                       // \83X\83N\83\8a\81[\83\93\82Ì\92\86\89\9b\82É\94z\92u
-                       CenterWindow();
-
-
-                       CButton radio;
-
-                       switch(this->browserType){
-
-                       case BT_INTERNET_EXPLORER:
-
-                               radio = GetDlgItem(IDC_RADIO_IE);
-
-                               break;
-
-                       case BT_FIRE_FOX:
-
-                               radio = GetDlgItem(IDC_RADIO_FIREFOX);
-
-                               break;
-
-
-                       case BT_GOOGLE_CHROME:
-
-                               radio = GetDlgItem(IDC_RADIO_CHROME);
-
-                               break;
-
-                       case BT_IE_COMPONENT:
-
-                               radio = GetDlgItem(IDC_RADIO_IECM);
-
-                               break;
-
-                       default:
-                               goto skip;
-                       }
-                       radio.SetCheck(BST_CHECKED);
-                       
-skip:
-                       
-                       return TRUE;
-               }
-
-               void OnOK(UINT uNotifyCode, int nID, CWindow wndCtl){
-                       CButton ieRadio = GetDlgItem(IDC_RADIO_IE);
-                       CButton firefoxRadio = GetDlgItem(IDC_RADIO_FIREFOX);
-                       CButton chromeRadio = GetDlgItem(IDC_RADIO_CHROME);
-                       CButton iecmRadio = GetDlgItem(IDC_RADIO_IECM);
-
-                       if(ieRadio.GetCheck() == BST_CHECKED){
-
-                               this->browserType = BT_INTERNET_EXPLORER;
-
-                       }
-
-                       if(firefoxRadio.GetCheck() == BST_CHECKED){
-
-                               this->browserType = BT_FIRE_FOX;
-
-                       }
-
-                       if(chromeRadio.GetCheck() == BST_CHECKED){
-
-                               this->browserType = BT_GOOGLE_CHROME;
-
-                       }
-
-                       if(iecmRadio.GetCheck() == BST_CHECKED){
-
-                               this->browserType = BT_IE_COMPONENT;
-
-                       }
-
-
-                       EndDialog(nID);
-               }
 
-               void OnCancel(UINT uNotifyCode, int nID, CWindow wndCtl){
-                       EndDialog(nID);
-               }
+               BOOL OnInitDialog(CWindow wndFocus, LPARAM lInitParam);
 
-               void SetBrowserType(BROWSERTYPE browserType){
+               VOID OnOK(UINT uNotifyCode, int nID, CWindow wndCtl);
 
-                       this->browserType = browserType;
+               VOID OnCancel(UINT uNotifyCode, int nID, CWindow wndCtl);
 
+               VOID SetBrowserType(BROWSERTYPE browserType);
 
-                       return;
-               }
+               BROWSERTYPE GetBrowserType();
 
-               BROWSERTYPE GetBrowserType(){
-                       return this->browserType;
-               }
+               
 
 
        };
 
-       struct CommentViewProperty{
+       struct CommentViewProperty:public PropertyBase{
 
                
                enum CommentTimeType{
@@ -124,8 +53,7 @@ skip:
 
                };
 
-       private:
-               CNLiteString sectionName;
+       
                
 #define COMMENTVIEW_HEADERITEMSIZE 5
        public:
@@ -141,33 +69,19 @@ skip:
                COLORREF lineColor;
 
 
-               CommentViewProperty():
-                       commentFoldingFlag(TRUE),
-                       commentTimeType(StreamingTimeType),
-                       sectionName(TEXT("COMMENTVIEW")),
-                       baseStringColor(RGB(0,0,0)),
-                       backColor(RGB(255,255,255))
-
-               {
+               CommentViewProperty();
 
-                       memset(headerholSize,-1,sizeof(headerholSize));
-               }
+               LPCTSTR GetSectionName();
 
-               LPCTSTR GetSectionName(){
-
-                       return sectionName;
-
-               }
+               
 
        };
 
        ///
        ///\83R\83\81\83\93\83g\93Ç\82Ý\8fã\82°\90Ý\92è
        ///
-       struct CommentReadProperty{
+       struct CommentReadProperty:public PropertyBase{
 
-       private:
-               CNLiteString sectionName;
        public:
 
                BOOL commentReadFlag;                                                           //\83R\83\81\83\93\83g\93Ç\82Ý\8fã\82°\83t\83\89\83O
@@ -183,32 +97,17 @@ skip:
                CNLiteString shortComment;                                                              //\8fÈ\97ª\8e\9e\82É\93Ç\82Ý\8fã\82°\82é\95\8e\9a\97ñ
                CNLiteString outString;                                                                 //\93Ç\82Ý\8fã\82°\8f\9c\8aO\95\8e\9a\97ñ
                
+               CommentReadProperty();
 
-               CommentReadProperty():
-                       commentReadFlag(FALSE),
-                       ngWordReadFlag(TRUE),
-                       ngUserReadFlag(TRUE),
-                       managementReadFlag(TRUE),
-                       bspReadFlag(TRUE),
-                       userCommentReadFlag(TRUE),
-                       teropReadFlag(TRUE),
-                       sectionName(TEXT("COMMENTREAD"))
-               {}
-
-               LPCTSTR GetSectionName(){
-
-                       return sectionName;
-
-               }
+               LPCTSTR GetSectionName();
+               
 
        };
 
        ///
        ///\88ê\94Ê\90Ý\92è
        ///
-       struct GeneralProperty{
-       private:
-               CNLiteString sectionName;
+       struct GeneralProperty:public PropertyBase{
 
        public:
                CNLiteString browserPath;                                               //\83u\83\89\83E\83U\82Ì\83p\83X
@@ -223,56 +122,34 @@ skip:
                BOOL activeCountTimeFlag;                                       //\83A\83N\83e\83B\83u\90l\90\94\82ð\8e©\93®\8dX\90V\82·\82é\82©\82Ì\83t\83\89\83O
                BROWSERTYPE browserType;                                        //\83u\83\89\83E\83U\83^\83C\83v
 
-               GeneralProperty():
-                       userCountUpdateFlag(TRUE),
-                       commentLogAutoSaveFlag(FALSE),
-                       defaultBroserFlag(TRUE),
-                       autoNameRegisterFlag(FALSE),
-                       autoNameUpdateFlag(FALSE),
-                       numberNameFlag(FALSE),
-                       autoColorRegisterFlag(FALSE),
-                       activeCountTimeFlag(TRUE),
-                       sectionName(TEXT("GENERAL")),
-                       browserType(BT_NOSETTING)
-               {}
-
-               LPCTSTR GetSectionName(){
-
-                       return sectionName;
+               GeneralProperty();
 
-               }
+               LPCTSTR GetSectionName();
+               
        };
        
 
        ///
        ///\83\81\83C\83\93\90Ý\92è
        ///
-       struct MainFrameProperty{
+       struct MainFrameProperty:public PropertyBase{
 
-       private:
-               CNLiteString sectionName;
 
        public:
 
                SIZE windowSize;                                                        //\83E\83B\83\93\83h\83E\83T\83C\83Y
                BOOL windowFrontFlag;                                           //\83E\83B\83\93\83h\83E\8dÅ\91O\96Ê\95\\8e¦\83t\83\89\83O
 
+
                ///
                ///\83R\83\93\83X\83g\83\89\83N\83^
                ///
-               MainFrameProperty():
-               windowFrontFlag(TRUE),
-               sectionName(TEXT("MAINFRAME"))
-               {
-
-                       ZeroMemory(&windowSize,sizeof(windowSize));
+               MainFrameProperty();
 
-               }
 
-               LPCTSTR GetSectionName(){
-
-                       return sectionName;
-               }
+               LPCTSTR GetSectionName();
+               
+               
 
        };
 
@@ -289,54 +166,26 @@ skip:
                CNLiteString appLocalPath;
                CNLiteString propertyPath;
 
+               Property();
 
-               Property()
-               {
-                       TCHAR localAppPath[_MAX_PATH];
-                       SHGetFolderPathW(0,CSIDL_LOCAL_APPDATA,0,SHGFP_TYPE_CURRENT,localAppPath);
-
-                       this->appLocalPath = localAppPath;
-               }
+               ~Property();
 
-               ~Property()
-               {
-                       
                
-               }
 
        private:
                VOID CreatePropertyFile();
 
        public:
-
-               VOID Initialize(){
-                       this->~Property();
-                       new(this) Property;
-
-               }
-
-
-
-
+               VOID Initialize();
 
                VOID ReadIniFile();
 
 
                VOID WriteIniFile();
 
-               BROWSERTYPE CookieSetting(){
-
-                       CCookieSettingWindow cookieSettingwindow;
-
-                       cookieSettingwindow.SetBrowserType(gp.browserType);
+               BROWSERTYPE CookieSetting();
 
-                       cookieSettingwindow.DoModal();
-
-                       this->gp.browserType = cookieSettingwindow.GetBrowserType();
-
-                       return this->gp.browserType;
-
-               }
+               
 
        };
 
diff --git a/nlite/nlite_string.cpp b/nlite/nlite_string.cpp
new file mode 100644 (file)
index 0000000..b1bfcdf
--- /dev/null
@@ -0,0 +1,17 @@
+#include "stdafx.h"
+#include "nlite_include.h"
+
+namespace nlite{
+
+///
+///\83R\83\93\83X\83g\83\89\83N\83^
+///
+CNLITESTRING_THISTYPE::CNLITESTRING_THISTYPE():CNLITESTRING_INTERNALSTRINGTYPE(){}
+
+CNLITESTRING_THISTYPE::CNLITESTRING_THISTYPE(LPCTSTR in_str):CNLITESTRING_INTERNALSTRINGTYPE(in_str){}
+
+CNLITESTRING_THISTYPE::CNLITESTRING_THISTYPE(const CNLITESTRING_INTERNALSTRINGTYPE_REFERENCE in_str):CNLITESTRING_INTERNALSTRINGTYPE(in_str){}
+
+CNLITESTRING_THISTYPE::CNLITESTRING_THISTYPE(const CNLITESTRING_THISTYPE_REFERENCE in_str):CNLITESTRING_INTERNALSTRINGTYPE(in_str){}
+
+}
\ No newline at end of file
index 2e101b2..fe14401 100644 (file)
@@ -23,19 +23,16 @@ namespace nlite{
 
        public:
                
-
-       
-               
                ///
                ///\83R\83\93\83X\83g\83\89\83N\83^
                ///
-               CNLITESTRING_THISTYPE():CNLITESTRING_INTERNALSTRINGTYPE(){}
+               CNLITESTRING_THISTYPE();
 
-               CNLITESTRING_THISTYPE(LPCTSTR in_str):CNLITESTRING_INTERNALSTRINGTYPE(in_str){}
-
-               CNLITESTRING_THISTYPE(const CNLITESTRING_INTERNALSTRINGTYPE_REFERENCE in_str):CNLITESTRING_INTERNALSTRINGTYPE(in_str){}
+               CNLITESTRING_THISTYPE(LPCTSTR in_str);
+               
+               CNLITESTRING_THISTYPE(const CNLITESTRING_INTERNALSTRINGTYPE_REFERENCE in_str);
 
-               CNLITESTRING_THISTYPE(const CNLITESTRING_THISTYPE_REFERENCE in_str):CNLITESTRING_INTERNALSTRINGTYPE(in_str){}
+               CNLITESTRING_THISTYPE(const CNLITESTRING_THISTYPE_REFERENCE in_str);
                
 
 
index 274ec43..ede309d 100644 (file)
@@ -8,10 +8,12 @@
 #include "targetver.h"
 
 #define WIN32_LEAN_AND_MEAN                                    // Windows \83w\83b\83_\81[\82©\82ç\8eg\97p\82³\82ê\82Ä\82¢\82È\82¢\95\94\95ª\82ð\8f\9c\8aO\82µ\82Ü\82·\81B
-#define _CRT_SECURE_NO_WARNINGS 1                      //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·\83}\83N\83\8d
-#define  _CRT_NON_CONFORMING_SWPRINTFS 1       //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·\83}\83N\83\8d
-//#define USE_STUB
+#define _CRT_SECURE_NO_WARNINGS 1                      //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·
+#define  _CRT_NON_CONFORMING_SWPRINTFS 1       //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·
+#define USE_STUB                                                       //\83X\83^\83u\82ð\8eg\97p\82·\82é\8fê\8d\87\82Í\83R\83\81\83\93\83g\83A\83E\83g\82ð\89ð\8f\9c\82·\82é
+#define WINDEBUGER_NOPRINTING                          //\83f\83o\83b\83O\8fo\97Í\82ð\83R\83\93\83\\81[\83\8b\82É\95\\8e¦\82µ\82½\82­\82È\82¢\8fê\8d\87\92è\8b`\82·\82é
 #define _WTL_NO_CSTRING
+
 // Windows \83w\83b\83_\81\83t\83@\83C\83\8b:
 #include <windows.h>
 #include <WindowsX.h>
index ec27d4c..1eaa7ad 100644 (file)
@@ -1,4 +1,22 @@
 #pragma once
+#define _CRT_SECURE_NO_WARNINGS 1                      //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·
+#define  _CRT_NON_CONFORMING_SWPRINTFS 1       //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·
+#define TEST_CONNECT_RESULT_CHECK
+
+///
+///\90\95ú\91\97\83X\83e\81[\83^\83X
+///
+typedef struct streamstatus_t{
+
+       TCHAR id[LENGTH_128];
+       TCHAR default_community[LENGTH_128];
+       PROVIDERTYPE provider_type;
+       BOOL  is_owner;
+       time_t start_time;
+       time_t end_time;
+       time_t open_time;
+       time_t base_time;
+}StreamStatus,*StreamStatus_P;
 
 typedef struct nicolivestream_t{
        NicoRecvCallBack callback;
index ba697d5..4900689 100644 (file)
@@ -66,6 +66,8 @@ NLIB_RESULT NicoVideoAuth_getNicoVideoAuth(NicoVideoAuth_P self,BROWSERTYPE brow
        return NLIB_ERR_OK;
 }
 
+#ifndef TEST_CONNECT_RESULT_CHECK
+
 NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCWSTR url,NicoRecvCallBack callback,LPVOID option){
        
        NLIB_RESULT rslt = NLIB_ERR_OK;
@@ -80,6 +82,22 @@ NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVid
 
        return rslt;
 }
+#endif
+
+#ifdef TEST_CONNECT_RESULT_CHECK
+NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVideoAuth,LPCWSTR url,NicoRecvCallBack callback,LPVOID option){
+       
+       static NLIB_RESULT rslt = NLIB_ERR_OK;
+
+       rslt++;
+
+
+
+       return rslt;
+}
+
+
+#endif
 
 VOID NicoLiveStream_disConnect(NicoLiveStream_P self){
 
@@ -220,3 +238,76 @@ end:
 }
 
 
+//
+//\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\8aÖ\98A
+//
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82ÌID\82ð\8eæ\93¾
+///
+NLIB_DECLSPEC LPCTSTR StreamStatus_getId(StreamStatus_P self){
+
+       return self->id;
+}
+
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83R\83~\83\85\83j\83e\83B\94Ô\8d\86\82ð\8eæ\93¾
+///
+NLIB_DECLSPEC LPCTSTR StreamStatus_getDefaultCommunity(StreamStatus_P self){
+
+       return self->default_community;
+}
+
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83v\83\8d\83o\83C\83_\83^\83C\83v\82ð\8eæ\93¾
+///
+PROVIDERTYPE StreamStatus_getProviderType(StreamStatus_P self){
+
+       return self->provider_type;
+}
+
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83I\81[\83i\81[\83t\83\89\83O\82ð\8eæ\93¾
+///
+BOOL StreamStatus_isOwner(StreamStatus_P self){
+
+       return self->is_owner;
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8aJ\8en\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getStartTime(StreamStatus_P self){
+
+       return self->start_time;
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8fI\97¹\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getEndTime(StreamStatus_P self){
+
+       return self->end_time;
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\8aJ\8fê\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getOpenTime(StreamStatus_P self){
+
+       return self->open_time;
+
+}
+
+///
+///\83X\83g\83\8a\81[\83\80\83X\83e\81[\83^\83X\82Ì\83x\81[\83X\8e\9e\8d\8f\82ð\8eæ\93¾
+///
+time_t StreamStatus_getBaseTime(StreamStatus_P self){
+
+       return self->base_time;
+}
+
+
index 05b1e7d..1928d89 100644 (file)
@@ -92,6 +92,7 @@
     <None Include="ReadMe.txt" />
   </ItemGroup>
   <ItemGroup>
+    <ClCompile Include="..\nlib\nlib_errorMessage.c" />
     <ClCompile Include="nlite_stub.cpp" />
   </ItemGroup>
   <ItemGroup>
index f6092e9..8c1e56e 100644 (file)
@@ -21,6 +21,9 @@
     <ClCompile Include="nlite_stub.cpp">
       <Filter>ソース ファイル</Filter>
     </ClCompile>
+    <ClCompile Include="..\nlib\nlib_errorMessage.c">
+      <Filter>ソース ファイル</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\nlib\nlib.h">