スタティック ライブラリ: JSONParser プロジェクトの概要
========================================================================
-この JSONParser ライブラリ プロジェクトは、AppWizard
-により作成されました。
+jsonを解析するために作ったライブラリです。
+マイリスト取得機能付けたくて作ったけど、別な方法で取得するかもしれないので
+結局使わないかもしれません。
-ソース ファイルはプロジェクトの一部として作成されませんでした。
+josn_parser.c
+関数の実装が書かれています。
-JSONParser.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
-
-JSONParser.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
-
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
-
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-
-/////////////////////////////////////////////////////////////////////////////
+josn.h
+関数の定義が書かれています。
\ No newline at end of file
-================================================================================
-= =
-= \83j\83R\90¶\83R\83\81\83\93\83g\83r\83\85\81[\83A:nlite =
-= =
-================================================================================
+===================================================================================================================
+= =
+= \83j\83R\90¶\83R\83\81\83\93\83g\83r\83\85\81[\83A:nlite =
+= =
+===================================================================================================================
\83\\81[\83X\83R\81[\83h\83o\81[\83W\83\87\83\930.001
\81\97\83\89\83C\83Z\83\93\83X
\8e\84\82ª\90»\8dì\82µ\82½\82à\82Ì\82Í\8fC\90³BSD\83\89\83C\83Z\83\93\83X\82Æ\82µ\82Ü\82·\81B
- \82»\82ê\88È\8aO\82Ì\91¼\8eÒ\82³\82Ü\90§\8dì\82Ì\83\89\83C\83u\83\89\83\8a\82Í\82»\82ê\82¼\82ê\82Ì
+ \91¼\8eÒ\82³\82Ü\90§\8dì\82Ì\83\89\83C\83u\83\89\83\8a\82Í\82»\82ê\82¼\82ê\82Ì\83\89\83C\83Z\83\93\83X\82ª\93K\97p\82³\82ê\82Ü\82·
\81\97\83C\83\93\83X\83g\81[\83\8b\8eè\8f\87
1.\83}\83C\83N\83\8d\83\\83t\83g\83z\81[\83\80\83y\81[\83W\82æ\82è\81AVisualC++2010Express\82ÆWindows Driver Kit\82ð\83C\83\93\83X\83g\81[\83\8b
\81E\8aJ\94\8c¾\8cêC/C++
\81E.NET\83t\83\8c\81[\83\80\83\8f\81[\83N\93\99\81A\8eÀ\8ds\8e\9e\83R\83\93\83p\83C\83\8b\82ª\8ds\82í\82ê\82Ä\82µ\82Ü\82¤\82æ\82¤\82È\83\89\83C\83u\83\89\83\8a\82Í\8eg\97p\82µ\82Ü\82¹\82ñ\81B\8a®\91S\83l\83C\83e\83B\83u\83A\83v\83\8a\83P\81[\83V\83\87\83\93\82ð\96Ú\8ew\82µ\82Ü\82·\81B
\81E\82»\82Ì\82¤\82¿\83X\83N\83\8a\83v\83g\82É\82æ\82é\83v\83\89\83O\83C\83\93\8b@\94\\82Æ\82©\82â\82é\82©\82à\82µ\82ê\82Ü\82¹\82ñ\81B\8d¡\8cã\82Ì\95û\90j\82Æ\82©\82Ítodo.txt\82ð\8c©\82Ä\82\82¾\82³\82¢\81B
+\81E\8bÉ\97ÍGPL\83\89\83C\83Z\83\93\83X\82ª\93K\97p\82³\82ê\82½\83\89\83C\83u\83\89\83\8a\82Í\8eg\97p\82µ\82È\82¢\95û\8cü\82Å\8dl\82¦\82Ä\82¢\82Ü\82·\81B\90Ï\82ñ\82¾\82ç\95Ê\82Å\82·\82ª\81E\81E\81E\81B
-\81\97\8eg\97p\83\89\83C\83u\83\89\83\8a
-\81EATL/WTL
+\81\97\83v\83\8d\83W\83F\83N\83g\82É\8aÜ\82Ü\82ê\82Ä\82¢\82é\83\89\83C\83u\83\89\83\8a
+\81EWTL
\83\89\83C\83Z\83\93\83X: CPL
\90»\8dì\8eÒ: \83}\83C\83N\83\8d\83\\83t\83g
\8aT\97v\81F win32api\82ð\8eg\82¢\82â\82·\82\82·\82é\82½\82ß\82ÌC++\83e\83\93\83v\83\8c\81[\83g\83\89\83C\83u\83\89\83\8a
\81Eexpat
- \83\89\83C\83Z\83\93\83X\81F MIT\83t\83\8a\81[\83\89\83C\83Z\83\93\83X
+ \83\89\83C\83Z\83\93\83X\81F MIT\83t\83\8a\81[\83\89\83C\83Z\83\93\83X\82É\8e\97\82½\83\89\83C\83Z\83\93\83X
\90»\8dì\8eÒ\81F James Clark\8e\81
\8aT\97v\81F sax\8c`\8e®\82Ìxml\83p\81[\83T
sql\83\89\83C\83u\83\89\83\8a
\81EJSONParser
-
\ No newline at end of file
+ json\89ð\90Í\83\89\83C\83u\83\89\83\8a(\8e©\8dì\81B\8fo\97\88\82Í\97Ç\82\82È\82¢)
+
+\81Enlib
+ \83j\83R\83j\83R\93®\89æAPI\8aÖ\98A\82Ì\83\89\83C\83u\83\89\83\8a(\8e©\8dì)
+
+\81Enlib_driver
+ nlib\82Ì\83e\83X\83g\97p\83h\83\89\83C\83o\81B\8b°\82ç\82\8d¡\82Í\93®\82©\82È\82¢\82Æ\8ev\82¢\82Ü\82·
+
+\81Enlite
+ \83\81\83C\83\93\83v\83\8d\83W\83F\83N\83g(\8e©\8dì)
+
+\81Enlib_stub
+ nlite\82Ì\89æ\96Ê\95\\8e¦\8aÖ\98A\82Ì\83e\83X\83g\82ð\82·\82é\82½\82ß\82É\8eg\82Á\82Ä\82¢\82½nlib\82Ì\83_\83~\81[\83\89\83C\83u\83\89\83\8a\81B\91½\95ª\8d¡\82Í\93®\82©\82È\82¢\82Æ\8ev\82¢\82Ü\82·\81B
+
+\81EshareCookie
+ \83u\83\89\83E\83U\83N\83b\83L\81[\8b¤\97L\83\89\83C\83u\83\89\83\8a(\8e©\8dì\81B\8fo\97\88\82Íry)
+
+
+\81\97\8eG\8a´\82Æ\82©
+\8dì\90¬\8co\88Ü\82Í\83R\83\81\83r\83\85\82Ì\97§\82¿\8fã\82ª\82è\82ª\92x\82\82IJׯ\82Æ\82«\82½\82©\82ç
+\82Ü\82¾\88ê\94Ê\8cö\8aJ\82Å\82«\82é\83\8c\83x\83\8b\82Å\82Í\82È\82¢\82Å\82·\82ª\81A\83\\81[\83X\83R\81[\83h\82Ì\83t\83B\81[\83h\83o\83b\83N\82Æ\82©\97~\82µ\82\82Ä\83\\81[\83X\8cö\8aJ\82Æ\82È\82è\82Ü\82µ\82½\81B
+\8dÅ\8f\89\82ÍC\8c¾\8cê\82¾\82¯\82Å\8dì\82ë\82¤\82Æ\8dl\82¦\82Ü\82µ\82½\82ª\82 \82Ü\82è\82É\82ß\82ñ\82Ç\82\82³\82¢\82Ì\82ÅC++\82Å\8dì\82é\82±\82Æ\82É\82µ\82Ü\82µ\82½\81B
+\8b@\94\\82Æ\82µ\82Ä\82Í\8d¡\82Ì\82Æ\82±\82ë\92´\97ò\89»NCV\82Å\82·\81B\97B\88ê\8f\9f\82Á\82Ä\82¢\82é\82Æ\82±\82ë\82Í\83\81\83\82\83\8a\8fÁ\94ï\97Ê\82Å\82·(\8fÎ)
+
+
+
+\81\97\8eÓ\8e«
+expat\90§\8dì James Clark\8e\81
+\83j\83RPITA\83u\83\8d\83O \82Ä\82Ü\82è\82ñ\82³\82ñ(\8eå\82É\83j\83R\90¶API\82Ì\8ed\97l\82Å\82¨\90¢\98b\82É\82È\82è\82Ü\82µ\82½)
+NCV\90§\8dì moro\82³\82ñ(\8ed\97l\82ð\8eQ\8dl\82à\82Æ\82¢\83p\83N\82è\82Ü\82µ\82½)
スタティック ライブラリ: expat プロジェクトの概要
========================================================================
-この expat ライブラリ プロジェクトは、AppWizard
-により作成されました。
+James Clark氏制作のxml解析用ライブラリ
+C言語では割りと定番のxml解析ライブラリらしいです。
-ソース ファイルはプロジェクトの一部として作成されませんでした。
-
-
-expat.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
-
-expat.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
-
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
-
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-
-/////////////////////////////////////////////////////////////////////////////
スタティック ライブラリ: nlib プロジェクトの概要
========================================================================
-この nlib ライブラリ プロジェクトは、AppWizard
-により作成されました。
+ニコニコ動画・ニコニコ生放送のAPIをC言語からアクセスできるようにしたライブラリ
+C言語で書いてしまったのを激しく公開している。が、書きなおすのがめんどくさいのでそのまま使用している
+現在このライブラリで行えることは以下の機能です。
+・ブラウザとクッキーを共有してニコニコ生放送に接続
+・接続した放送のコメントを受信
+・放送にコメントを送信
+・接続している放送のハートビート取得
+・keepAlive送信
+・自分の動画マイリストの取得
+・ライブラリのエラーコードからエラーメッセージに変換
-ソース ファイルはプロジェクトの一部として作成されませんでした。
+このライブラリは以下のライブラリに依存しています。
+・expat
+・JSONParser
+・shareCookie
+・sqlite3
-nlib.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
+このライブラリを自分で使いたいと思った方がいましたら以下のヘッダファイルをインクルードしてください
+・nlib.h
+・nlib_define.h
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
+各ファイル説明
+nlib.h
+ライブラリにアクセスする関数と型が定義されています。
+
+nlib_common.h
+ライブラリ内で使用する共通の変数が定義されています。
+
+nlib_define.h
+外部に公開する定数などが定義されています。
+定義されている内容は以下のものです。
+・イベントハンドラのイベント定数
+・プレイヤーステータスのプロバイダタイプ定数
+・nlibのエラーコード定数
+
+nlib_include.h
+内部で使うヘッダをまとめてインクルード
+
+
+nlib_myList.h
+マイリスト関連の内部で使う関数や構造体が定義されている
+
+nlib_nicoLive.h
+ニコニコ生放送関連の内部で使う関数や構造体が定義されている
+
+nlib_xmlHandlere.h
+expatのコールバック関数が定義されている
+
+stdAfx.h
+プリコンパイルヘッダ
+
+targetver.h
+動作対象OSが定義されている
+
+
+nlib_common.cpp
+nlib_common.hの実装
+
+nlib_errorMessage.cpp
+エラーコードからエラーメッセージを取得する関数の実装
+
+nlib_myList.cpp
+nlib.hで定義されている動画マイリスト取得関係の関数の実装
+
+nlib_nicoLive.cpp
+nlib.hで定義されているニコニコ生放送関係の関数の実装
+
+nlib_nicoVideoAuth.cpp
+nlib.hで定義されているニコニコ動画認証関係の関数の実装
+
+nlib_xmlHandler.cpp
+nlib_xmlHandler.hの実装
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-/////////////////////////////////////////////////////////////////////////////
#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é
-//#define USE_NLIB_KEEPALIVE //\83L\81[\83v\83A\83\89\83C\83u\82ð\8eg\97p\82·\82é\8fê\8d\87\92è\8b`
+#define USE_NLIB_KEEPALIVE //\83L\81[\83v\83A\83\89\83C\83u\82ð\8eg\97p\82·\82é\8fê\8d\87\92è\8b`
#define PLAYERSTATUS_GET_TITLE //\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\82Å\83^\83C\83g\83\8b\82ð\8eæ\93¾\82·\82é\8fê\8d\87\82É\92è\8b`
//windowsAPI\8aÖ\98A\83w\83b\83_
self->chatManager.setKeepAliveTimeEvent = WSACreateEvent();
- self->chatManager.resetEvents[USE_NLIB_KEEPALIVE] = WSACreateEvent();
+ self->chatManager.resetEvents[KEEPALLIVERESETEVENT] = WSACreateEvent();
#endif //USE_NLIB_KEEPALIVE
WSACloseEvent((*self)->chatManager.setHeartBeatTimeEvent);
#ifdef USE_NLIB_KEEPALIVE
WSACloseEvent((*self)->chatManager.setKeepAliveTimeEvent);
- WSACloseEvent((*self)->chatManager.resetEvents[USE_NLIB_KEEPALIVE]);
+ WSACloseEvent((*self)->chatManager.resetEvents[KEEPALLIVERESETEVENT]);
#endif
WSACloseEvent((*self)->chatManager.endEvent);
コンソール アプリケーション: nlib_driver プロジェクトの概要
========================================================================
-この nlib_driver アプリケーションは、AppWizard により作成されました。
-
-このファイルには、nlib_driver
-アプリケーションを構成する各ファイルの内容の概要が含まれています。
-
-
-nlib_driver.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
-
-nlib_driver.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
-
-nlib_driver.cpp
- これは、メインのアプリケーション ソース ファイルです。
-
-/////////////////////////////////////////////////////////////////////////////
-その他の標準ファイル :
-
-StdAfx.h、StdAfx.cpp
- これらのファイルは、nlib_driver.pch
- という名前のプリコンパイル済みヘッダー (PCH) ファイルと、StdAfx.obj
- という名前のプリコンパイル済みの型ファイルを構築するために使用されます。
-
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
-
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-
-/////////////////////////////////////////////////////////////////////////////
+nlib動作確認用に使っていたものです。
+今は多分動かないです。
Win32 アプリケーション: nlite プロジェクトの概要
========================================================================
-この nlite アプリケーションは、AppWizard により作成されました。
-このファイルには、nlite
-アプリケーションを構成する各ファイルの内容の概要が含まれています。
-nlite.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
-
-nlite.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
-
nlite.cpp
これは、メインのアプリケーション ソース ファイルです。
+
+nlite.h
+共通の変数が定義されている
+
+nlite_appinfo.h
+アプリケーション情報クラス定義
+
+nlite_chatData.h
+ニコ生コメント管理関係のクラス定義
+
+nlite_commentview.h
+ニコ生コメント表示ウィンドウクラス定義
+
+nlite_commentWrite.h
+ニコ生コメント書き込み関連ウィンドウクラス定義
+
+nlite_exception.h
+例外定義
+
+
+nlite_include.h
+インクルードファイルをまとめてインクルードするようにした
+
+nlite_main
+
+
/////////////////////////////////////////////////////////////////////////////
AppWizard によって、次のリソースが作成されました。
<ClInclude Include="nlite_commentWrite.h" />
<ClInclude Include="nlite_exception.h" />
<ClInclude Include="nlite_include.h" />
- <ClInclude Include="nlite_mailframe.h" />
+ <ClInclude Include="nlite_mainframe.h" />
<ClInclude Include="nlite_appinfo.h" />
<ClInclude Include="nlite_nlib.h" />
<ClInclude Include="nlite_property.h" />
<ClInclude Include="nlite_include.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
- <ClInclude Include="nlite_mailframe.h">
- <Filter>ヘッダー ファイル</Filter>
- </ClInclude>
<ClInclude Include="targetver.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
<ClInclude Include="nlite_propertyWindow.h">
<Filter>ヘッダー ファイル</Filter>
</ClInclude>
+ <ClInclude Include="nlite_mainframe.h">
+ <Filter>ヘッダー ファイル</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">
#include "nlite_commentview.h"
#include "nlite_appinfo.h"
#include "nlite_propertyWindow.h"
-#include "nlite_mailframe.h"
+#include "nlite_mainframe.h"
--- /dev/null
+#pragma once
+
+namespace nlite{
+
+
+ ///
+ ///\83E\83B\83\93\83h\83E\96¼
+ ///
+ const static LPCTSTR NLITE_MAINWINDOW = TEXT("nlite");
+
+
+
+ ///
+ ///\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
+ {
+
+ public:
+
+
+ class CLiveUserData;
+ friend CLiveUserData;
+
+ struct LvnoSearchFunctional;
+
+ ///
+ ///\95ú\91\97\94Ô\8d\86\93ü\97Í\97p
+ ///
+ class CSubLiveNoComboBox:public CWindowImpl<CEdit>{
+ friend CNliteMainFrame;
+
+ public:
+ //\8e\8b\92®\97\9a\97ð\95\\8e¦\97p\83y\83A
+ typedef std::pair<CNLiteString,CNLiteString> LiveInfo;
+ typedef std::list<LiveInfo> LiveInfoList;
+
+ private:
+ CNliteMainFrame &self; //\83\81\83C\83\93\83t\83\8c\81[\83\80\83E\83B\83\93\83h\83E
+ CComAutoCriticalSection cs; //\83N\83\8a\83e\83B\83J\83\8b\83Z\83N\83V\83\87\83\93\83I\83u\83W\83F\83N\83g
+ BOOL untilConnectingFlag; //\90Ú\91±\8f\88\97\9d\92\86\82©\82Ì\83t\83\89\83O\94»\92è
+ LiveInfoList liveInfoList; //\95ú\91\97\97\9a\97ð\8fî\95ñ
+ public:
+
+ ///
+ ///\83R\83\93\83X\83^\83\89\83N\83^
+ ///
+ CSubLiveNoComboBox(CNliteMainFrame &in_self);
+
+
+ //\83\81\83b\83Z\81[\83W\83\8b\81[\83v
+ BEGIN_MSG_MAP_EX(CSubLiveNoComboBox)
+ MSG_WM_KEYDOWN(OnKeyDown)
+ END_MSG_MAP()
+
+ public:
+
+ ///
+ ///\95ú\91\97\8fî\95ñ\92Ç\89Á
+ ///
+ VOID AddLiveInfo(CNicoLiveStream &stream,LvnoSearchFunctional &functional);
+
+
+ ///
+ ///\95ú\91\97\94Ô\8d\86\93ü\97Í\82ð\8b\96\89Â\82·\82é
+ ///
+ VOID AgreeInputLvNo();
+
+
+ private:
+ ///
+ ///\83L\81[\89\9f\89º\8e\9e\82Ì\8f\88\97\9d
+ ///
+ VOID OnKeyDown(TCHAR wParam, UINT upLParam,UINT loLParam);
+
+
+ };
+
+
+
+ struct LvnoSearchFunctional{
+ LPCTSTR lvNo;
+ CNLiteString dispData;
+
+ LvnoSearchFunctional(LPCTSTR in_lvNo):lvNo(in_lvNo){}
+
+ bool operator()(CSubLiveNoComboBox::LiveInfo &listInfo){
+ return listInfo.second == lvNo;
+ }
+
+ };
+
+
+ ///
+ ///\83R\83\81\83\93\83g\8eó\90M
+ ///
+ class CLiveUserData {
+
+
+ friend CNliteMainFrame;
+ private:
+
+ CNliteMainFrame &self;
+
+
+ public:
+
+ ///
+ ///\83R\83\93\83X\83g\83\89\83N\83^
+ ///
+ CLiveUserData(CNliteMainFrame &self);
+
+
+ ///
+ ///\90Ú\91±\8aJ\8en\8e\9e\8f\88\97\9d
+ ///
+ VOID OnConnect();
+
+ ///
+ ///\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(CNicoLiveStream &stream,NicoLiveThreadComment_P threadComment);
+
+
+ ///
+ ///1\83R\83\81\83\93\83g\8eó\90M\82µ\82½\8e\9e\82Ì\83R\81[\83\8b\83o\83b\83N\8f\88\97\9d
+ ///\8eó\90M\82µ\82½\83R\83\81\83\93\83g\82ð\83o\83b\83t\83@\82É\8ai\94[
+ ///
+ VOID OnChatReceve(NicoLiveChat_P chat,UINT_PTR count);
+
+
+ ///
+ ///\83`\83\83\83b\83g\8eó\90M\8am\92è\8e\9e\82Ì\83R\81[\83\8b\83o\83b\83N\8f\88\97\9d
+ ///\8eå\82É\8eó\90M\82µ\82½\83R\83\81\83\93\83g\82Ì\95`\89æ\8f\88\97\9d\82ð\8ds\82¤
+ ///
+ VOID OnChatReceveSettle(UINT_PTR commentCount,UINT_PTR commentCountSum);
+
+ ///
+ ///\83R\83\81\83\93\83g\91\97\90M\8c\8b\89Ê\8eó\90M\8e\9e\82Ì\83R\81[\83\8b\83o\83b\83N\8f\88\97\9d
+ ///
+ VOID OnChatSendResult(NicoLiveSendResultComment_P sendResult);
+
+
+ ///
+ ///\83n\81[\83g\83r\81[\83g\91\97\90M\8e\9e\82Ì\83R\81[\83\8b\83o\83b\83N
+ ///
+ VOID OnHeartBeat(NicoLiveHeartBeat_P heartBeat);
+
+
+ ///
+ ///\90Ø\92f\8e\9e\82Ì\83R\81[\83\8b\83o\83b\83N
+ ///
+ VOID OnDisconnect();
+
+ };
+
+ friend CSubLiveNoComboBox;
+ public:
+
+ typedef CFrameWindowImpl<CNliteMainFrame> baseWindow;
+
+ // \83E\83B\83\93\83h\83E\83N\83\89\83X\96¼\81A\8b¤\92Ê\83\8a\83\\81[\83XID\81A\83X\83^\83C\83\8b\81A\94w\8ci\90F\82ð\93o\98^
+ DECLARE_FRAME_WND_CLASS(NLITE_MAINWINDOW, IDC_NLITE)
+
+ private:
+ CCommentView commentView; //\83R\83\81\83\93\83g\95\\8e¦\83E\83B\83\93\83h\83E
+ CStatusBarCtrl statusBar; //\83X\83e\81[\83^\83X\83o\81[
+ CLiveUserData userData; //\83C\83x\83\93\83g\83n\83\93\83h\83\89\97p\83N\83\89\83X
+ 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³
+ INT_PTR toolBarHeight; //\83c\81[\83\8b\83o\81[\82Ì\8d\82\82³
+ CNicoVideoAuth nicoVideoAuth; //\83j\83R\83j\83R\93®\89æ\94F\8fØ\97p\83I\83u\83W\83F\83N\83g
+ CNicoLiveStream nicoLiveStream; //\83j\83R\83j\83R\90¶\95ú\91\97\83I\83u\83W\83F\83N\83g
+ CMultiPaneStatusBarCtrl m_hStatusBar; //\83}\83\8b\83`\83y\83C\83\93\83X\83e\81[\83^\83X\83o\81[
+ CProgressBarCtrl m_progresBar; //\83v\83\8d\83O\83\8c\83X\83o\81[
+ private:
+ // \83\81\83b\83Z\81[\83W\83t\83B\83\8b\83^\8f\88\97\9d
+ virtual BOOL PreTranslateMessage(MSG* pMsg);
+
+ // \83A\83C\83h\83\8b\8f\88\97\9d
+ virtual BOOL OnIdle();
+
+
+
+
+ public:
+
+ ///
+ ///\83R\83\93\83X\83g\83\89\83N\83^
+ ///
+ CNliteMainFrame();
+
+
+ ///
+ ///\83f\83X\83g\83\89\83N\83^
+ ///
+ ~CNliteMainFrame();
+
+
+
+ BEGIN_UPDATE_UI_MAP(CNliteMainFrame)
+ // \83G\83\93\83g\83\8a\82È\82µ
+ END_UPDATE_UI_MAP()
+
+ // \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)
+ MESSAGE_HANDLER(WM_SETCURSOR,OnSetCursor)
+ COMMAND_ID_HANDLER_EX(IDM_EXIT, OnMenuExit)
+ COMMAND_ID_HANDLER_EX(IDM_ABOUT,OnMenuAbount)
+ COMMAND_ID_HANDLER_EX(IDM_COOKIE,OnCookie)
+ COMMAND_ID_HANDLER_EX(IDM_VIEW_PREFERENCE,OnViewPreference)
+ COMMAND_CODE_HANDLER_EX(CBN_SELCHANGE,OnCbSelChange)
+ NOTIFY_HANDLER(ATL_IDW_TOOLBAR,RBN_HEIGHTCHANGE,OnRbnHeightChange)
+ // CFrameWindowImpl\83N\83\89\83X\82Ö\83`\83F\81[\83\93
+ CHAIN_MSG_MAP(CFrameWindowImpl<CNliteMainFrame>)
+ END_MSG_MAP()
+
+
+ ///
+ ///\8f\89\8aú\89»\8f\88\97\9d
+ ///
+ VOID Initialize(LPCTSTR localAppDataPath);
+
+ ///
+ ///\8fI\97¹\8f\88\97\9d
+ ///
+ VOID Finalaize();
+
+
+ ///
+ ///\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);
+
+
+ ///
+ ///\83T\83C\83Y\95Ï\8dX\92\86\8f\88\97\9d
+ ///
+ VOID OnSizing(UINT wParam,LPRECT lParam);
+
+ ///
+ ///\83T\83C\83Y\95Ï\8dX\8cã
+ ///
+ LRESULT OnSize(UINT uMsg,WPARAM wParam,LPARAM lParam,BOOL& bHandled);
+
+
+ ///
+ ///\8eq\83E\83B\83\93\83h\83E\83T\83C\83Y\95Ï\8dX\8f\88\97\9d
+ ///
+ VOID ChangeSize(const SIZE& client);
+
+ ///
+ ///\83R\83\93\83{\83{\83b\83N\83X\82Ì\91I\91ð\8d\80\96Ú\82ª\95Ï\8dX\82³\82ê\82½
+ ///
+ LRESULT OnCbSelChange(UINT hiWparam,int loWparam,HWND lParam);
+
+ ///
+ ///\83E\83B\83\93\83h\83E\8dì\90¬\8e\9e\82Ì\8f\88\97\9d
+ ///
+ LRESULT OnCreate(LPCREATESTRUCT lpcs);
+
+
+ ///
+ ///\83j\83R\90¶\95ú\91\97\82É\90Ú\91±
+ ///
+ BOOL ConnectNicoLive(LPCTSTR liveNo);
+
+
+ ///
+ ///\83}\83E\83X\83J\81[\83\\83\8b\95Ï\8dX\8f\88\97\9d
+ ///
+ LRESULT OnSetCursor(LRESULT msg,WPARAM wParam,LPARAM lParam,BOOL &bHandled);
+
+
+ //\83\81\83j\83\85\81[\82©\82ç\83t\83@\83C\83\8b\82ð\8fI\97¹\82ð\91I\91ð
+ VOID OnMenuExit(UINT uNotifyCode, int nID, HWND hWndCtl);
+
+ //\83\81\83j\83\85\81[\82Ì\83A\83v\83\8a\83P\81[\83V\83\87\83\93\83o\81[\83W\83\87\83\93\8fî\95ñ\95\\8e¦
+ VOID OnMenuAbount(UINT uNotifyCode,int nID,HWND hWndCtl);
+
+ //\83N\83b\83L\81[\82Ì\90Ý\92è
+ VOID OnCookie(UINT uNotifyCode,int nID,HWND hWndCtl);
+
+ //\83r\83\85\81[\83A\90Ý\92è
+ VOID OnViewPreference(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);
+
+
+ };
+
+
+
+
+
+
+}
\ No newline at end of file
スタティック ライブラリ: nlite_stub プロジェクトの概要
========================================================================
-この nlite_stub ライブラリ プロジェクトは、AppWizard
-により作成されました。
-
-ソース ファイルはプロジェクトの一部として作成されませんでした。
-
-
-nlite_stub.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
-
-nlite_stub.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
-
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
-
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-
-/////////////////////////////////////////////////////////////////////////////
+nlibのダミーライブラリ
+nliteの画面表示テストに使用していたものです。
+多分今は動かないです。
スタティック ライブラリ: shareCookie プロジェクトの概要
========================================================================
-この shareCookie ライブラリ プロジェクトは、AppWizard
-により作成されました。
+ブラウザクッキー共有ライブラリ
+現在対応しているブラウザ一覧
+・IE
+・ファイアフォックス
+・chrome
+・IEコンポーネント系
-ソース ファイルはプロジェクトの一部として作成されませんでした。
+※Safari、Operaには対応していません
-shareCookie.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
+各ファイル説明
-shareCookie.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
+shareCookie.c
+クッキー共有関数の実装が書かれています。
-/////////////////////////////////////////////////////////////////////////////
-ã\81\9dã\81®ä»\96ã\81®ã\83¡ã\83¢ :
+shareCookie.h
+ã\82¯ã\83\83ã\82ã\83¼å\85±æ\9c\89é\96¢æ\95°ã\81®å®£è¨\80ã\81\8cæ\9b¸ã\81\8bã\82\8cã\81¦ã\81\84ã\81¾ã\81\99ã\80\82
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-
-/////////////////////////////////////////////////////////////////////////////
+browserType.h
+クッキー共有関数に渡す定数が定義されています。
\ No newline at end of file
スタティック ライブラリ: sqlite3 プロジェクトの概要
========================================================================
-この sqlite3 ライブラリ プロジェクトは、AppWizard
-により作成されました。
+sql解析用ライブラリ
-ソース ファイルはプロジェクトの一部として作成されませんでした。
-
-
-sqlite3.vcxproj
- これは、アプリケーション ウィザードを使用して生成された VC++
- プロジェクトのメイン プロジェクト ファイルです。
- ファイルを生成した Visual C++ のバージョンに関する情報と、アプリケーション
- ウィザードで選択されたプラットフォーム、
- 構成、およびプロジェクト機能に関する情報が含まれています。
-
-sqlite3.vcxproj.filters
- これは、アプリケーション ウィザードで生成された VC++ プロジェクトのフィルター
- ファイルです。
- このファイルには、プロジェクト内のファイルとフィルターとの間の関連付けに関する
- 情報が含まれています。 この関連付けは、特定のノー
- ドで同様の拡張子を持つファイルのグループ化を
- 示すために IDE で使用されます (たとえば、".cpp" ファイルは "ソース ファイル"
- フィルターに関連付けられています)。
-
-/////////////////////////////////////////////////////////////////////////////
-その他のメモ :
-
-AppWizard では "TODO:"
-コメントを使用して、ユーザーが追加またはカスタマイズする必要のあるソース
-コードを示します。
-
-/////////////////////////////////////////////////////////////////////////////