1 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:39:56 ] スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。 やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-5 くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn2.microsoft.com/library/ )の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
680 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 21:22:53 ] GetIFTable?
681 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 21:44:19 ] >>680 そんな感じです。ただ今回は変更の検知をしたいのでこれは使えません MSDNみたらGetIFTableの近くにNotifyAddrChangeというのがあったのでこれを調べて見ます ありがとう
682 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 22:02:28 ] IPv6のネットワークポートで接続されている機器がある時、そのアドレスがLinkLocalであった場合に 付加するスコープIDの取得の仕方を教えてもらえないでしょうか。 IP Helper関数のGetAdaptersAddresses()を使って取得できる値のいずれからしいということは わかったのですが、列挙される構造体のうち、どれが目的の値か特定できません。
683 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 22:56:11 ] hWndとhDCとDIBの関係がいまいちよくわからないんだけど、わかりやすく説明されてるサイトとかない?
684 名前:デフォルトの名無しさん mailto:sage [2007/11/28(水) 23:50:05 ] ウィンドウにWS_EX_LAYEREDを設定し、32Bitビットマップを読み込み下の様にUpdateLayeredWindowを実行しましたが、 ウィンドウが消えてしまい、うまくビットマップを適用させることができません。 どこがおかしいか、何方か教えて頂けないでしょうか。 ReadFile(hFile , &bmpFileHeader , sizeof (BITMAPFILEHEADER) , &dwBytes , NULL); bmpInfo = (BITMAPINFO *) malloc (bmpFileHeader.bfOffBits - dwBytes); ReadFile(hFile , bmpInfo , bmpFileHeader.bfOffBits - dwBytes , &dwBytes , NULL); bPixelBits = (BYTE *) malloc (bmpFileHeader.bfSize - bmpFileHeader.bfOffBits); hdc = GetDC(hWnd); hBitmap = CreateDIBitmap(hdc , &bmpInfo->bmiHeader ,CBM_INIT , bPixelBits , bmpInfo , DIB_RGB_COLORS); hBuffer = CreateCompatibleDC(hdc); SelectObject(hBuffer , hBitmap); GetObject(hBitmap , sizeof (BITMAP) , &bitmap); wndPos.x = 100; wndPos.y = 100; surPos.x = surPos.y = 0; wndSize.cx = 300; wndSize.cy = 300; bf.BlendOp = AC_SRC_OVER; bf.BlendFlags = 0; bf.AlphaFormat = AC_SRC_ALPHA; bf.SourceConstantAlpha = 255; UpdateLayeredWindow( hWnd, GetDC( 0 ), &wndPos,&wndSize, hBuffer, &surPos, 0, &bf, ULW_ALPHA); 長文ですみません
685 名前:デフォルトの名無しさん [2007/11/29(木) 00:01:28 ] freeしたポインタをfreeしたらどうなりますか?多分よくないですよね? freeされたかどうかを調べる関数とかってないですか?
686 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:10:35 ] >>683 HWNDはウィンドウ 位置を動かしたりサイズを変えたり、タイトルバーを設定したりできる HDCは画家 ペンや絵の具を渡せば、三角形とか四角形とか円とかを描いてくれる DIBはメモリ内の.bmpファイル
687 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:11:51 ] >>685 よくないです 調べる方法はありません 自分で気をつけましょう
688 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:18:25 ] >>684 ビットマップのイメージ本体を読み込んでないように見える bPixelBits は malloc しただけでそのままだし hBitmap も Create しただけで何も描き込んでないし
689 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:19:09 ] >>687 デバッグビルドならチェック入ると思うが
690 名前:デフォルトの名無しさん [2007/11/29(木) 00:30:16 ] >>685 当たり前だけど、対象のポインタ変数にメモリが割り当てられてるかどうかは ポインタがNULL番地をさして無ければいいわけだから 俺はいつも if(lpPoint != NULL) free(lpPoint) ってやってるが、もしかしたら正しくはないのかも知れん >>686 ついでにCreateDIBSection関数が何者なのか、解説ヨロ 何度説明されても分からんけん
691 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:32:47 ] >>690 if(lpPoint != NULL) free(lpPoint) これは無駄だろ if(lpPoint != NULL) delete[] lpPoint の場合なら意味あるけど
692 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:38:22 ] >>690 CreateDIBSection は指定したサイズのビットマップをメモリ内に作る。 GDI 関数で扱えるように HBITMAP ハンドルが返されるし、 その RGB 値を直接触れるように、ビットマップデータへのポインタも返される。
693 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:38:56 ] >>691 どっちも無駄 NULL を free とか delete とか delete[] に食わせるのは合法で、単に無視される
694 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:50:08 ] >>693 deleteも無駄だったのか・・・知らなかった
695 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 00:54:26 ] deleteしたあとNULL入れとくのが正解
696 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 01:30:03 ] if(lpPoint != NULL) {free(lpPoint); lpPoint = NULL;} こうするのが正解
697 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 01:40:16 ] >>696 不正解
698 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 01:49:15 ] NULLだったら無視されるんだから free(lpPoint); lpPoint = NULL; だけでいいじゃん…
699 名前:デフォルトの名無しさん [2007/11/29(木) 02:02:02 ] K&Rにfreeで解放されたメモリ領域にfreeをかけるのは動作が規定されてないからやめとけって書いてあった希ガスよ 正しくは>>696 のようにすべきじゃね、と思う >>692 そういう説明は何百回も読んでるんだけど、さっぱりわかんねーよ >指定したサイズのビットマップ ← これはデバイス独立ビットマップなのか、デバイス依存ビットマップなのか・・・ GDI関数で扱えるDDB(デバイス依存とかいう香具師)は、ビットマップのピクセルビットへはアクセスできない HBITMAP型は通常デバイス依存ビットマップを表現するのに使われるはずだよ なのに、ピクセルビットへのポインタもちゃんと返してくる 現にGetObjectで調べてみたら、pBitsにピクセルビットへのポインタが格納されてる 通常HBITMAP型のDDBを引数に、GetObjectやってもpBitsはNULLだよね
700 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 02:30:38 ] >>699 free(lpPoint); lpPoint = NULL; free(lpPoint); と、 free(lpPoint); free(lpPoint); は違う。 おまいが言っているのは後者。
701 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 02:48:31 ] >>699 DDBのビットデータに直接アクセスできるわけない 大抵VRAM上にあるだろうし、DirectXじゃないから直接アクセスできてもあまり意味が無い >HBITMAP型は通常デバイス依存ビットマップを表現するのに使われるはずだよ お前の「通常」の基準がよく分からん。DDBで使うことの方が多いと思うが。 DIBもDDBもHBITMAPなのは、ある程度両者を意識しなくて済むようにそういう設計にしてるのか DIBセクションが標準APIとして加わったのがwin95以降だからなのか他に理由があるのかは知らん
702 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 03:31:48 ] >>688 レス、有難うございます >>ビットマップのイメージ本体を読み込んでいない すみませんm(__)m 初歩的なミスに気付いていませんでした ReadFileをもう一つ追加して見ます
703 名前:デフォルトの名無しさん [2007/11/29(木) 06:31:35 ] >>701 >HBITMAP型は通常デバイス依存ビットマップを表現するのに使われるはずだよ お前の「通常」の基準がよく分からん。DDBで使うことの方が多いと思うが。 デバイス依存ビットマップ=DDB
704 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 08:12:20 ] >>697 速度重視なら正解だろ
705 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 08:19:13 ] >>704 一概には言えない lpPointがNULLの可能性が高い場合はいいが逆だと遅くなる
706 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 08:26:40 ] >>705 そこまで行くとそもそも論になるからもう止めようぜ
707 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 08:27:10 ] >>699 DIBセクションは、DIBの形でデータを保持していて、 HBITMAP経由で読み書きするときには、 その都度DDBとの間で変換が行われる。 ってプログラミングWindowsに書いてあった。
708 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 10:05:52 ] 今時if文判定1個にこだわるプログラミングしてるやつがいることに驚きだわ
709 名前:683 mailto:sage [2007/11/29(木) 10:22:06 ] >>686 ではなぜBitBltではDIBではなくhDCを渡すのでしょうか。 あと、DIB間での画像拡大コピーってできますか?
710 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 10:25:59 ] >>709 DIBとDDBの違いわかってる?
711 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 12:24:28 ] >>710 >>709 が解ってないのはDIBとDDBの違いではなく、DCにビットマップを選択させる概念ではないかと
712 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 12:26:35 ] DIBとDDBの違いがわかればその疑問も解決すると思うのだが
713 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 12:43:16 ] >>709 >なぜBitBltではDIBではなくhDCを渡すのでしょうか。 BitBltはDIB用じゃないからさ DIBを直接渡すAPIはSetDIBitsToDeviceやStretchDIBitsがあるからそっちを使う >DIB間での画像拡大コピーってできますか? ポインタ駆使して直接ビットデータを操作しちゃえばなんだって出来る
714 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 12:49:00 ] >>709 GDI+でも使ってろ
715 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 14:03:10 ] >>700 本来は void correct_free(void **p){ old_free(*p); *p = NULL; } という設計にすべきだったんだよな そうなってはじめて安心して correct_free(&lpPoint); correct_free(&lpPoint); と書ける
716 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 14:06:23 ] その安心は半分まやかしだ ポインタ値はあちこちにコピーされうる
717 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 14:13:31 ] 生成者と参照者を明確に区別して freeは生成者だけが行うようにする 参照者は使ったらそのまま放置 っていう造りにしたら安定する?
718 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 14:14:26 ] そんなあなたにshared_ptr
719 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 14:36:20 ] >>715 correct_free(NULL); どこが安心できるんだ?
720 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 15:14:31 ] 私が知っていること(onXP) ビットマップにはDDB,DIB,DIBSectionがある HDCが好むのはHBITMAPつまりDDBとDIBSection DDBはシステム領域に作られ、総量の上限がある DIBSectionはプロセス毎の2GBの中に作られる -->長時間保持する大きなビットマップ向き、メモリマップを使えば巨大なものも可 DIBSectionを選択したままCreateCompatibleBitmapを呼ぶとDIBSectionが作られるらしい DIBSectionはwin16のDIB.DRV,WinGの系統らしい DDBとDIBSection win95の頃は速度大差なし
721 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 15:24:23 ] >>719 ごめんうっかりしてた void correct_free(void **p){ if(*p) old_free(*p); *p = NULL; } correct_free(&lpPoint); correct_free(&lpPoint);
722 名前:デフォルトの名無しさん [2007/11/29(木) 15:29:19 ] 頑張ってそんな変なもの使って何かいいことある? free には失敗しないかもしれないけど、 何時誰が free するかを管理しないコーディングスタイルじゃ 内容が必要なときに既に free されてる恐れがあるじゃん。 ちゃんと誰がいつまで内容を参照したいかが分かってれば、 それの終わりのとこで一回 free すればいいわけだし。
723 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 15:57:27 ] >>708 アセンブリでMMXやSSEで使うこのご時世に お前が低能だって事は分かった
724 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:26:48 ] >>721 if(*p) { old_free(*p); *p = NULL; } こうだろ >>722 バカは黙ってろ 管理するに決まってるだろ 俺はマクロでNULL代入してるぞ
725 名前:724 mailto:sage [2007/11/29(木) 16:28:36 ] 訂正 if(p) { old_free(*p); *p = NULL; }
726 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:30:04 ] ダイレクト ボブサップ
727 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:32:44 ] >>722 今時は開放されたメモリの参照すれば例外飛んでくれるから NULL入れる必要もないといえば無い。 それに、確保や開放を頻繁に行うなら、意識して717のいうように作るべきだと思う。 しかし、世の中の大多数の人はそのことを知らないし、やろうともしない。 結局バグの温床になっているが、なんとなく動いてしまっていて気がつかない人も多い。 特にリリース版で動くからいいやとかいうタイプの人もいるんで・・・ あと、自分の経験上、他人が書いたコードで確保と開放が入り乱れてる場合は 開放したところにNULLいれるように書き直すと、バグが良く見つかる。 まあ、こんな小手先の技使わないといけない俺の環境が悪いんだろうな。 最新のコンパイラとか開発環境、動作環境でやり、自分がコードのすべてを把握し 覚えている限りは無用のテクニックかもしれない。 >>723 最適化スレだったらその発言は甘んじて受け入れよう だが、ここはAPIを質問するところだ こんなところで、パイプラインの破壊気にしてもしょうがないだろ?
728 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:34:44 ] >>727 C++ならいいんだけどな
729 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:37:05 ] あああ、free論議は収拾付かなくなるので終了。 終了終了
730 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:38:34 ] >開放したところにNULLいれるように書き直すと、バグが良く見つかる。 嘘だろ
731 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:47:32 ] >>727 APIスレだろうが最適化スレだろうが関係ない 何万回、何百万回も使うならif文一つだろうが気にするべき ジャンプ1回で済ますかpush、call、popを使うかで大違い
732 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:48:24 ] >>728 少なからず理解者がいてくれたようでうれしい >>730 嘘だと思える君の環境がすごくうらやましい 世の中には信じられないことをする人が多いのです。 また、C++に対応してるんだかしてないんだかわからない しょぼい環境も多いのです。
733 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:52:09 ] >>732 開放したところにNULLいれてバグるなら NULLいれなくてもバグるだろ
734 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 16:53:41 ] >>732 お前が低能だって事は分かった
735 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:02:35 ] >>727 そんなことで例外発生させてどうすんだよ NULLなら処理を跳ばしてくれれば良いだけなのに
736 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:05:47 ] >>733 NULLいれなくてもバグってるんだけどそれは発見されない、 NULLいれたらそのバグが発見されやすい、ってことだろ
737 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:08:32 ] >>736 元々バグってんのか NULL代入関係ないじゃん
738 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:10:49 ] ここはAPIスレだったよね? 特定の言語の話はスレ違い
739 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:11:40 ] ガベコレのある言語を使いましょう でこの話題は終了 ↓はい次
740 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:14:53 ] 空気読まずに ポインタのアドレス使ったリスト管理なんかだと freeのあとNULL入れるのは必要になってくるけどな
741 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:16:09 ] haskellお勧め
742 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:21:43 ] 質問なのですが、 SetLayeredWindowAttributesを使わずにウインドウのある色の部分だけ透明にすることはできるのでしょうか?
743 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:22:31 ] SetWindowRgn
744 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 17:31:33 ] >>727 > 開放したところにNULLいれるように書き直すと、バグが良く見つかる。 ワロタ
745 名前:デフォルトの名無しさん [2007/11/29(木) 18:14:14 ] 結局 if( p != NULL ) { free(p); p = NULL; } でFA?
746 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 18:15:12 ] どうでもいいです
747 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:04:14 ] >>745 >>696-698
748 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:11:42 ] ぬるぽ
749 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:12:49 ] if(_x_){ _x_->Release(); _x_ = NULL; }
750 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:21:24 ] スマートポインタ使えよ糞共
751 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:25:54 ] templateって方の種類分容量増えるんだろ define でいいじゃん
752 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:27:28 ] >>751
753 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:32:49 ] >>751 確かに環境によってはtemplate禁止にせざるを得ないこともある。 が、さすがにtemplateの機能をdefineだけじゃ無理だと思う。
754 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:44:57 ] 本当の初心者質問ですみません。 ウインドウを作成するところで詰まってしまいました。 ビルドは成功するのですが、実行するとウインドウが表示されず、CPUが100%になります。 どこがおかしいでしょうか? 環境 WindowsXPsp2 Visual Studio2005 ソース kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5360.txt
755 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:48:39 ] ウィンドウクラスの登録が抜けている
756 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:55:50 ] >>854 PeekMessageなんか使うから100%になるんだ、GetMessage使え。 まずは猫でも分かる〜を読むべし。
757 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 19:58:51 ] >>752
758 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 20:02:59 ] >>717 >>727 COMのプログラミングすると 生成者が放置で 参照者が片付ける みたいな感覚に染まってしまう
759 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 20:07:30 ] >>725 それ意味なくね? 訂正が間違ってる
760 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 20:59:53 ] InvalidateRectで無効化された領域を取得するにはどうすればよいのでしょうか? 質問の背景としては、スクロールバーを動かしたとき、画面のビットマップをBitBltで 移動させることでスクロールされるようにしています。ところが、転送元の領域が 無効化された状態であった時、その領域が転送後にも再描画されず、不正な状態のままに なってしまっています。そこで、転送前に無効化されていた領域を転送後の座標系で 無効化しなおすことでこの問題を解決したいと思っているのですが。 よろしくお願いします。
761 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 21:03:32 ] >>751 組み込みスレならともかく、Win32 APIスレで言う話か? メモリ数百MiB-数GiB、CPU数百MHz-数GHzな環境で禁止にする必要などない。
762 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 21:07:40 ] >>760 GetClipBox PAINTSTRUCT::rcPaint
763 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 21:08:29 ] GetUpdateRect だけど。 ふつうはScrollWindowExが良きに計らってくれるんじゃないのかなー。
764 名前:760 mailto:sage [2007/11/29(木) 21:16:46 ] >>763 おわっと、こんな関数があるとは知りませんでした。 まだ試してないですが、これを使えば万事うまくいきそうですね。 どうもありがとうございます。 >>762 どうもありがとうございます。
765 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 22:32:51 ] >>759 どこが?
766 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:00:00 ] もう引っ張るなよ
767 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:03:31 ] 別にfreeの話しを引っ張るつもりはない しかし突っ込まずにはいられないだろ
768 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:04:35 ] 「あえていうなら、Win32APIスレでfreeの話をする辺りが。」 ってことで納得してくれよ(w
769 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:05:44 ] だからfreeは関係ないと
770 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:07:43 ] >>759 = >>766
771 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:10:46 ] freeは本質とはあまり関係ないんだからとりあえず黙っとこうぜ。 荒らしたいというなら別だが。
772 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:13:29 ] >>771 >>769 コードの話しだろ
773 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:15:15 ] 馬鹿しか居ないな
774 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:18:55 ] 以上をまとめると、HeapDestroy万歳ってことですね。
775 名前:デフォルトの名無しさん mailto:sage [2007/11/29(木) 23:25:40 ] >>772 >>725 はあってるよ どの道すれ違い消えろ
776 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 00:12:10 ] 昨日はサウンド関係で荒れて今日はfreeで荒れるのか 明日は何の話題で荒れるのかな〜?
777 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 00:18:14 ] 1:int *p;とint* p; 2:sizeof( char ) 3:インデント 好きなのを選べ
778 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 00:24:36 ] >>777 1 と 3 はコード整形ツールで抹殺されるから 2 しかない!
779 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 00:35:00 ] ウィンドウのシステムバーの青い部分をドラッグしたときにくるメッセージって何ですか? WM_ENTER/EXITMENULOOPは左上のボタンで出るメニューのメッセージっぽいのですが…
780 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 00:47:13 ] WM_SYSCOMMAND WM_WINDOWPOSCHANGING WM_WINDOWPOSCHANGED WM_MOVING WM_MOVE