2013年06月(20) 2013年05月(25) 2013年04月(25) 2013年03月(29) 2013年02月(26) 2013年01月(30) 2012年12月(30) 2012年11月(25) 2012年10月(16) 2012年09月(16) 2012年08月(37) 2012年07月(83) 2012年06月(58) 2012年05月(32) 2012年04月(8)
2013年06月(20) 2013年05月(25) 2013年04月(25) 2013年03月(29) 2013年02月(26) 2013年01月(30) 2012年12月(30) 2012年11月(25) 2012年10月(16) 2012年09月(16) 2012年08月(37) 2012年07月(83) 2012年06月(58) 2012年05月(32) 2012年04月(8)
Windowsのプログラミングの技術ソースと言えばMSDNですが、このMSDNに掲載されているサンプルコードがトホホなレベルなのは、知ってる人はみんな知っている事実だったりします。 例えば"Using Waitable Timers with an Asynchronous Procedure Call"と題されたこのサンプル。日本語版はこちらにあります。 LARGE_INTEGERを使っているこの部分 __int64 qwDueTime; LARGE_INTEGER liDueTime; //中略 liDueTime.LowPart = (DWORD) ( qwDueTime & 0xFFFFFFFF ); liDueTime.HighPart = (LONG) ( qwDueTime >> 32 ); 何がしたいのかは明白なので、MSDNのサンプルコードとしてはマシな部類ですが。私だっ
以前書いた「(ほぼ)最小のWindows版"Hello, World"」をちょこっと修正して「(ほぼ)最小のWindows版エディター(もどき)」をつくってみました。 「(ほぼ)最小のWindows版"Hello, World"」のウィンドウに何か文字を入力しようとしても"Hello, World"が表示されたまま編集できません。 これを修正可能にするにはメッセージループの中でDispatchMessageを呼ぶ前にTranslateMessageというAPIを呼ぶだけです。 こうすると英数字はもちろん日本語も入力可能になります。 MSG msg; while ( ::GetMessage( &msg, NULL, 0, 0 ) > 0 ) { ::TranslateMessage( &msg ); ::DispatchMessage( &msg ); } もっとも、少しいじっていればすぐ
2013年06月(20) 2013年05月(25) 2013年04月(25) 2013年03月(29) 2013年02月(26) 2013年01月(30) 2012年12月(30) 2012年11月(25) 2012年10月(16) 2012年09月(16) 2012年08月(37) 2012年07月(83) 2012年06月(58) 2012年05月(32) 2012年04月(8) Visual C++ 2010 Express Editionをいじっていて気が付いたんですが、VC2010はnullptrをサポートしているんですね。nullptrは文字通り、nullポインターのことです。 ふつうCとかC++で「nullポインター」というと"NULL"のことで、実際VCでも以下のように定義されています。 #ifndef NULL #ifdef __cplusplus #define NUL
2013年06月(20) 2013年05月(25) 2013年04月(25) 2013年03月(29) 2013年02月(26) 2013年01月(30) 2012年12月(30) 2012年11月(25) 2012年10月(16) 2012年09月(16) 2012年08月(37) 2012年07月(83) 2012年06月(58) 2012年05月(32) 2012年04月(8) 普通のWindows版"Hello, World"を書いてみました。 前回のバージョンとの違いは、 WM_PAINTメッセージのハンドル ウィンドウクラスの登録 の2点です。 WM_PAINTメッセージのハンドル まずBeginPaint APIを使ってデバイスコンテキストを取得します。デバイスコンテキストについては長くなるのでここでは書きません。とりあえず「そういうもの」だと思ってください。 で、取得したデ
2013年06月(20) 2013年05月(25) 2013年04月(25) 2013年03月(29) 2013年02月(26) 2013年01月(30) 2012年12月(30) 2012年11月(25) 2012年10月(16) 2012年09月(16) 2012年08月(37) 2012年07月(83) 2012年06月(58) 2012年05月(32) 2012年04月(8) 前回の続き。 ウィンドウにメニューを追加する手順は リソースID(リソース識別子)を定義するヘッダーファイルを作成する。 リソース スクリプトを作成する。 WNDCLASSEX構造体のlpszMenuNameを設定する。 WM_COMMANDメッセージのイベントハンドラを追加する 「ファイル」と「ヘルプ」からなるメニューを作成してみたいと思います。「ファイル」の下にメニュー項目「終了」、「ヘルプ」の下に「バー
2013年06月(20) 2013年05月(25) 2013年04月(25) 2013年03月(29) 2013年02月(26) 2013年01月(30) 2012年12月(30) 2012年11月(25) 2012年10月(16) 2012年09月(16) 2012年08月(37) 2012年07月(83) 2012年06月(58) 2012年05月(32) 2012年04月(8)
久方ぶりのプログラミングネタ。ブログのジャンルがIT/インターネットじゃなくなりつつあったので。 下記のコードを任意のファイルに保存して、コマンドプロンプトで以下のコマンドを実行します。 cscript //x 保存したファイル名 検索するキーワード 例えば、デスクトップ上にtweet.jsというファイル名で保存して、@FooBuzz4Kを検索するには、 cscript //x C:\Users\FooBuzz4K\Desktop\tweet.js @FooBuzz4K Excelが起動し、ツイートをワークシートに出力していきます。 解説その他は、明日以降へ(たぶん)つづく。 // 文字列にtrimメソッドを追加 String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ""); } function cr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く