From 79823b130efc88e3d3053b7f9bbd909583c6fdfa Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 14 Feb 2012 13:00:22 +0900 Subject: [PATCH] =?utf8?q?=E3=82=A8=E3=83=A9=E3=83=BC=E5=87=A6=E7=90=86?= =?utf8?q?=E9=80=94=E4=B8=AD=E3=81=BE=E3=81=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- nlite.suo | Bin 165376 -> 173568 bytes nlite/nlite.cpp | 75 +++++++----- nlite/nlite_appinfo.h | 1 - nlite/nlite_commentview.h | 137 +++++++++++----------- nlite/nlite_common.cpp | 272 +++++++++++++++++++++++-------------------- nlite/nlite_common.h | 28 ++--- nlite/nlite_mainframe.cpp | 4 +- nlite/nlite_mainframe.h | 39 +++---- nlite/nlite_property.cpp | 3 +- nlite/nlite_property.h | 9 +- nlite/nlite_propertyWindow.h | 18 +-- nlite/nlite_string.h | 1 - 12 files changed, 310 insertions(+), 277 deletions(-) diff --git a/nlite.suo b/nlite.suo index 5a58a8601dc3fb28a8198aa2e5ddb20708fc8197..64a23e5198fa31d57026c195cbc46983368362e2 100644 GIT binary patch delta 6937 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 S?X*i2`B8*bOvHAr@&5oIy3Tq4 diff --git a/nlite/nlite.cpp b/nlite/nlite.cpp index 8872a48..26a7b35 100644 --- a/nlite/nlite.cpp +++ b/nlite/nlite.cpp @@ -31,23 +31,22 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE, // HRESULT hRes = ::CoInitialize(NULL); ATLASSERT(SUCCEEDED(hRes)); - //InitCommonControls(); - AtlInitCommonControls(ICC_COOL_CLASSES | ICC_WIN95_CLASSES); - GUID guid; + AtlInitCommonControls(ICC_COOL_CLASSES | ICC_WIN95_CLASSES); + GUID guid; if(_Module.Init(NULL, hInstance,&guid) != S_OK){ throw AppInitException(__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); } AtlAxWinInit(); - + if(InitializeNlite() != TRUE){ throw AppInitException(__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); } - - - - + + + + //ƒƒbƒZ[ƒWƒ‹[ƒv“o˜^ CMessageLoop theLoop; _Module.AddMessageLoop(&theLoop); @@ -60,11 +59,11 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE, //ƒƒCƒ“ƒEƒBƒ“ƒhƒE•\Ž¦ wnd.ShowWindow(nCmdShow); wnd.UpdateWindow(); - + //—]•ª‚ÉŠm•Û‚µ‚Ä‚¢‚éƒq[ƒv‚ðŠJ•ú _heapmin(); - + //ƒƒbƒZ[ƒWƒ‹[ƒvŠJŽn nRet = theLoop.Run(); @@ -72,22 +71,22 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE, vcassert(_heapchk() == _HEAPOK,TEXT("ƒq[ƒvƒGƒ‰[‚Å‚·")); goto nliteend; - + } catch(nlite::Exception &e){ - + UnexpectedErrorMessageShow(TEXT("ƒnƒ“ƒhƒ‹‚³‚ê‚Ä‚¢‚È‚¢ƒGƒ‰["),e.what(),e.getLineNo(),e.getFileName(),e.getFunctionName()); - + goto nlitefinally; } catch(nlib::Exception &e){ - + UnexpectedErrorMessageShow(TEXT("nlib‚Ńnƒ“ƒhƒ‹‚³‚ê‚Ä‚¢‚È‚¢ƒGƒ‰["),e.what(),e.getLineNo(),e.getFileName(),e.getFunctionName()); - + goto nlitefinally; }catch(std::exception &e){ UnexpectedErrorMessageShow(TEXT("ƒnƒ“ƒhƒ‹‚³‚ê‚Ä‚¢‚È‚¢ƒGƒ‰["),CComBSTR(e.what()),-1,TEXT("”­¶ƒtƒ@ƒCƒ‹‚ª“Á’èo—ˆ‚Ü‚¹‚ñ"),TEXT("”­¶ŠÖ”‚ª“Á’è‚Å‚«‚Ü‚¹‚ñ")); - + goto nlitefinally; } @@ -112,7 +111,7 @@ static BOOL InitializeNlite(){ BOOL rslt = FALSE; try{ - + nlite::appInfo = &CApplicationInfo::getInstance(); INT_PTR err; INT_PTR count = 0; @@ -127,12 +126,13 @@ static BOOL InitializeNlite(){ } - + if(err != ERROR_SUCCESS){ throw AppInitException(__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); } + //ƒAƒvƒŠƒP[ƒVƒ‡ƒ“î•ñƒCƒ“ƒXƒ^ƒ“ƒX¶¬ const CApplicationInfo &appInfo = CApplicationInfo::getInstance(); CNLiteString userAgent; userAgent = appInfo.getProcuctName(); @@ -140,6 +140,8 @@ static BOOL InitializeNlite(){ userAgent += appInfo.getProductVersion(); + + //HTTPƒIƒuƒWƒFƒNƒg¶¬ hInternet = WinHttpOpen(userAgent,WINHTTP_ACCESS_TYPE_DEFAULT_PROXY,(LPCWSTR)WINHTTP_NO_PROXY_NAME,(LPCWSTR)WINHTTP_NO_PROXY_BYPASS,0); if(hInternet == NULL){ @@ -148,8 +150,10 @@ static BOOL InitializeNlite(){ } + //nlib‚̏‰Šú‰» InitializeNLIB(hInternet); + //ƒ[ƒJƒ‹ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ƒtƒHƒ‹ƒ_ŒŸõ if(SHGetFolderPathW(0,CSIDL_LOCAL_APPDATA,0,SHGFP_TYPE_CURRENT,localAppDataPath) != S_OK){ throw AppInitException(__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); @@ -159,32 +163,39 @@ static BOOL InitializeNlite(){ SystemParametersInfo (SPI_SETLISTBOXSMOOTHSCROLLING,FALSE,FALSE,0); - - SHGetFolderPathW(0,CSIDL_APPDATA,0,SHGFP_TYPE_CURRENT,appFolderPath); + + if(SHGetFolderPathW(0,CSIDL_APPDATA,0,SHGFP_TYPE_CURRENT,appFolderPath) != S_OK){ + + throw AppInitException(__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); + } ncvAppSettingPath = appFolderPath; ncvAppSettingPath += TEXT("\\posite-c\\NiconamaCommentViewer\\AppSetting.xml"); + rslt = TRUE; }catch (AppInitException e){ - return rslt; + rslt = FALSE; } + + return rslt; +} - rslt = TRUE; - +VOID FinalizeNlite(){ - return rslt; -} + //ƒƒCƒ“ƒtƒŒ[ƒ€ƒEƒBƒ“ƒhƒEŒãˆ— + wnd.Finalaize(); + //nlibŒãˆ— + FinalizeNLIB(); - VOID FinalizeNlite(){ + //HTTPƒIƒuƒWƒFƒNƒgŠJ•ú + WinHttpCloseHandle(hInternet); - wnd.Finalaize(); - FinalizeNLIB(); - WinHttpCloseHandle(hInternet); - WSACleanup(); + //winsockŠJ•ú + WSACleanup(); - return; - } + return; +} diff --git a/nlite/nlite_appinfo.h b/nlite/nlite_appinfo.h index 8744989..34d76d8 100644 --- a/nlite/nlite_appinfo.h +++ b/nlite/nlite_appinfo.h @@ -43,7 +43,6 @@ namespace nlite{ // //ƒQƒbƒ^[ // - LPCTSTR getProductVersion()const; LPCTSTR getOriginalFileName()const; diff --git a/nlite/nlite_commentview.h b/nlite/nlite_commentview.h index 6283a58..1b2887b 100644 --- a/nlite/nlite_commentview.h +++ b/nlite/nlite_commentview.h @@ -35,18 +35,28 @@ namespace nlite{ CCommentView &m_master; - + BEGIN_MSG_MAP(CChatReadEdit) END_MSG_MAP() CChatReadEdit(CCommentView &m_master); BOOL SetWindowText(const CChatData &str); + /// + ///“à—e‚ðƒŠƒZƒbƒg + // VOID Reset(); + + /// + ///ƒŠƒ“ƒN•\Ž¦•¶Žš—ñ‚ðŒˆ’è + /// VOID linkStringBeside(const tstring &target,const nliteregex::tregex &re); - + + /// + ///‚±‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚É‚¨‚¯‚é”Ä—p“I‚ȃEƒBƒ“ƒhƒEì¬ŠÖ” + /// HWND GeneralCreate(HWND hParent,DWORD eventMask,UINT id); }; @@ -55,10 +65,8 @@ namespace nlite{ friend CChatChildCtrlsList; private: CChatReadEdit chatDispCtrl; -// CHyperLink noDispCtrl; -// CHyperLink userNameDispCtrl; CCommentView &m_master; - + private: @@ -68,12 +76,12 @@ namespace nlite{ CHAT_DISPCTRL_ID = 30000000 }; - + /// ///ƒRƒ“ƒXƒgƒ‰ƒNƒ^ /// CChatChildCtrls(CCommentView &hMaster); - + /// ///Žw’肵‚½‚‚³‚ɃRƒ“ƒgƒ[ƒ‹‚ðƒZƒbƒg /// @@ -94,30 +102,31 @@ namespace nlite{ }; - + /// + ///ƒRƒƒ“ƒg•\Ž¦ƒEƒBƒ“ƒhƒE‚ÌŽqƒEƒBƒ“ƒhƒEƒŠƒXƒg + /// class CChatChildCtrlsList{ friend CCommentView; friend CCommentListWindow; friend CChatChildCtrls; - + private: typedef std::list InternalList; - InternalList m_list; - CCommentView &m_hMaster; - RECT rcBuf; + InternalList m_list; //“à•”‚ÅŠÇ—‚·‚郊ƒXƒg + CCommentView &m_hMaster; //‚±‚̃EƒBƒ“ƒhƒE‚ðŠ—L‚µ‚Ä‚¢‚éeƒEƒBƒ“ƒhƒE private: typedef InternalList::reference reference; typedef InternalList::iterator iterator; - + /// ///ƒRƒ“ƒXƒgƒ‰ƒNƒ^ /// CChatChildCtrlsList(CCommentView &hMaster); - + /// ///ƒRƒ“ƒgƒ[ƒ‹‚ð•\Ž¦ @@ -139,28 +148,27 @@ namespace nlite{ }; - + //ƒRƒƒ“ƒg•\Ž¦—pƒEƒBƒ“ƒhƒE class CCommentListWindow:public CWindowImpl{ friend CCommentView; friend CChatChildCtrls; friend CChatChildCtrlsList; - - + + //ƒƒ“ƒo private: CCommentView &self; UINT_PTR viewSellHeight; CPen collLinePen; //€–ڏcü•`‰æ—pƒyƒ“ - CPen normalSellLinePen; //˜gü•`‰æ—pƒyƒ“ - CBrush normalBkBrush; //”wŒi•`‰æ—pƒuƒ‰ƒV - CPen selectSellLinePen; //˜gü•`‰æ—pƒyƒ“ - CBrush selectBkBrush; //”wŒi•`‰æ—pƒuƒ‰ƒV - CFont linkFont; -// CAddToMyListWindow addToMyListWindow; //ƒ}ƒCƒŠƒXƒg“o˜^—pƒEƒBƒ“ƒhƒE - - //ƒŠƒ“ƒN•¶Žš—ñ—p‚̃tƒHƒ“ƒg + CPen normalSellLinePen; //˜gü•`‰æ—pƒyƒ“ + CBrush normalBkBrush; //”wŒi•`‰æ—pƒuƒ‰ƒV + CPen selectSellLinePen; //˜gü•`‰æ—pƒyƒ“ + CBrush selectBkBrush; //”wŒi•`‰æ—pƒuƒ‰ƒV + CFont linkFont; //ƒŠƒ“ƒN•¶Žš—ñ‚̃tƒHƒ“ƒg + + enum { CALCEDIT_ID = 100 @@ -168,7 +176,7 @@ namespace nlite{ public: - + DECLARE_WND_CLASS(commentViewConstant::NLITE_COMMENTLISTWINDOW) @@ -181,8 +189,6 @@ namespace nlite{ MSG_WM_CREATE(OnCreate) MSG_WM_ERASEBKGND(OnEraseBkGnd) MSG_WM_MOUSEWHEEL(OnMouseWheel) - -// MSG_WM_DESTROY(OnDestroy) MSG_WM_PAINT(OnPaint) MSG_WM_SIZE(OnSize) MSG_WM_KEYDOWN(OnKeyDown) @@ -207,7 +213,7 @@ namespace nlite{ ~CCommentListWindow(); - + /// ///ƒvƒƒpƒeƒBÝ’莞‚̏ˆ— @@ -229,8 +235,11 @@ namespace nlite{ /// VOID ShowCurSel(); + /// + ///ƒ`ƒƒƒbƒg•¶Žš—ñ•\Ž¦—̈æŒvŽZ + /// VOID CalcChatRect(const CDC &cdc,RECT &rc,const CNLiteString &str); - + //ƒvƒ‰ƒCƒx[ƒgŠÖ” private: @@ -244,9 +253,9 @@ namespace nlite{ ///•`‰æ‚‚³‚ðƒŠƒZƒbƒg /// VOID ResetViewSellHeight(); - - + + /// ///ƒNƒŠƒbƒN‚µ‚½s‚ðŒvŽZ @@ -260,7 +269,7 @@ namespace nlite{ //ƒƒbƒZ[ƒWƒnƒ“ƒhƒ‰ private: - + /// ///ƒEƒBƒ“ƒhƒEì¬Žž‚̏ˆ— /// @@ -321,12 +330,14 @@ namespace nlite{ /// LRESULT OnChatControlNortify(LPNMHDR lParam); - + /// + ///ƒZƒ‹‚̃TƒCƒY‚ðŒvŽZ + /// LRESULT OnCalcSellSize(LPNMHDR lParam); - + }; - + /// ///ƒRƒƒ“ƒgƒrƒ…[ƒNƒ‰ƒX /// @@ -348,31 +359,31 @@ namespace nlite{ }HEADERSINFO,*LPHEADERSINFO; - - - + + + //ƒƒ“ƒoéŒ¾ private: CHeaderCtrl m_header; //ƒwƒbƒ_[ƒRƒ“ƒgƒ[ƒ‹ CCommentListWindow m_commentListWindow; //ƒRƒƒ“ƒgƒŠƒXƒgƒEƒBƒ“ƒhƒE - CNicoLiveStream &stream; //•ú‘—ƒIƒuƒWƒFƒNƒg + CNicoLiveStream &stream; //•ú‘—ƒIƒuƒWƒFƒNƒg GeneralProperty generalProperty; //ˆê”ʐݒè CCommentList commentlist; //ƒRƒƒ“ƒgƒŠƒXƒg CommentViewProperty viewproperty; //•\Ž¦ƒvƒƒpƒeƒB HFONT hHeaderFontNew; //ƒwƒbƒ_[ƒtƒHƒ“ƒg CNicoVideoAuth &refAuth; //ƒjƒRƒjƒR¶•ú‘—”FØƒIƒuƒWƒFƒNƒgŽQÆ - CChatChildCtrlsList chatChildCtrlsList; + CChatChildCtrlsList chatChildCtrlsList; //ŽqƒEƒBƒ“ƒhƒEƒŠƒXƒg + + + + - - - - public: enum{ @@ -383,12 +394,12 @@ namespace nlite{ INFO }; - + /// ///ƒRƒ“ƒXƒgƒ‰ƒNƒ^ /// CCommentView(CNicoLiveStream &stream,CNicoVideoAuth &refAuth); - + /// ///ƒfƒXƒgƒ‰ƒNƒ^ /// @@ -398,13 +409,13 @@ namespace nlite{ ///ƒEƒBƒ“ƒhƒEXV /// VOID UpDateUI(); - + // //ƒEƒBƒ“ƒhƒEƒNƒ‰ƒXéŒ¾ // DECLARE_WND_CLASS_EX(commentViewConstant::NLITE_COMMENTVIEW,0,COLOR_BACKGROUND) - + // //ƒƒbƒZ[ƒWƒ}ƒbƒv // @@ -430,7 +441,7 @@ namespace nlite{ ///ƒvƒƒpƒeƒBŽæ“¾ /// CommentViewProperty &GetProperty(); - + /// ///ƒEƒBƒ“ƒhƒEì¬ /// @@ -455,7 +466,7 @@ namespace nlite{ ///ƒ`ƒƒƒbƒgƒRƒƒ“ƒgŽóMŠm’菈— /// VOID OnChatReceveSettle(UINT_PTR commentCount,UINT_PTR commentCountSum); - + //ƒvƒ‰ƒCƒx[ƒgŠÖ” @@ -466,7 +477,7 @@ namespace nlite{ ///ƒwƒbƒ_’ljÁ /// VOID AddHeader(LPHEADERSINFO infos); - + /// ///ƒwƒbƒ_‚̉¡•Œˆ’è /// @@ -481,20 +492,20 @@ namespace nlite{ //ƒEƒBƒ“ƒhƒEƒƒbƒZ[ƒWƒnƒ“ƒhƒ‰ private: - + /// ///ƒTƒCƒY•ÏXŒãˆ— /// LRESULT OnSize(UINT wParam,SIZE lParam); - - + + /// ///ƒrƒ…[ƒA‚É•\Ž¦‚³‚ê‚Ä‚¢‚éƒRƒ”Ô‚ªƒNƒŠƒbƒN‚³‚ꂽŽž‚̏ˆ— /// LRESULT OnClickChatNo(UINT uMsg,WPARAM wParam,LPARAM lParam); - + /// ///ƒrƒ…[ƒA‚É•\Ž¦‚³‚ê‚Ä‚¢‚郆[ƒU–¼‚ªƒNƒŠƒbƒN‚³‚ꂽŽž‚̏ˆ— @@ -506,12 +517,12 @@ namespace nlite{ ///”wŒi“h‚è‚‚Ԃµˆ— /// LRESULT OnEraseBkgnd(HDC wParam); - + /// ///ƒEƒBƒ“ƒhƒE”jŠüŽž‚̏ˆ— /// VOID OnDestroy(); - + /// ///ƒwƒbƒ_ƒAƒCƒeƒ€•ÏXŽžˆ— /// @@ -529,7 +540,7 @@ namespace nlite{ ///‰¡ƒXƒNƒ[ƒ‹Žž‚̏ˆ— /// VOID OnHScroll(INT_PTR loWParam,SHORT hiWParam,HWND lParam); - + /// ///cƒXƒNƒ[ƒ‹Žž‚̏ˆ— /// @@ -539,13 +550,7 @@ namespace nlite{ ///ì¬Žž‚̏ˆ— /// LRESULT OnCreate(LPCREATESTRUCT lpcs); - - - - - - }; - + } diff --git a/nlite/nlite_common.cpp b/nlite/nlite_common.cpp index b07c246..5723310 100644 --- a/nlite/nlite_common.cpp +++ b/nlite/nlite_common.cpp @@ -5,215 +5,233 @@ namespace nlite{ -namespace nliteregex{ - namespace text{ - const CString URL_TEXT = TEXT("(https?|ftp)(://[-_.!~*\'()a-zA-Z0-9;/?:@&=+$,%#]+)"); - const CString TAG_TEXT = TEXT("<[\"_;!?,\\:.'$%&#/a-zA-Z0-9= ]*>"); - const CString VIDEOID_TEXT = TEXT("(sm|nm)([0-9])+"); - const CString LIVEID_TEXT = TEXT("(lv)([0-9])+"); - const CString LINK_TEXT = TEXT("(") + URL_TEXT + TEXT(")|(") + VIDEOID_TEXT + TEXT(")|(") + LIVEID_TEXT + TEXT(")"); - const CString SEARTCH_AT_MARK(TEXT("(.*)(@|—)(^ |^@[^@^—]+)")); - const tstring NUTHINGSTRING(TEXT("")); + namespace nliteregex{ + namespace text{ + const CString URL_TEXT = TEXT("(https?|ftp)(://[-_.!~*\'()a-zA-Z0-9;/?:@&=+$,%#]+)"); + const CString TAG_TEXT = TEXT("<[\"_;!?,\\:.'$%&#/a-zA-Z0-9= ]*>"); + const CString VIDEOID_TEXT = TEXT("(sm|nm)([0-9])+"); + const CString LIVEID_TEXT = TEXT("(lv)([0-9])+"); + const CString LINK_TEXT = TEXT("(") + URL_TEXT + TEXT(")|(") + VIDEOID_TEXT + TEXT(")|(") + LIVEID_TEXT + TEXT(")"); + const CString SEARTCH_AT_MARK(TEXT("(.*)(@|—)(^ |^@[^@^—]+)")); + const tstring NUTHINGSTRING(TEXT("")); + } + const tregex URL(text::URL_TEXT); + const tregex TAGSTRING(text::TAG_TEXT); + const tregex VIDEOID(text::VIDEOID_TEXT); + const tregex LIVEID(text::LIVEID_TEXT); + const tregex LILNKREGEX(text::LINK_TEXT); + const tregex NAMESERTCHREGEX(text::SEARTCH_AT_MARK); } - const tregex URL(text::URL_TEXT); - const tregex TAGSTRING(text::TAG_TEXT); - const tregex VIDEOID(text::VIDEOID_TEXT); - const tregex LIVEID(text::LIVEID_TEXT); - const tregex LILNKREGEX(text::LINK_TEXT); - const tregex NAMESERTCHREGEX(text::SEARTCH_AT_MARK); -} -Property nliteProperty; -CListenerList nlite::listenerList; -TCHAR appFolderPath[_MAX_PATH]; -CString ncvAppSettingPath; -TCHAR localAppDataPath[_MAX_PATH]; + Property nliteProperty; + CListenerList nlite::listenerList; + TCHAR appFolderPath[_MAX_PATH]; + CString ncvAppSettingPath; + TCHAR localAppDataPath[_MAX_PATH]; - VOID nlite::UnexpectedErrorMessageShow(LPCTSTR headMessage,LPCTSTR summary,UINT line,LPCTSTR fileName,LPCTSTR function){ - tstring errMessage; - errMessage = headMessage; - errMessage += TEXT("‘z’肳‚ê‚Ä‚¢‚È‚¢ƒGƒ‰[‚ª”­¶‚µ‚Ü‚µ‚½BƒAƒvƒŠƒP[ƒVƒ‡ƒ“”z’uƒtƒHƒ‹ƒ_‚ɍ쐬‚³‚ꂽƒƒOƒtƒ@ƒCƒ‹‚ð“n‚µ‚Ä‚à‚炦‚é‚ÆŠJ”­ŽÒ‚ª”ñí‚ÉŠì‚Ñ‚Ü‚·"); - errMessage += TEXT("\r\nƒGƒ‰[ƒƒbƒZ[ƒW:"); - errMessage += summary; - DebugOutW(fileName,function,line,DUMPING__DEBUGER__ | LINEFEAD__DEBUGER__ ,ERRORMODE__DEBUGER__,TEXT("%s"),summary); - ::MessageBox(NULL,errMessage.c_str(),TEXT("‘z’肳‚ê‚Ä‚¢‚È‚¢ƒGƒ‰["),MB_ICONERROR | MB_OK); - + VOID nlite::UnexpectedErrorMessageShow(LPCTSTR headMessage,LPCTSTR summary,UINT line,LPCTSTR fileName,LPCTSTR function){ + + CString errLogFilePath(nliteProperty.propertySaveFolderPath); + CAtlFile errFile; + TCHAR errfile[_MAX_PATH]; + + time_t nowtime = time(NULL); + tm timestruct = *gmtime(&nowtime); + _tcsftime(errfile,ARRAY_LENGTH(errfile),TEXT("errorlog\\nlite_errorLog_%Y%m%d%H%M%S.log"),×truct); + errLogFilePath += errfile; + SurelyCreate(errLogFilePath,TRUE); + + errFile.Create(errLogFilePath,GENERIC_WRITE,0,OPEN_ALWAYS); + tstring errMessage; + errMessage = headMessage; + errMessage += TEXT("‘z’肳‚ê‚Ä‚¢‚È‚¢ƒGƒ‰[‚ª”­¶‚µ‚Ü‚µ‚½BˆÈ‰º‚̃tƒ@ƒCƒ‹‚ɃGƒ‰[ƒtƒ@ƒCƒ‹‚ªo—Í‚³‚ꂽ‚Ü‚µ‚½B\r\n"); + errMessage += errLogFilePath; + errMessage += TEXT("\r\nƒGƒ‰[ƒƒbƒZ[ƒW:"); + errMessage += summary; + DebugOutW(fileName,function,line,DUMPING__DEBUGER__ | LINEFEAD__DEBUGER__ ,ERRORMODE__DEBUGER__,TEXT("%s"),summary); + ::MessageBox(NULL,errMessage.c_str(),TEXT("‘z’肳‚ê‚Ä‚¢‚È‚¢ƒGƒ‰["),MB_ICONERROR | MB_OK); + /* + CComVariant val; + val = TEXT("‘‚«‚±‚݃eƒXƒg"); + val.WriteToStream( + CString outputLogfileString; + errFile.Write(TEXT("‘‚«‚±‚݃eƒXƒg\r\n"),_tcslen(TEXT("‘‚«‚±‚݃eƒXƒg\r\n")) * sizeof(TCHAR)); + errFile.Write(TEXT("‘‚«‚±‚݃eƒXƒg\r\n"),_tcslen(TEXT("‘‚«‚±‚݃eƒXƒg\r\n")) * sizeof(TCHAR)); + */ + return; + } + HINSTANCE OpenURL(HWND hwnd,const GeneralProperty &gp,LPCTSTR url ,INT nShowCommand){ - return; - } + HINSTANCE rslt; - HINSTANCE OpenURL(HWND hwnd,const GeneralProperty &gp,LPCTSTR url ,INT nShowCommand){ + if(gp.browserPath.Length() == 0){ - HINSTANCE rslt; + rslt = ShellExecute(hwnd, NULL, url, NULL, NULL, nShowCommand); - if(gp.browserPath.Length() == 0){ + } else{ - rslt = ShellExecute(hwnd, NULL, url, NULL, NULL, nShowCommand); + rslt = ShellExecute(hwnd, NULL, gp.browserPath, url, NULL, nShowCommand); - } else{ + } - rslt = ShellExecute(hwnd, NULL, gp.browserPath, url, NULL, nShowCommand); + return rslt; } - return rslt; + BOOL SurelyCreate(LPCTSTR dir,BOOL bFile){ - } - BOOL SurelyCreate(LPCTSTR dir,BOOL bFile){ - + BOOL rslt = FALSE; + std::vector buf(_tcslen(dir) + 1); + _tcscpy(&buf[0],dir); - BOOL rslt = FALSE; - std::vector buf(_tcslen(dir) + 1); - _tcscpy(&buf[0],dir); + if( (PathFileExists(dir) && (!bFile || !::PathIsDirectory( dir )))){ - if( (PathFileExists(dir) && (!bFile || !::PathIsDirectory( dir )))){ + goto success; + } - goto success; - } + LPTSTR startPtr = &buf[0]; + LPTSTR indexPtr = startPtr; + LPTSTR cmpPtr; + do { - LPTSTR startPtr = &buf[0]; - LPTSTR indexPtr = startPtr; - LPTSTR cmpPtr; - do { + cmpPtr = _tcsstr(indexPtr,TEXT("\\")); - cmpPtr = _tcsstr(indexPtr,TEXT("\\")); + if(cmpPtr == NULL){ - if(cmpPtr == NULL){ - - if(bFile == TRUE){ - CAtlFile file; - if( file.Create(startPtr,0,0,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL) != S_OK){ + if(bFile == TRUE){ + CAtlFile file; + if( file.Create(startPtr,0,0,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL) != S_OK){ - goto err; + goto err; + } + } else { + + ::CreateDirectory(startPtr,0); } - } else { - ::CreateDirectory(startPtr,0); - } + break; - break; + }else if(indexPtr == cmpPtr){ + break; - }else if(indexPtr == cmpPtr){ - break; + } - } + cmpPtr[0] = TEXT('\0'); + ::CreateDirectory(startPtr,0); + cmpPtr[0] = TEXT('\\'); + cmpPtr++; + indexPtr = cmpPtr; - cmpPtr[0] = TEXT('\0'); - ::CreateDirectory(startPtr,0); - cmpPtr[0] = TEXT('\\'); - cmpPtr++; - indexPtr = cmpPtr; - - }while(indexPtr[0] != TEXT('\0')); + }while(indexPtr[0] != TEXT('\0')); success: - rslt = TRUE; + rslt = TRUE; end: - return rslt; + return rslt; err: - rslt = FALSE; - goto end; - } + rslt = FALSE; + goto end; + } -/// -///NCVƒ†[ƒUî•ñƒtƒ@ƒCƒ‹ƒpƒXŽæ“¾XMLƒp[ƒT -/// -class CReadNCVListenerInfoFile:public CXmlParser{ + /// + ///NCVƒ†[ƒUî•ñƒtƒ@ƒCƒ‹ƒpƒXŽæ“¾XMLƒp[ƒT + /// + class CReadNCVListenerInfoFile:public CXmlParser{ + + private: + + BOOL settingDirFlag; + CString &path; -private: - - BOOL settingDirFlag; - CString &path; - - -public: - CReadNCVListenerInfoFile(CString &in_path):settingDirFlag(FALSE),path(in_path){} + public: - void OnStartElement (const XML_Char *pszName, const XML_Char **papszAttrs){ + CReadNCVListenerInfoFile(CString &in_path):settingDirFlag(FALSE),path(in_path){} - if(_tcscmp(pszName,TEXT("SettingDir")) == 0){ + void OnStartElement (const XML_Char *pszName, const XML_Char **papszAttrs){ - settingDirFlag = TRUE; + if(_tcscmp(pszName,TEXT("SettingDir")) == 0){ + + settingDirFlag = TRUE; + + } } - } + void OnEndElement (const XML_Char *pszName){ - void OnEndElement (const XML_Char *pszName){ + if(_tcscmp(pszName,TEXT("SettingDir")) == 0){ - if(_tcscmp(pszName,TEXT("SettingDir")) == 0){ + settingDirFlag = FALSE; - settingDirFlag = FALSE; + } } - } + void OnCharacterData (const XML_Char *pszData, int nLength){ - void OnCharacterData (const XML_Char *pszData, int nLength){ + if(settingDirFlag == TRUE){ - if(settingDirFlag == TRUE){ + path.Append(pszData,nLength); - path.Append(pszData,nLength); + } } + }; - } -}; + CString GetNCVListenerInfoFilePath(){ - CString GetNCVListenerInfoFilePath(){ - - CString rslt; - + CString rslt; - if((PathFileExists(ncvAppSettingPath) && (!::PathIsDirectory( ncvAppSettingPath )))){ - - CAtlFile ncvAppSettingFile; - ULONGLONG ncvAppSettingFileSize = 0; - if(SUCCEEDED(ncvAppSettingFile.Create(ncvAppSettingPath,GENERIC_READ,FILE_SHARE_READ,OPEN_ALWAYS)) == FALSE || - SUCCEEDED(ncvAppSettingFile.GetSize(ncvAppSettingFileSize)) == FALSE){ + if((PathFileExists(ncvAppSettingPath) && (!::PathIsDirectory( ncvAppSettingPath )))){ - throw Exception(TEXT("NCV‚̐ݒèƒtƒ@ƒCƒ‹‚ª“ǂݍž‚ß‚Ü‚¹‚ñ‚Å‚µ‚½"),__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); - } - std::vector fileBuf(static_cast(ncvAppSettingFileSize) / sizeof(char) + (1 * sizeof(char))); - ncvAppSettingFile.Read(&fileBuf[0],fileBuf.size()); - LPSTR startPtr = strstr(&fileBuf[0],"<"); - if(startPtr != NULL){ - CReadNCVListenerInfoFile parser(rslt); - parser.Parse(startPtr); - rslt += TEXT("UserSetting.xml"); + CAtlFile ncvAppSettingFile; + ULONGLONG ncvAppSettingFileSize = 0; + if(SUCCEEDED(ncvAppSettingFile.Create(ncvAppSettingPath,GENERIC_READ,FILE_SHARE_READ,OPEN_ALWAYS)) == FALSE || + SUCCEEDED(ncvAppSettingFile.GetSize(ncvAppSettingFileSize)) == FALSE){ - } + throw Exception(TEXT("NCV‚̐ݒèƒtƒ@ƒCƒ‹‚ª“ǂݍž‚ß‚Ü‚¹‚ñ‚Å‚µ‚½"),__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); - } + } + std::vector fileBuf(static_cast(ncvAppSettingFileSize) / sizeof(char) + (1 * sizeof(char))); + ncvAppSettingFile.Read(&fileBuf[0],fileBuf.size()); + LPSTR startPtr = strstr(&fileBuf[0],"<"); + if(startPtr != NULL){ + CReadNCVListenerInfoFile parser(rslt); + parser.Parse(startPtr); + rslt += TEXT("UserSetting.xml"); + + } + + } - return rslt; - } + return rslt; + } -const CApplicationInfo * appInfo = NULL; + const CApplicationInfo * appInfo = NULL; } diff --git a/nlite/nlite_common.h b/nlite/nlite_common.h index 6f0e202..0e05fb1 100644 --- a/nlite/nlite_common.h +++ b/nlite/nlite_common.h @@ -28,24 +28,24 @@ namespace nlite{ - + //³‹K•\Œ»–¼‘O‹óŠÔ namespace nliteregex{ typedef std::tr1::basic_regex tregex; namespace text{ - extern const CString URL_TEXT; - extern const CString TAG_TEXT; - extern const CString VIDEOID_TEXT; - extern const CString LIVEID_TEXT; - extern const CString LINK_TEXT; - extern const CString SEARTCH_AT_MARK; - extern const tstring NUTHINGSTRING; + extern const CString URL_TEXT; //URL³‹K•\Œ»•¶Žš—ñ + extern const CString TAG_TEXT; //ƒ^ƒO³‹K•\Œ»•¶Žš—ñ + extern const CString VIDEOID_TEXT; //“®‰æ”ԍ†³‹K•\Œ»•¶Žš—ñ + extern const CString LIVEID_TEXT; //¶•ú‘—”ԍ†³‹K•\Œ»•¶Žš—ñ + extern const CString LINK_TEXT; //ƒŠƒ“ƒN•\Ž¦‘Ώۂ̐³‹K•\Œ»•¶Žš—ñ + extern const CString SEARTCH_AT_MARK; //ƒRƒeƒnƒ““o˜^—p‚Ì@‚ðŒŸõ‚·‚鐳‹K•\Œ»•¶Žš—ñ + extern const tstring NUTHINGSTRING; //‹ó‚Ì•¶Žš—ñ } - extern const tregex URL; - extern const tregex TAGSTRING; - extern const tregex VIDEOID; - extern const tregex LIVEID; - extern const tregex LILNKREGEX; - extern const tregex NAMESERTCHREGEX; + extern const tregex URL; //URL³‹K•\Œ» + extern const tregex TAGSTRING; //ƒ^ƒO³‹K•\Œ» + extern const tregex VIDEOID; //“®‰æ”ԍ†³‹K•\Œ» + extern const tregex LIVEID; //¶•ú‘—”ԍ†³‹K•\Œ» + extern const tregex LILNKREGEX; //ƒŠƒ“ƒN•\Ž¦‘ΏیŸõ—p³‹K•\Œ» + extern const tregex NAMESERTCHREGEX; //ƒRƒeƒnƒ““o˜^•¶Žš—ñŒŸõ—p³‹K•\Œ» } } \ No newline at end of file diff --git a/nlite/nlite_mainframe.cpp b/nlite/nlite_mainframe.cpp index f2b749c..7577e4b 100644 --- a/nlite/nlite_mainframe.cpp +++ b/nlite/nlite_mainframe.cpp @@ -217,7 +217,7 @@ VOID CNliteMainFrame::Initialize(LPCTSTR localAppDataPath){ ::MessageBox(NULL,e.what(),TEXT("Ý’èƒtƒ@ƒCƒ‹“ǂݍž‚݃Gƒ‰["),MB_OK | MB_ICONERROR); } - + throw AppInitException(__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); return; } @@ -226,7 +226,7 @@ VOID CNliteMainFrame::OnClose(){ this->ShowWindow(SW_HIDE); nicoLiveStream.DisConnect(); this->DestroyWindow(); - + return; } diff --git a/nlite/nlite_mainframe.h b/nlite/nlite_mainframe.h index e597e50..c2888b3 100644 --- a/nlite/nlite_mainframe.h +++ b/nlite/nlite_mainframe.h @@ -87,8 +87,8 @@ namespace nlite{ struct LvnoSearchFunctional{ - LPCTSTR lvNo; - CNLiteString dispData; + LPCTSTR lvNo; + CNLiteString dispData; LvnoSearchFunctional(LPCTSTR in_lvNo):lvNo(in_lvNo){} @@ -171,24 +171,23 @@ namespace nlite{ DECLARE_FRAME_WND_CLASS(NLITE_MAINWINDOW, IDC_NLITE) private: - CCommentView commentView; //ƒRƒƒ“ƒg•\Ž¦ƒEƒBƒ“ƒhƒE - CStatusBarCtrl statusBar; //ƒXƒe[ƒ^ƒXƒo[ - CLiveUserData userData; //ƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰—pƒNƒ‰ƒX - CSubLiveNoComboBox subLiveNoComboBox; //¶•ú‘—”ԍ†“ü—Í—pƒRƒ“ƒ{ƒ{ƒbƒNƒX(ƒTƒuƒNƒ‰ƒX) - CCommentWriteWindow commentWriteWindow; //ƒRƒƒ“ƒg‘‚«ž‚Ý—pƒNƒ‰ƒX - CTabCtrl tabctrl; //ƒ^ƒuƒRƒ“ƒgƒ[ƒ‹ - HFONT hTabFont; //ƒ^ƒuƒEƒBƒ“ƒhƒE—p‚̃tƒHƒ“ƒg - CComboBoxEx lvNoCombo; //¶•ú‘—”ԍ†“ü—Í—pƒRƒ“ƒ{ƒ{ƒbƒNƒX - INT_PTR statusBarHeight; //ƒXƒe[ƒ^ƒXƒo[‚̍‚‚³ - INT_PTR toolBarHeight; //ƒc[ƒ‹ƒo[‚̍‚‚³ - CNicoVideoAuth nicoVideoAuth; //ƒjƒRƒjƒR“®‰æ”FØ—pƒIƒuƒWƒFƒNƒg - CNicoLiveStream nicoLiveStream; //ƒjƒRƒjƒR¶•ú‘—ƒIƒuƒWƒFƒNƒg - CMultiPaneStatusBarCtrl m_hStatusBar; //ƒ}ƒ‹ƒ`ƒyƒCƒ“ƒXƒe[ƒ^ƒXƒo[ - CProgressBarCtrl m_progresBar; //ƒvƒƒOƒŒƒXƒo[ - CListenerSettingWindow listenerSettingWindow; //ƒŠƒXƒi[Ý’èƒEƒBƒ“ƒhƒE - - CComAutoCriticalSection lvNoBufCS; //¶•ú‘—”ԍ†ƒNƒŠƒeƒBƒJƒ‹ƒZƒNƒVƒ‡ƒ“ - CString lvNoBuffer; //¶•ú‘—”ԍ†ƒoƒbƒtƒ@ + CCommentView commentView; //ƒRƒƒ“ƒg•\Ž¦ƒEƒBƒ“ƒhƒE + CStatusBarCtrl statusBar; //ƒXƒe[ƒ^ƒXƒo[ + CLiveUserData userData; //ƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰—pƒNƒ‰ƒX + CSubLiveNoComboBox subLiveNoComboBox; //¶•ú‘—”ԍ†“ü—Í—pƒRƒ“ƒ{ƒ{ƒbƒNƒX(ƒTƒuƒNƒ‰ƒX) + CCommentWriteWindow commentWriteWindow; //ƒRƒƒ“ƒg‘‚«ž‚Ý—pƒNƒ‰ƒX + CTabCtrl tabctrl; //ƒ^ƒuƒRƒ“ƒgƒ[ƒ‹ + HFONT hTabFont; //ƒ^ƒuƒEƒBƒ“ƒhƒE—p‚̃tƒHƒ“ƒg + CComboBoxEx lvNoCombo; //¶•ú‘—”ԍ†“ü—Í—pƒRƒ“ƒ{ƒ{ƒbƒNƒX + INT_PTR statusBarHeight; //ƒXƒe[ƒ^ƒXƒo[‚̍‚‚³ + INT_PTR toolBarHeight; //ƒc[ƒ‹ƒo[‚̍‚‚³ + CNicoVideoAuth nicoVideoAuth; //ƒjƒRƒjƒR“®‰æ”FØ—pƒIƒuƒWƒFƒNƒg + CNicoLiveStream nicoLiveStream; //ƒjƒRƒjƒR¶•ú‘—ƒIƒuƒWƒFƒNƒg + CMultiPaneStatusBarCtrl m_hStatusBar; //ƒ}ƒ‹ƒ`ƒyƒCƒ“ƒXƒe[ƒ^ƒXƒo[ + CProgressBarCtrl m_progresBar; //ƒvƒƒOƒŒƒXƒo[ + CListenerSettingWindow listenerSettingWindow; //ƒŠƒXƒi[Ý’èƒEƒBƒ“ƒhƒE + CComAutoCriticalSection lvNoBufCS; //¶•ú‘—”ԍ†ƒNƒŠƒeƒBƒJƒ‹ƒZƒNƒVƒ‡ƒ“ + CString lvNoBuffer; //¶•ú‘—”ԍ†ƒoƒbƒtƒ@ private: // ƒƒbƒZ[ƒWƒtƒBƒ‹ƒ^ˆ— virtual BOOL PreTranslateMessage(MSG* pMsg); diff --git a/nlite/nlite_property.cpp b/nlite/nlite_property.cpp index 12fb3b4..9516968 100644 --- a/nlite/nlite_property.cpp +++ b/nlite/nlite_property.cpp @@ -223,7 +223,7 @@ namespace nlite{ CreatePropertyFile(); CComPtr pWriter; CreateXmlWriter(__uuidof(IXmlWriter), reinterpret_cast(&pWriter), 0); - + // XMLƒtƒ@ƒCƒ‹ƒpƒXì¬ TCHAR xml[MAX_PATH]; _tcscpy(xml,this->propertyPath); @@ -235,7 +235,6 @@ namespace nlite{ SHCreateStreamOnFile(xml, STGM_CREATE | STGM_WRITE, &pStream); pWriter->SetOutput(pStream); - // ƒCƒ“ƒfƒ“ƒg—LŒø‰» pWriter->SetProperty(XmlWriterProperty_Indent, TRUE); diff --git a/nlite/nlite_property.h b/nlite/nlite_property.h index 72eeb0f..7f0e699 100644 --- a/nlite/nlite_property.h +++ b/nlite/nlite_property.h @@ -127,8 +127,8 @@ namespace nlite{ GeneralProperty gp; //‹¤—LƒvƒƒpƒeƒB CommentReadProperty crp; //ƒRƒƒ“ƒg“ǂݏグƒvƒƒpƒeƒB CNLiteString appLocalPath; //ƒ[ƒJƒ‹ƒtƒHƒ‹ƒ_ƒpƒX - CNLiteString propertyFolderPath; //ƒvƒƒpƒeƒB”z’uƒtƒHƒ‹ƒ_ - CNLiteString propertySaveFolderPath; //ƒvƒƒpƒeƒBƒtƒHƒ‹ƒ_ + CNLiteString propertyFolderPath; //ƒvƒƒpƒeƒB”z’u‚ª‹LÚ‚³‚ꂽƒtƒHƒ‹ƒ_ + CNLiteString propertySaveFolderPath; //ƒvƒƒpƒeƒBƒf[ƒ^•Û‘¶æƒtƒHƒ‹ƒ_ CNLiteString propertyPath; //ƒvƒƒpƒeƒBƒtƒ@ƒCƒ‹ƒpƒX CNLiteString listenerDataPath; //ƒŠƒXƒi[î•ñÝ’èƒtƒ@ƒCƒ‹ƒpƒX Property(); @@ -176,8 +176,8 @@ namespace nlite{ }; - Node::type propertyType; - tstring nodeName; + Node::type propertyType; //ƒvƒƒpƒeƒB‚̃^ƒCƒv + tstring nodeName; //ƒm[ƒh–¼ @@ -189,7 +189,6 @@ namespace nlite{ - void OnStartElement (const XML_Char *pszName, const XML_Char **papszAttrs); void OnEndElement (const XML_Char *pszName); diff --git a/nlite/nlite_propertyWindow.h b/nlite/nlite_propertyWindow.h index cf811e0..d5d5876 100644 --- a/nlite/nlite_propertyWindow.h +++ b/nlite/nlite_propertyWindow.h @@ -82,13 +82,13 @@ namespace nlite{ /// class CListenerSettingWindow:public CDialogImpl{ - CEdit nameEdit; - CColorSettingButton nameColorButton; - CButton nameColorReturnButton; - CColorSettingButton backColorButton; - CButton backColorReturnButton; - CStatic idField; - ListenerData *listenerData; + CEdit nameEdit; //ƒjƒbƒNƒl[ƒ€•ÒWƒGƒfƒBƒbƒg + CColorSettingButton nameColorButton; //ƒjƒbƒNƒl[ƒ€F•ÒWƒ{ƒ^ƒ“ + CButton nameColorReturnButton; //ƒjƒbƒNƒl[ƒ€F‚ð–ß‚·ƒ{ƒ^ƒ“ + CColorSettingButton backColorButton; //”wŒiF•ÒWƒ{ƒ^ƒ“ + CButton backColorReturnButton; //”wŒiF‚ð–ß‚·ƒ{ƒ^ƒ“ + CStatic idField; //ID•\Ž¦—̈æ + ListenerData *listenerData; //‘Ώۂ̃ŠƒXƒi[ƒf[ƒ^ public: enum { IDD = IDD_LISTENER_SETTING_DIALOG }; @@ -100,6 +100,10 @@ namespace nlite{ COMMAND_CODE_HANDLER_EX(BN_CLICKED,OnButton) END_MSG_MAP() + + /// + ///Ý’èƒEƒBƒ“ƒhƒE•\Ž¦ + /// VOID ShowSettingWindow(ListenerData &listenerData); private: diff --git a/nlite/nlite_string.h b/nlite/nlite_string.h index 67f77b8..c65991d 100644 --- a/nlite/nlite_string.h +++ b/nlite/nlite_string.h @@ -3,7 +3,6 @@ namespace nlite{ typedef std::basic_string tstring; -//–¼‘O‚âƒNƒ‰ƒX‚ð•Ï‚¦‚½‚¢ê‡‚Í‚±‚±‚ð•Ï‚¦‚é #define CNLITESTRING_THISTYPE CNLiteString //•¶Žš—ñƒNƒ‰ƒX–¼ #define CNLITESTRING_INTERNALSTRINGTYPE CComBSTR //“à•”‚ŏˆ—‚ð‚·‚é•¶Žš—ñƒNƒ‰ƒX–¼ -- 2.11.0