lafe @ ウィキ
C++
最終更新:
lafe
-
view
- C/C++
- cpprefjp
- 標準関数(文字列操作)
- C++文字列(std::string)
- CStringクラス編
- CStringT のメンバ (ATL/MFC)
- 勇躍のゴミ箱
- WindowStyleの一覧
- コモンコントロールのウィンドウスタイル
- メッセージ一覧(通知コード含む)
- ポップアップメニューボタンの作成
- メモ魔 @ ウィキ
- VC の pragma - メモ帳
- __declspec(selectany) declarator - VC++
- ぬるり。: TextBoxと未実装メッセージ(1)
- VC++ Windows Programming
- プログラミング関連
- タブオーダーを設定する方法
- ラジオボタンの使い方
- C++マニアック
- Win32
- 関連付けとか
- Boost
- boost_serialization
- 正規表現(regex)
- ATL/WTL
- IEコンポーネント
- WebBrowser Control
- クラス IWebBrowser(java)
- IEコンポーネントの使い方
- HTML 通知の処理
- CHtmlView上で自動スクリプトの実行を止める方法について
- MFCとIEコンポーネントに関するTips
- UsefullCode.net: タブブラウザーを作る 記事一覧
- Internet Feature Controls
- 開発停止のブラウザにIEの設定を適用させる場合
- WebBrowser ホストの HTML ドキュメント イベントをシンクする方法
- MSHTML Hosting
- How to handle script errors as a WebBrowser control host
- An ATL control for hosting and customization of multiple instances of WebBrowser control for VB
- How To Get Protocol Headers in a Pluggable Protocol Handler(プラグ可能なプロトコル ハンドラーでプロトコル ヘッダーを取得する方法)
- Pluggable Namespace Handlers
- Asynchronous Pluggable Protocols(MSDN)
- Http Monitor for Webbrowser Control
- JavaScript call from C++
- WebBrowser コントロール ホストでスクリプト エラーを処理する方法
- Chrome
- COM
- シェル拡張(Shell Extention)
- git
- Qt
- その他
- skydrive
C/C++
cpprefjp
標準関数(文字列操作)
C++文字列(std::string)
CStringクラス編
http://www.ujasiri.com/prglib/vc/dataclass/cstring.html
CStringのメンバ関数の一覧
CStringのメンバ関数の一覧
CStringT のメンバ (ATL/MFC)
勇躍のゴミ箱
http://simd.jugem.jp/
Cの関数の例とか
Cの関数の例とか
CStaticクラス
http://msdn.microsoft.com/ja-jp/library/t98kd6f7(VS.80).aspx
CWndのメンバ
http://msdn.microsoft.com/ja-jp/library/b5wzwdk7(VS.80).aspx
CWnd::ModifyStyle()
http://msdn.microsoft.com/ja-jp/library/0xhz2t1c(VS.80).aspx
ウィンドウのスタイルを変更する関数
http://msdn.microsoft.com/ja-jp/library/t98kd6f7(VS.80).aspx
CWndのメンバ
http://msdn.microsoft.com/ja-jp/library/b5wzwdk7(VS.80).aspx
CWnd::ModifyStyle()
http://msdn.microsoft.com/ja-jp/library/0xhz2t1c(VS.80).aspx
ウィンドウのスタイルを変更する関数
WindowStyleの一覧
コモンコントロールのウィンドウスタイル
メッセージ一覧(通知コード含む)
ポップアップメニューボタンの作成
Internet Explorer MLang Functions
http://msdn.microsoft.com/en-us/library/ms905681.aspx
ConvertINetMultiByteToUnicodeとか
http://msdn.microsoft.com/en-us/library/ms905681.aspx
ConvertINetMultiByteToUnicodeとか
メモ魔 @ ウィキ
http://www26.atwiki.jp/ipubluedictionary/
COMとかも書いてある
COMとかも書いてある
VC の pragma - メモ帳
__declspec(selectany) declarator - VC++
http://www.ailight.jp/blog/sha256/archive/2005/03/22/5258.aspx
ヘッダに実体を書くことができる
ヘッダに実体を書くことができる
ぬるり。: TextBoxと未実装メッセージ(1)
http://hongliang.seesaa.net/article/7052822.html
エディットボックスのメッセージとか
エディットボックスのメッセージとか
class Test ←派生クラス、サブクラス
: public hoge ←基底クラス、スーパークラス
{ ~ }
: public hoge ←基底クラス、スーパークラス
{ ~ }
VC++ Windows Programming
プログラミング関連
タブオーダーを設定する方法
http://www.atmarkit.co.jp/fdotnet/dotnettips/176taborder/taborder.html
VS2008ではフォームを選択して メニューバーの書式→タブオーダーなので注意
VS2008ではフォームを選択して メニューバーの書式→タブオーダーなので注意
ラジオボタンの使い方
C++マニアック
http://homepage2.nifty.com/well/Index.html
オペレータのオーバーロードとか
オペレータのオーバーロードとか
Win32
ウィンドウに影を付ける(CS_DROPSHADOW)
ウィンドウメッセージ(WM_~)
Windows API Hooking Tutorial
Win32 API Path Routines
Vista Visual Style Classes by ~UkIntel
コントロール別背景色変更
クラッシュ ダンプの分析
http://msdn.microsoft.com/ja-jp/library/bb204861(v=vs.85).aspx
自前のアプリケーションに組み込むためのソース付
自前のアプリケーションに組み込むためのソース付
MinHook - The Minimalistic x86/x64 API Hooking Library
http://www.codeproject.com/Articles/44326/MinHook-The-Minimalistic-x86-x64-API-Hooking-Libra
64bitもフックできたのはこれだけ
64bitもフックできたのはこれだけ
関連付けとか
CRegKey
http://msdn.microsoft.com/ja-jp/library/5eccs806(VS.80).aspx
キーの中にある値を削除するときはDeleteValueを使うこと
キーの中にある値を削除するときはDeleteValueを使うこと
IApplicationAssociationRegistration Interface
vista以降で関連付けするときはこのAPIを使う
http://msdn.microsoft.com/ja-jp/library/bb776332(en-us,VS.85).aspx
http://msdn.microsoft.com/ja-jp/library/bb776332(en-us,VS.85).aspx
vista関連付け設定 1~3
http://blogs.wankuma.com/rapt/archive/2007/02/13/61985.aspx
http://blogs.wankuma.com/rapt/archive/2007/04/29/73665.aspx
http://blogs.wankuma.com/rapt/archive/2007/06/07/79842.aspx
_T( "DonutRAPT.AssocFile.HTML" )これは間違い
正しくは[HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications]に登録した値を使う
例では
_T( "DonutRAPT" )これが正解
http://blogs.wankuma.com/rapt/archive/2007/04/29/73665.aspx
http://blogs.wankuma.com/rapt/archive/2007/06/07/79842.aspx
_T( "DonutRAPT.AssocFile.HTML" )これは間違い
正しくは[HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications]に登録した値を使う
例では
_T( "DonutRAPT" )これが正解
Windows Vista 既定のプログラム 関連付け レジストリ とかの話
Boost
Let's Boost
とりあえず始めるBoost
Visual C++ でのBoostライブラリのビルド方法
b2 -j 2 --toolset=msvc-10.0 link=static runtime-link=static debug release stage
とかやればおk
bjam --toolset=msvc-9.0 link=static runtime-link=static debug release stage
VS2008用
b2 -j 2 --toolset=msvc-10.0 address-model=64 link=static runtime-link=static --stagedir=stage64 debug release stage
VS2010 64bit用
Programming: Boostライブラリのコンパイル «Challenge ASAP!
http://challenge-asap.sakura.ne.jp/wordpress/archives/311
Programming: Boostライブラリのコンパイル «Challenge ASAP!
http://challenge-asap.sakura.ne.jp/wordpress/archives/311
boost 1.35.0+VC8.0インストール
boost_serialization
boost::serializationを使う
serialization
serialization - その他
http://miyano.s53.xrea.com/cgi-bin/sb/log/eid12.html
バイナリデータのシリアライズには make_binary_object() を使う。
バイナリデータのシリアライズには make_binary_object() を使う。
Boost逆引きリファレンス
正規表現(regex)
正規表現ライブラリ 'Boost Regex++' の使い方
boost ライブラリを使ってみる
Boost.Regexを使ってみる(2)
http://freepg.fc2web.com/cpp/topic_boost_regex_002.html
一致した文字列をすべて取得とか
一致した文字列をすべて取得とか
. にマッチさせるには
regex r( _T("\\.") );としなければならない
\d を使うには
regex r( _T("\\d") );としなければならない
regex r( _T("\\.") );としなければならない
\d を使うには
regex r( _T("\\d") );としなければならない
テキストビジュアライザで見たときにちゃんとした正規表現になっていればいい
http://jbbs.livedoor.jp/bbs/read.cgi/radio/12345/1234567890/
これにマッチさせるには
regex r( _T("http://jbbs\\.livedoor.jp/bbs/read\\.cgi/(\\w+)/(\\d+)/(\\d+)/") ); こうすればいい
↓テキストビジュアライザで見たとき
http://jbbs\.livedoor\.jp/bbs/read\.cgi/(\w+)/(\d+)/(\d+)/
http://jbbs.livedoor.jp/bbs/read.cgi/radio/12345/1234567890/
これにマッチさせるには
regex r( _T("http://jbbs\\.livedoor.jp/bbs/read\\.cgi/(\\w+)/(\\d+)/(\\d+)/") ); こうすればいい
↓テキストビジュアライザで見たとき
http://jbbs\.livedoor\.jp/bbs/read\.cgi/(\w+)/(\d+)/(\d+)/
ATL/WTL
The So-Software Studio
WTL リファレンス
PreTranslateMessageでTRUEを返すとアイドルハンドラが呼ばれる
(処理するメッセージがないと解釈されてしまう)
(処理するメッセージがないと解釈されてしまう)
WTL/ATLのマクロ
WTLのタブビューは上にタブ、下にビューを設定しているだけ
ダイアログのリソースのプロパティのMenuでメニューバーを設定できる
IEコンポーネント
WebBrowser Control
クラス IWebBrowser(java)
http://www.ne.jp/asahi/hishidama/home/javadoc/jp/hishidama/win32/shdocvw/IWebBrowser.html
javaでの説明だが日本語なので
javaでの説明だが日本語なので
IEコンポーネントの使い方
HTML 通知の処理
CHtmlView上で自動スクリプトの実行を止める方法について
MFCとIEコンポーネントに関するTips
UsefullCode.net: タブブラウザーを作る 記事一覧
Internet Feature Controls
開発停止のブラウザにIEの設定を適用させる場合
WebBrowser ホストの HTML ドキュメント イベントをシンクする方法
IDocHostUIHandlerから派生したクラスで GetHostInfoを実装して
pInfo->dwFlags = DOCHOSTUIFLAG_NO3DBORDER;としてやれば縁がつかなくなる
MSHTML Hosting
How to handle script errors as a WebBrowser control host
An ATL control for hosting and customization of multiple instances of WebBrowser control for VB
How To Get Protocol Headers in a Pluggable Protocol Handler(プラグ可能なプロトコル ハンドラーでプロトコル ヘッダーを取得する方法)
http://support.microsoft.com/default.aspx?scid=kb;en-us;279497
http://support.microsoft.com/kb/279497/ja 日本語版
http://support.microsoft.com/kb/279497/ja 日本語版
Pluggable Namespace Handlers
Asynchronous Pluggable Protocols(MSDN)
Http Monitor for Webbrowser Control
JavaScript call from C++
WebBrowser コントロール ホストでスクリプト エラーを処理する方法
http://support.microsoft.com/kb/261003/ja
スクリプトエラーの原因を知るため
スクリプトエラーの原因を知るため
Chrome
ラインマーカーの実装の解説
COM
COM(Component Object Model)
COM研究室
IUnknown *pUnk; IWebBrowser2 *pIWebBrowser2; // コンポーネントのインスタンスを作成する。 CreateInstance(&pUnk); // IWebBrowser2インターフェースを取得して使用する。 pUnk->QueryInterface(IID_IWebBrowser2, (void **)&pIWebBrowser2); pIWebBrowser2->Func(); // 使い終わったコンポーネントを開放する。 pUnk->Release();
要するに実体を作ってQueryInterface(IID_IWebBrowser2, &(IWebBrowser2のポインタ))
としてやれば IWebBrowser2 Interface ここにあるメンバ関数を呼び出せる
実体はDonutであれば
class CDonutView : public CComObject<CAxHostWindow> ←実体
としてあるのでDonutView内でQueryInterfaceしてやれば(CDonutViewに関連づいた)IWebBrowser2インターフェースが取れる
としてやれば IWebBrowser2 Interface ここにあるメンバ関数を呼び出せる
実体はDonutであれば
class CDonutView : public CComObject<CAxHostWindow> ←実体
としてあるのでDonutView内でQueryInterfaceしてやれば(CDonutViewに関連づいた)IWebBrowser2インターフェースが取れる
OLEによるDnD
COM (Component Object Model)
Direct2D 入門 - COMの話 1
http://www.tkzdev.net/?p=145
マルチスレッド時のCOMの話とかマーシャリングやプロキシについて
マルチスレッド時のCOMの話とかマーシャリングやプロキシについて
よりよいC++としてのCOM
[Windows][プログラミング]COM日本語記事まとめ
インターフェースマーシャリング
シェル拡張(Shell Extention)
Windows Shell
Debugging with the Shell
http://msdn.microsoft.com/en-us/library/cc144064(VS.85).aspx
シェル拡張をデバッグするときのやり方とか
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
にDesktopProcess (REG_DWORD) = 1を追加して explorer.exeにアタッチするだけでいいっぽい
シェル拡張をデバッグするときのやり方とか
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
にDesktopProcess (REG_DWORD) = 1を追加して explorer.exeにアタッチするだけでいいっぽい
フォルダ内の情報の取得
Shell Drag/Drop Helper オブジェクト
COMからのイベントを捕まえる方法
http://www.s34.co.jp/cpptechdoc/misc/comevent/
http://www.s34.co.jp/cpptechdoc/misc/comevent/
ブラウザからのイベントを取得する
http://tech2assist.web.fc2.com/wabisabi/windows/win005.html
http://tech2assist.web.fc2.com/wabisabi/windows/win005.html