1 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 15:23:00 ] スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。 やさしいお兄さんやお姉さんたちが答えてくれるかも。 「知らないならレスしないで下さい。ウザイだけです。 」なんて言わないでねっ! 過去スレ、関連リンクは>>2-10 くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版( msdn.microsoft.com/en-us/library/ )の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで - Win32API質問箱 wiki wiki.livedoor.jp/program1/d/FrontPage Win32API質問箱 Build85 pc12.2ch.net/test/read.cgi/tech/1262430441/
72 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 19:46:50 ] >>65 選択中のならGetWindowText()でできた希ガス リストボックスのほうならCB_GETLBTEXTとか
73 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 22:11:54 ] >>69 >>72 とんくす。
74 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 10:01:07 ] AnimateWindowでウインドウのフェードアウトをする方法を検索すると、 AW_BLEND | AW_HIDE としているのが見つかるのですが msdnには、AW_BLENDとAW_HIDEを併用してはいけないと書いてあります。 どうやればいいのか教えてください。
75 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 10:52:41 ] 英語版のMSDNにはそんな事書いてないけど、日本語版が間違ってるんじゃ?
76 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 10:55:07 ] 日本語版は間違いだらけ 戻り値 True/False 間違えてて正反対の意味なんてことも
77 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 11:04:31 ] >>74 msdn.microsoft.com/ja-jp/library/ms997507.aspx
78 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 11:16:43 ] msdnに間違いがあるとは考えませんでした ありがとうございました
79 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 11:29:18 ] MSDNだけじゃなくて ●●入門とかの言語とかフレームワークとかの書籍も結構致命的な間違いがある
80 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 15:40:49 ] ツールバーとステータスバー 両方画面の下に共存させるにはどうしたらいい?
81 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 15:51:32 ] >>76 APIは一度公開したらインターフェースを返ることは 出来ないからな。使われない余計なパラメータがあ ったりするのはそういう理由だし。 時には内容はほぼ同じだがインターフェースだけ 変えたAPIとかあるらしいし。古いAPIの更新を やめて新しいAPIとして管理していくというやり方 を取らざるを得ないケースも多いだろうし 結局数は増える一方。墓地の埋葬者名簿みたいな もので正確性を永続的に保証できるものじゃない だろ
82 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 15:55:56 ] 日本語ページが正しくないことの言い訳としては筋違い。
83 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 16:20:50 ] >>81 その言い訳は「かつては正しかった」という根拠を出してからにしろ。
84 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 17:03:31 ] >>81 >墓地の埋葬者名簿 いいたとえだなw確かにそうだ 関数の戻り値の一貫性とか破綻してるから困ったもんだな・・・
85 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 17:54:48 ] MSの技術者でさえこんな設計するんだから 一般人のコードが汚くても誰も責めることはできない
86 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 17:58:55 ] >>85 こういう奴と一緒に仕事はしたくないな。
87 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 19:46:47 ] いっしょにコードを 書きませんか? ∧_∧ [windows.h] (・ω・)丿 ッパ . ノ/ / ノ ̄ゝ
88 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 21:28:50 ] msdn.microsoft.com/en-us/library/ms633494%28VS.85%29.aspx >Return Value > Not used. msdn.microsoft.com/ja-jp/library/cc410802.aspx >戻り値. >関数が成功すると、0 以外の値が返ります。 >関数が失敗すると、0 が返ります。拡張エラー情報を取得するには、 関数を使います。 戻り値の説明が勝手に増えててしかも間違っている 翻訳ミスどころかゴミ埋め込んでどうするw
89 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 21:32:45 ] MSに言えよ
90 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 21:35:19 ] Win関連の訳本はASCII時代がよかったな、1000ページ本とかバンバンだしやがって・・・
91 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 21:36:52 ] 肘で押えながら検証コード打ったりな
92 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 22:08:35 ] >>88 そもそも、何でNot usedなのにBOOL返すようになってるんだ?
93 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 22:11:51 ] >>92 元々 BOOL で使用されていたが ドキュメントが糞で誰も使わなくなったから Not used に書き直された
94 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 22:19:15 ] VC++でヘッダーコントロールを扱っていますが、 HDITEM hdi; SendMessage(hwnd,HDM_GETITEM,0,(LPARAM)&hdi); sprintf(str1,"%d",hdi.cxy) でヘッダーアイテムの幅が取得できるはずなのですが、上手くいきません 参考書はVC++逆引き大辞典です どうしたらいいでしょうか?
95 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 22:23:29 ] 一応、FALSEを返す状況もあるんだけどな。
96 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 22:44:42 ] HttpQueryInfoでヘッダーの内容を全部文字で見たい場合に HTTP_QUERY_RAW_HEADERS_CRLFを指定してるのですが どうも中に書き込まれた情報は2バイトコードになっているようです この辺の文字コードを切り替えるにはどうすればいいのでしょうか?
97 名前:96 mailto:sage [2010/02/11(木) 23:43:54 ] 自己解決しました 参考にしたソースがwchar_tを前提にしてない古い物だったのが原因でした
98 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 01:06:37 ] Windows 7 Home Premium 64bit版のPCで Win32 APIを使ってアプリケーション製作できる?
99 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 01:20:48 ] できる
100 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 01:26:03 ] >>99 サンクス!助かった
101 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 01:28:11 ] Wininet関連のプログラム書いてるんですが 勉強もかねてHTTPの要求ヘッダの中身がどうなってるかみたいのですが どうやれば見れますかね?
102 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 01:31:27 ] このスレで聞くってことは、パケットを見るプログラムを作りたいって話か?
103 名前:デフォルトの名無しさん [2010/02/12(金) 01:33:38 ] >>102 いいえ そういうのじゃなくて2chの専ブラの通信部分ですね www.monazilla.org/index.php?e=198 デバックもかねて上記のページに書かれてるようなヘッダーになってるかだけみれればいいんですが
104 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 01:35:08 ] HttpQueryInfoで受信情報のヘッダーは見れるので 送信側も何か方法があるのかなあと思いまして
105 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 02:00:54 ] 自分で鯖を立てて送られてくる情報をみるかWireSharkのようなモニターソフトで見るのが早いですかね・・・?
106 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 02:02:20 ] 実際のデータがどうなってるかって事だろ? パケットを見るプログラムじゃないか
107 名前:デフォルトの名無しさん [2010/02/12(金) 02:06:11 ] >>106 いや・・・そういう風に言われても勉強初めてすぐなのでよくわからないです InternetOpen InternetConnect HttpOpenRequest HttpSendRequest ←この段階で送るであろうデータさえ見れればよかったのですが
108 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 02:14:30 ] しつこい!
109 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 02:14:57 ] >>105 proxy + log
110 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 02:17:25 ] チェックの入っているラジオボタンのウィンドウハンドルを得るにはどうすればよいのでしょうか。 SendMessageで総当たりをすればどれにチェックが入っているのか分かりますがもっと良い方法はありませんか? ラジオボタンがチェックされた時に生じる処理の中でそのハンドルを記憶させるようにしてみたのですが、 グループが複数あった場合にそれがどのグループのボタンなのか判断させる方法がわかりませんでした。 Borland C++ 5.5.1 for Win32を使っています。
111 名前:110 mailto:sage [2010/02/12(金) 02:20:56 ] すみません何か勘違いしてました。 自己解決しました。
112 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 04:09:59 ] 見た目を分かりやすくしようとラジオボタンをグループボックスで囲んだところ ラジオボタンをクリックしたときにWM_COMMANDが発生しなくなってしまいました。 どうすれば再びそれが発生するようになりますか?
113 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 06:02:24 ] すみません自分なりに色々調べてみたんですが解決しなかったので質問します。 ツリービューコントロールに関してなんですが、.NET には TreeNode.Level というノードの深さを取得するプロパティがあるのですが、 これに相当するようなノードの深さを取得できるような関数が標準APIにもあるのでしょうか? それとも自分で組まないといけないのでしょうか? ttp://msdn.microsoft.com/ja-jp/library/system.windows.forms.treenode.level(VS.80).aspx
114 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 06:06:17 ] C++ってあるけど上の方に メモ : このプロパティは、.NET Framework version 2.0 で新しく追加されたものです。 ってあるからC++/CLIの話かね・・・ というかWTLやMFCって.netと比べるとかなり見劣りするからなあ .net環境で作ってていきなりネイティブC++とかいくと部品の陳腐さに泣きそうになる
115 名前:113 mailto:sage [2010/02/12(金) 06:27:51 ] >>114 すみません説明不足でした。PlatformSDKのことです。 第115章 ツリービューにメニューをつける ttp://www.kumei.ne.jp/c_lang/sdk2/sdk_115.htm ↑このサイトを参考に組んでいたんですが、ツリービューの項目の深さを取得しようと思い、 調べていたところにちょうどそのページを見つけたので質問しました。
116 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 08:02:58 ] 直接は無さそうね 作るにはTVM_GETNEXTITEMかな
117 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:40:02 ] >>114 修羅の国では外部コンポーネント、サービスの利用方法や足りない部品は全部自力調達ですよ( ^ω^) 先輩・・・.NETしたいです
118 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:43:45 ] いいや駄目だね お前は一生修羅の国から出さん
119 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:44:58 ] でもどっとねっつはリバースしやすいからなあ
120 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:53:39 ] C++のお陰でソフトウェアの進歩は10年遅れたわな
121 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:06:37 ] >>120 いや C++ が糞なおかげで Rupy や Python が生まれたと思う C++ の出来が良かったらきっと そいつらは生まれていなかった
122 名前:デフォルトの名無しさん [2010/02/12(金) 10:09:51 ] 画面の解像度を取得する方法を教えてくれ
123 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:11:20 ] げっとしすてむめとりくす
124 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:11:53 ] www.google.com/search?hl=ja&q=Windows+API+ 画面の解像度
125 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:13:18 ] pc12.2ch.net/test/read.cgi/tech/1264745386/
126 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 10:15:47 ] >>125 今時のライブラリでデフォルトUTFじゃないとか死ね
127 名前:112 mailto:sage [2010/02/12(金) 14:29:15 ] >>112 ですがどなたか教えて頂けないでしょうか? ソース等アップロードしました。よろしくお願いします。 www1.axfc.net/uploader/Sc/so/82145.zip
128 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 14:54:07 ] 悪阻
129 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 14:56:22 ] >>127 了解
130 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 19:15:49 ] DirectWriteなんですけど、ここのサンプルをコンパイルして実行すると、 ttp://msdn.microsoft.com/ja-jp/windows/ee426939.aspx Ex1とEx2は開いたウィンドウを移動するかアイコンにして戻すかしないと文字が出ないし、 Ex3は黒ベタで何も出ないです。環境はWin7 x64なんですが、ちゃんと表示されてる人います?
131 名前:113 mailto:sage [2010/02/12(金) 19:53:16 ] >>116 >>117 やはり自力で組まないといけないんですね ぬこにつられて修羅の国に迷い込んでしまったようです ありがとうございました
132 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 20:04:07 ] .Netだとオブジェクトを動的に作る際名前に階層を盛り込んだけどなあ とC++のTreeView調べてたらアイテムの構造体ってろくな情報埋め込めないなw typedef struct _TV_INSERTSTRUCT { HTREEITEM hParent; HTREEITEM hInsertAfter; TV_ITEM item; } TV_INSERTSTRUCT, FAR* LPTV_INSERTSTRUCT; 自分で同じような複製ツリーを作ってそっちで管理してみたら?
133 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 20:08:55 ] typedef struct _TV_ITEM { tvi UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren; LPARAM lParam; } TV_ITEM, FAR *LPTV_ITEM; こっちもあるけどノード登録の際の連絡用とか検索ででてくるなあ
134 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 20:34:17 ] あとはWTL使うくらい? home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl10-06/index.html home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl10-07/index.html
135 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 20:41:52 ] >>132 おいこらTVITEMの中身見ろw 大体win32がヘボかったら.netもヘボくなるわけで・・・どっちも同じコモンコントロールなわけで
136 名前:113 mailto:sage [2010/02/12(金) 21:10:43 ] >>132 >>133 >>134 >>135 親:0 子:1 孫:2 という深度レベルを項目ごとのTVITEMのlParamに格納すればできそうですね! 本当にありがとうございました!
137 名前:デフォルトの名無しさん [2010/02/13(土) 21:17:25 ] タブコントロールは CreateWindowEX で作成するとのことですが、 メイン・ウィンドウのメニューから[設定]なとの項目をクリックして、 タブコントロールのウィンドウをポップ・アップさせる場合の手順は、 1)CreateWindowEX でタブ・コントロールの親ウィンドウ (hwndParent) を作成. 2)hwndParent の子ウィンドウとして CreateWindowEX でタブ・コントロールを作成. するという手順になると思うのですが、ここで、タブ・コントロールを操作する メッセージなどを処理するプロシージャ−が必要になります。ところが、 CreateWindowEX にはご存知のとおりプロシージャ−関数を受け取る引数はありません、、、 ということは、hwndParent にメッセージ・ループを作らざろうえず、メイン・ウィンドウの メッセージ・ループと”競合?”してしまうので、 A)hwndParent はスレッドを作って、そこでメッセージ・ループを回す??? という、プログラミング・スタイルになると思うのですが、違いますが??? 当方、初心者でして、ズバリご指摘おねがいします。 タブ・コントロールに限らず、ダイアログ・テンプレートを使わずに メイン・ウィンドウからコントロールの Owned ポップアップ・ウィンドウを開く場合 の手順は、どうなるのでしょう???
138 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 21:42:53 ] 設定ならプロパティシート使った方が簡単だけど、自分で作る場合の話なら タブコントロールからのメッセージはその親ウィンドウにWM_NOTIFYとして飛んでくるので すべて親ウィンドウのプロシージャで処理できる それと、ウィンドウプロシージャはCreateWindowExでなくウィンドウクラスで設定してそれをCreate〜に渡してる タブコントロールのウィンドウプロシージャはWindowsが持ってるのでそっちに全部お任せ これはタブコントロールに限らずどんなコントロールでも同じなので プログラムを作る側は親ウィンドウのプロシージャのことだけ考えればいい
139 名前:デフォルトの名無しさん [2010/02/13(土) 22:05:23 ] リストボックスをウィンドウのサイズが変更されても常に中央に配置されるようにしたいのですが どうしたらいいのですか?
140 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 22:09:15 ] ありがとうございます。 『タブコントロールからのメッセージはその親ウィンドウにWM_NOTIFYとして飛んでくる』 とのことですが、タブコントロール単独でポップ・アップ・ウィンドウをつくれるのでしょうか? タブコントロール単独でポップ・アップさせようとすると移動もサイズ変更も閉じることもできません、、、 タブコントロールを子ウィンドウとしてポップ・アップさせると、メッセージはタブコントロールの 親に行くのですが、その「親」≠「メインウィンドウ」なので、タブコントロールの「親」に、メッセージを 受け取るプロシージャ−が必要になるのではないですか??? 自分はなにか、根本的なところで勘違いをしていると感じるのですが、それが「何か」がわからない ところが、トホホな現状です。 (T皿T)
141 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 22:10:00 ] ウィンドウのサイズを元に座標を算出してMoveWindowすればよかろうに
142 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 22:14:27 ] >>140 親ウィンドウはあなたが>>137 で言っていたhwndParentだよ メインウィンドウを親としてhwndParentを作ってタブをhwndParentの子ウィンドウにする hwndParentを自分でウィンドウクラスを登録するなりして作成すれば、そのウィンドウプロシージャは自分で管理できる
143 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 22:17:57 ] つーか、どこのウィンドウアプリでタブがポップアップするんだよ? そんなのありえないことくらい、普通わかるだろ?
144 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 23:36:27 ] ……、すいませんでした。 自分が作ろうとしていたのは、『プロパティシート』であって、『タブコントロール』では ありませんでした、、、、、、 orz。 どうもおかしい、なにか変だと思っていましたが、『プロパティシート』を『タブコントロール』と ”根本的に勘違い”してました。お騒がせしました。
145 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 04:36:24 ] レジストリの値が変更されたことを知るAPIは有りませんか?
146 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 04:37:26 ] APIHook
147 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 04:48:02 ] ttp://ruffnex.oc.to/kenji/text/api_hook/
148 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 11:34:44 ] RegNotifyChangeKeyValue
149 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 12:42:06 ] そのてのapi hookってx64でも使えるっけ?
150 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 16:52:46 ] つかえるみたいよ
151 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 21:23:59 ] マウスカーソルを砂時計にしたいのだけど HCURSOR cur = SetCursor(LoadCursor(NULL,IDC_WAIT)); とやってもカーソルがかわらないです。
152 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 22:36:15 ] WM_SETCURSOR
153 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 23:34:42 ] HCURSOR cur = SetCursor(LoadCursor(NULL,IDC_WAIT)); したあとはWM_SETCURSORでreturn 0;するようにしたけど 状況かわらずでした。
154 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 23:38:35 ] >カーソルがウィンドウ上にある間ずっと表示される >ようにカーソルを設定する場合には、指定されたウ >ィンドウのウィンドウクラスで設定されるクラスカ >ーソルが 0 (NULL) になるようにします。クラス >カーソルが 0 (NULL) でない場合、システムはカー >ソルが動かされるたびにクラスカーソルに戻します。 yokohama.cool.ne.jp/chokuto/urawaza/api/SetCursor.html
155 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 00:11:43 ] >>154 デフォルトで表示するカーソルはなしにしておいて WM_SETCURSORの都度表示するカーソルを任意に指定するってことね 脳みそ足りなくて理解に時間がかかりますた
156 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 01:08:34 ] 脳みそとクソ知識が足り過ぎていて理解の邪魔をしてるんだろな
157 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 19:59:11 ] CPUのインストラクションキャッシュをクリアするような APIがあったと思うんですが名前を忘れてしまいました。 ご存じの方いらっしゃいませんか? やりたいことは実行時にコードを書換えながら実行するというようなことです。
158 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 20:04:45 ] FlushInstructionCache
159 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 20:10:03 ] プロセスハンドルからメモリに展開してるプロセスのサイズとかってどうやって取得していますか?
160 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 20:10:53 ] >>158 そのまますぎて吹いた orz ありがとうございます
161 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 20:17:10 ] >>159 ヒープのスナップショット取って合算するくらいしか思いつかない
162 名前:159 mailto:sage [2010/02/15(月) 20:33:49 ] >>161 別なアプローチがあるかと思って聞いたのですが、 やはりそれしかないですか ありがとうございました。
163 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 23:11:06 ] エディッタなどの編集画面は、RichEditコントロールとかが使われているのでしょうか? それともウィンドウに直接”描画?”してるのでしょうか?? 後者の場合、マウスでハイライト選択するのは、どうやって実現しているのでしょうか。 マウスの押し下げメッセージを捕らえるとして、どんな関数を使うのでしょう?
164 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 23:23:14 ] SPY++やフックでぐぐれ
165 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 23:56:38 ] CreateProcessで生成したときのLPPROCESS_INFORMATION構造体のプロセスIDで CreateToolhelp32SnapshotのTH32CS_SNAPMODULEを指定して実行したら エラーになるんですが、何か心あたりがある方はいますか?
166 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 00:02:54 ] >>163 HTMLでクリッカブルマップ辺りを使ったページを 作ってみると「霊感(インスピレーション)」を得れるかも
167 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 00:03:56 ] 他人に聞く前にOSに聞け。
168 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 11:12:25 ] >>163 マウスのY座標からそこが何行目かを計算する (例えばフォントの高さで割るとか) マウスのX座標と行数からそこが何文字目かを計算する (例えば行中の文字幅を1文字ずつ数えるとか) 求めた位置に基づいて選択範囲を保持する変数を変更し、その部分を再描画する 各文字を描画するとき選択範囲内だったらその文字は背景色付きで描き、選択範囲外だったら普通に描く およそこんな感じ
169 名前:163 mailto:sage [2010/02/16(火) 15:07:49 ] ありがとうございます。 …、すごい”低レベル”なことをするんですね。C言語ではじめて文字列操作を やろうとした頃を思い出しました。
170 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 15:12:54 ] 低レベルも何も、隠匿されてるだけであらゆる環境の同じ目的の関数は、 全て同じような手順で実現されてるんじゃないの?
171 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 15:26:02 ] Win32アプリケーションでAllocConsoleを使わずにコンソール画面を表示する方法はありますか?
172 名前:デフォルトの名無しさん [2010/02/16(火) 15:58:32 ] 知らないならレスしないで下さい。ウザイだけです。。。