- 1 名前:デフォルトの名無しさん [2007/04/18(水) 01:54:51 ]
- スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-5くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/)の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- 620 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 21:04:09 ]
- エンコード/デコードで
- 621 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 21:39:49 ]
- >>616
実際にはもっと昔から使われていた。 それ以前にはスタンダードと言えるほど広まっているツールが なかったからLHA発祥という誤解が定着してしまっただけだ。
- 622 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 21:57:53 ]
- っYZ1
- 623 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 22:09:52 ]
- LHA は圧縮だけじゃなくて書庫の機能も持っているから、展開が妥当だと
- 624 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 22:37:24 ]
- >>619
そうだったのか。いや俺も実際何を聞きたいのかよくわからないんだがw つまりODBCAPI以外にDBを触れるAPIがあったら知りたかった
- 625 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 22:52:48 ]
- oo4oもADOもDAOも、みな関数と言う形ではAPIを持っていないと思う。
- 626 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 23:02:01 ]
- oo4oなつかしいなw
- 627 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 23:11:18 ]
- >>611
俺が「それはカユイちんこみたいだな」って言ってたって言っておけ あと「俺のチンコが痒いです」とも言っておけ
- 628 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 23:32:08 ]
- >>585
うぐいすパンとか?
- 629 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 23:35:39 ]
- うぐいすパンはうぐいす入ってるだろ
- 630 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 23:51:47 ]
- 東京ばな奈とか?
- 631 名前:デフォルトの名無しさん [2007/05/02(水) 23:58:26 ]
- JETはどうした
- 632 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 00:04:46 ]
- だからコンパイルエラーはWin32APIとはなんも関係ないっつーの
- 633 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 04:08:24 ]
- >605
static つけないと呼び出されるたびに初期化されるんじゃないの まあ動くならいいけど今後のこともあるし
- 634 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 04:19:50 ]
- static 必要っぽい気はするな。
WM_INITDIALOG で new してユーザ領域にそのポインタを置いて それを使うともっといいんじゃないかとは思うけど。 同時に複数起動する必要がないならいいけど。
- 635 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 04:28:26 ]
- WM_PAINT内で
BeginPaint〜EndPaintを二回以上やると 2回目からの描画内容が画面に出ないんですけど どうしてですか?
- 636 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 04:35:46 ]
- EndPaint で更新すべき領域をクリアしてしまうんじゃない?
- 637 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 08:17:23 ]
- フォアグラウンドのIMEの状態を調べてIME_CMODE_ROMANがない場合VK_KANAを有効にしたいのですが。
チェックするタイミングはキーフックとタイマーのどちらが良いでしょうか?
- 638 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 08:46:24 ]
- >>637
その解法は、両方どつぼりそうな予感。
- 639 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 08:49:04 ]
- 入力対象が確定していれば、
そいつのWM_SETFOCUSメッセージ時じゃだめか?
- 640 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 11:48:30 ]
- 状態が変化する前に、処理すればいいのに
- 641 名前:デフォルトの名無しさん [2007/05/03(木) 11:53:57 ]
- WM_PAINTのタイミングで描画しています
ウィンドウを大きくするときは再描画されるのですが小さくするときはされません どちらでも再描画されるようにするにはどうすればよいでしょうか?
- 642 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 12:08:16 ]
- >>641
もう少しくやしく。 もしかしたら、違う要因かも知れないから。
- 643 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 12:09:51 ]
- WS_HREDRAW/WS_VREDRAWとか?
- 644 名前:641 mailto:sage [2007/05/03(木) 12:28:08 ]
- >>642
最大化ボタンを押したりウィンドウの右下をドラッグしてウィンドウを大きくした場合、 それに連動してウィンドウ内の画像が書き換えられます。 そのときにcase WM_PAINT:を通過していることをMESSAGEBOXを表示させて確認しました 最大化から元に戻す場合やウィンドウの右下をドラッグしてウィンドウを小さくした場合、 ウィンドウ内は再描画されません (同様にMESSAGEBOXで確認しました)
- 645 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 12:28:47 ]
- >>643
MSDNやGoogleを検索しましたがなかなか情報がでてきません 関連資料あればお願いします
- 646 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:03:47 ]
- >>645
CS_HREDRAW CS_VREDRAW
- 647 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:08:19 ]
- >>644
WM_PAINT描画部さらせる?
- 648 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:14:26 ]
- >>647
LRESULT WINAPI MsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) { switch( msg ) { case WM_DESTROY: Cleanup(); PostQuitMessage( 0 ); return 0; case WM_PAINT: MessageBox(hWnd, "ok", "check", 0); Render(); ValidateRect( hWnd, NULL ); return 0; } return DefWindowProc( hWnd, msg, wParam, lParam ); }
- 649 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:26:03 ]
- エクスプローラの縮小版表示で独自の画像形式を表示させたいんだけど、
どうやったら出来ますか?
- 650 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:27:39 ]
- >>649
独自の画像形式とは? 自分が考えたオリジナルフォーマット?
- 651 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:32:41 ]
- >>648
ソースあげ
- 652 名前:649 mailto:sage [2007/05/03(木) 13:33:52 ]
- >>650
自分が考えたフォーマットもありますし、RLAなどの標準で表示されないフォーマットもあります。
- 653 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:34:55 ]
- >>649
IExtractImage を実装してレジストリに登録
- 654 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:41:28 ]
- >>649
>>653の補足 msdn.microsoft.com/msdnmag/issues/0600/w2kui2/
- 655 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:52:42 ]
- >>641
WM_SIZE で InvalidateRect すれば?
- 656 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 13:57:26 ]
- >>655
WM_PAINTをWM_SIZEに書き換えたところうまくいきました 相談にのっていただいた皆様本当にありがとうございました
- 657 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:03:31 ]
- WM_SIZE でレンダリングしたのか。
それっていいのか? というか、WM_PAINT は処理しないのか?
- 658 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:03:42 ]
- >>656
乙。 連休を楽しめ。
- 659 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:06:00 ]
- >>657
WM_SIZEでInvalidateRectをコールし、 WM_SIZE時の範囲を更新範囲に追加したんお
- 660 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:09:06 ]
- レンダリング?
- 661 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:14:02 ]
- >>659
おk。 >>660 >>648
- 662 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:18:35 ]
- レスどうも
>>639 入力中の英和混在入力のモード切替に対応したいので WM_SETFOCUSじゃ無理なんです。
- 663 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:44:44 ]
- >>637
>フォアグラウンドのIMEの状態を調べてIME_CMODE_ROMANがない場合 >VK_KANAを有効にしたいのですが。 >チェックするタイミングはキーフックとタイマーのどちらが良いでしょうか? >>662 >入力中の英和混在入力のモード切替に対応したいので >WM_SETFOCUSじゃ無理なんです。 エスパーじゃないんで要点を詳しく。 現状の具体的な問題点と、その解法にIMEをもってきた理由を特に。 (難解が平易に変わるかも)
- 664 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:00:16 ]
- >>661
どこがレンダリング?w
- 665 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:20:42 ]
- つ[辞書]
- 666 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:29:50 ]
- >>664
Render ってのが見えないのだろうか。
- 667 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:31:24 ]
- 【他動-14】 《コ》
〜をレンダリングする、 〔画像{がぞう}などのデータを〕実際{じっさい}に描画{びょうが}する、 〔三次元{さんじげん}のオブジェクトを〕二次元{にじげん}の画像{がぞう}にする ◆データを解釈・計算して視覚的に表示すること。 ・ Different browsers render HTML differently. ブラウザによって HTML のレンダリングは異なります。
- 668 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:37:01 ]
- 話の流れを読まずに、文字の綴りだけをあげつらった揚げ足取りなんだから
そんなに反応することないのに・・ ちょっと前にも、こういう質問とは本来関係ないことで脱線しなかったか?
- 669 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:38:32 ]
- おや、本当だ
Render()見落としてたわ・・・・
- 670 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:40:20 ]
- >>667
広義には与えられたデータを元に視覚表示すること全てレンダリングだけど 広く一般にレンダリングと言ったら3Dモデルのレンダリングのことを指すのが言葉の難しいところだ
- 671 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:44:47 ]
- HTML レンダリングもよく使うと思うけど。
- 672 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:45:57 ]
- >>663
簡単に言えば、 「窓使いの憂鬱」と言うソフトにカナロックON/OFFで キーマップを切り替える機能があるんですけど。 IMEの英和混在入力を使うとずれるんですねこれが。 原因は、IME_CMODE_ROMANとVK_KANAがシンクロしないからなんで、 グローバルフックかけて外部から梃入れしようかなと。
- 673 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 15:53:07 ]
- >>671
表示全てをレンダリングと言うよりは使うとは思うけど それも結局ソッチの道の人がほとんどだしさ まぁ、どうでもいいことだと思うけどw
- 674 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 16:30:38 ]
- アタシのことでけんかしないで!
- 675 名前:649 mailto:sage [2007/05/03(木) 16:31:19 ]
- >>653-654
サンクス これからやってみます
- 676 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 16:37:13 ]
- >>672
開発は終わってるんだな・・・ これソース公開してないかい?
- 677 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 16:42:37 ]
- >>672
sourceforge.net/project/showfiles.php?group_id=5403 ソースはここみたい。 ある程度処理を読んで解析した上で、対処した方がいいかもね。
- 678 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:00:08 ]
- hook.cpp
n.m_isKanaLockToggled = !!(GetKeyState(VK_KANA) & 1); これを HWND hWnd = GetForeGroundWindow(); ImmGetContext(hWnd); ImmGetConversionStatus(hImc, &dwc, &dws) n.m_isKanaLockToggled = (dwc & IME_CMODE_JAPANESE) && (dwc ^ IME_CMODE_ROMAN); ImmReleaseContext(hWnd, hImc); VS2003でないから試せないけど。
- 679 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:07:34 ]
- おーいXOR…
- 680 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:50:06 ]
- n.m_isKanaLockToggled = (dwc & IME_CMODE_JAPANESE) && (dwc & ~IME_CMODE_ROMAN);
- 681 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:54:23 ]
- &~でも^でもどっちでもよくね?
ダメな理由があるなら別だけど
- 682 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 18:27:44 ]
- っ どっちもだめ
- 683 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 18:54:37 ]
- >>681
XORとNOT&ANDが同じ動作とでも思ってるの?
- 684 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 18:55:51 ]
- CPUの中身は全部XORの組み合わせ
- 685 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:16:48 ]
- >>683
もちろんです
- 686 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:19:09 ]
- 00001000 ^ 11111111 = 11110111 TRUE
00001000 ^ 11110111 = 11111111 TRUE
- 687 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:20:14 ]
- >>685
これは すごい ゆとり
- 688 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:23:27 ]
- 10以外の位取りはゆとりで教育課程から消えたけど
ビット演算も学校で教えてたっけ?
- 689 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:29:01 ]
- ビット演算まではなかったと思う。
- 690 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:29:24 ]
- 学校で習ったかどうかなんて関係ない。
- 691 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:32:11 ]
- 工業乙
- 692 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:34:31 ]
- どっちかのbitが立ってることを確認するために
if(hoge & 0x000000C0) みたいな書き方出来ると思うのですが 両方のbitが立ってることを確認したければ if(hoge & 0x000000C0 == 0x000000C0) って書くしか方法ないですか?
- 693 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:42:07 ]
- hoge & 0x000000C0 & 0x000000C0がある
- 694 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:43:01 ]
- if((hoge & 0x000000C0) & 0x000000C0)
- 695 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:43:38 ]
- 全部不正解
- 696 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:44:36 ]
- 00001000 ^ 11111111 = 11110111 TRUE
00001000 ^ 11110111 = 11111111 TRUE を 00001000 &^ 11111111 = 00001000 &^ 11110111 = にするとどうなるの?
- 697 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:46:55 ]
- >>690
ゆとり教育なんか学力の低下に関係ないと言いたいわけですね。
- 698 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:50:50 ]
- マスクすれ
- 699 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:52:41 ]
- プログラムの勉強の前に情報技術基礎から勉強する事を勧めたいね
- 700 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:54:48 ]
- >>691
高専の専攻卒で悪かったな
- 701 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:54:54 ]
- こうするんだよ
if(!((hoge & 0x000000C0) ^ 0x000000C0))
- 702 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:58:01 ]
- if((hoge & 0x00000080) && (hoge & 0x00000040))
- 703 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 19:59:30 ]
- >>680
これだろ n.m_isKanaLockToggled = (dwc & IME_CMODE_JAPANESE) && ~(dwc & IME_CMODE_ROMAN);
- 704 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:00:44 ]
- 何で皆向きになってるんだwwwwwwwwwww血だなwwwwwwwwwそんな俺もwwwwwwwwwwww
- 705 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:01:03 ]
- ↑
~→!
- 706 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:01:52 ]
- >>678-704
バカが!!! if(1) これだろ
- 707 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:02:39 ]
- >>685
久々に開いた口が塞がらないぜ
- 708 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:02:54 ]
- 定数が複数あるのが美しくないな。
if(~(hoge | ~0x000000C0)) こうだろ。
- 709 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:03:30 ]
- 【高速化】ビット演算 0x02
pc11.2ch.net/test/read.cgi/tech/1158367586/
- 710 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:04:35 ]
- >>708
お前の美しいという言葉に全米が泣いた だがそのコードはとても美しいとは思わない これが美しいコードの見本だ if(0)
- 711 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:04:47 ]
- ここは Win32API スレだっつーの!
- 712 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:07:41 ]
- そして皆我にかえるわけだが
チェックボタンやラジオボタンでBS_ICONなどでアイコンにする事はできるんですが、 そのアイコンにマウスをあわせたら文字が浮き出るようにするやり方がわからないです。
- 713 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:09:12 ]
- >>708
間違ってない?
- 714 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:10:58 ]
- >>712
マウスメッセージ拾って、コモンコントロールのToolTipでガンバレ
- 715 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:11:03 ]
- >>708
おまえ勘違いしてるだろ
- 716 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:11:53 ]
- >>714
あー、やっぱマウスメッセージ拾うしかないのか サンクス
- 717 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:13:44 ]
- >>693 >>694 >>708
久々に馬鹿三匹発見
- 718 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:14:03 ]
- 連休的優しさ乙。
- 719 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 20:14:52 ]
- 【高速化】ビット演算 0x02
pc11.2ch.net/test/read.cgi/tech/1158367586/
- 720 名前:708 mailto:sage [2007/05/03(木) 20:24:11 ]
- ちょっと間違えただけじゃないか。
指摘ついでに訂正しておいてくれよw if(!~(hoge | ~0x000000C0))
|

|