[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 09/26 11:03 / Filesize : 81 KB / Number-of Response : 377
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Win32API質問箱 Build67



1 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 22:20:46 ]
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。

過去スレ、関連リンクは>>2-10くらい。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(msdn2.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで

- Win32API質問箱 wiki
wiki.livedoor.jp/program1/d/FrontPage

Win32API質問箱 Build66
pc11.2ch.net/test/read.cgi/tech/1210775622/

111 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 10:33:12 ]
訳:かまってほしいな

112 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 10:36:37 ]
かまってほしくない人はレスしないでください

113 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 10:39:16 ]
>>94
IHTMLDocument2 を使うことが絶対条件なの?

114 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 12:32:55 ]
必要条件

115 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 12:36:22 ]
BOOLを返すAP(Iは必ず

bool Successed = Hoge(...) != 0;

としてる。

116 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 12:40:17 ]
だから?

117 名前:60 mailto:sage [2008/06/11(水) 12:57:43 ]
ちょっとした愚痴のつもりだったんだが…
いまさらMSDN書き替えられても困るし


で、結局>>68の指摘してる間違いってなんなんだ?
すごく気になるんだけど

118 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 13:06:50 ]
単なるかまって厨でFA

119 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 13:13:40 ]
www.open-std.org/jtc1/sc22/wg14/www/standards.html



120 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 14:21:09 ]
>>68の指摘は分からんが、CのAPIではないなw
API自体は言語関係ないからね。
そう考えると、Cの文法や流儀を元に議論するのはナンセンスかもしれん。

121 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 14:31:32 ]
馬鹿だなあ
文字列がナルターミネートな時点でC前提だろ

122 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 14:35:03 ]
↑馬鹿

123 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 14:54:48 ]
↑阿呆

124 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 14:58:36 ]
呼び出し規約そのものは、cdeclとpascalの中間だけど
まあC用だな、他の言語はそれにあわせてるだけ。

125 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:05:18 ]
そもそもwin32API自体がCで書かれているのだからC前提で当然
そんな事もわからない素人が増えちゃったんだね・・・

126 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:17:41 ]
↑馬鹿

127 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:19:19 ]
↑阿呆

128 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:20:51 ]
↑馬鹿

129 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:21:36 ]
馬鹿も阿呆も漏れだけでいい



130 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:29:14 ]
↓馬鹿

131 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:29:52 ]
え?おれも?

132 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:41:59 ]
まとめ:かまってほしいな

133 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 15:53:55 ]
(・ω・` )ヾ(・ω・* )ネェネェ カマッテヨ

134 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 16:34:53 ]
「↑馬鹿」と「↑阿呆」はそれぞれ同一人物による書き込み
つまり荒らしは2名

135 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 16:51:30 ]
↑はずれ

136 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:02:54 ]
1人だったのか

137 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:06:37 ]
↑はずれ

138 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:15:14 ]
答え:多重人格(一人)

139 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:23:45 ]
↑はずれ



140 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:43:15 ]
現在の稼動状況
人格1: >>135
人格2: >>137
人格3: >>139
人格4〜16: Idle

最大16人格まで拡張可能
それぞれの人格は並列動作
(例えば人格1から人格2〜16のレスを見ても同一人物であるという認識は本人には無い)
記憶装置(脳)は16人格で共有されるため、正常な人間に比べて人格それぞれの知識は16分の1

141 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:54:06 ]
>>140みたいな事を平気で書き込めちゃう奴って本気で近づきたくない

142 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 17:57:37 ]
↑馬鹿

143 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 18:01:29 ]
↑阿呆

144 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 18:06:05 ]
ビリーミリガンよりは少ないな

145 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 18:20:27 ]
かまってほしいな

146 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 18:43:19 ]
(・ω・` )ヾ(・ω・* )ネェネェ カマッテヨ

147 名前:94 [2008/06/11(水) 18:45:28 ]
>>113
> >>94
> IHTMLDocument2 を使うことが絶対条件なの?

いえ、HTMLの解析が簡単にできればIHTMLDocument2でなくても問題ないです。
MSDNの中を探してたらそれらしいメソッドがIHTMLDocument2に見つかったので使っている所です。

ブラウザを開かないのはIHTMLDocument4::CreateDocumentFromURLを使えばいいのかなぁ

148 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 00:36:01 ]
>>147
もし、htmlソースが文字列として得られるのなら、
・空のドキュメントにhtmlをwriteしてDOMを作ったことはあるなあ。
・普通に文字列処理で何とかするのも手。
・TidyとかでXHTMLにしてXMLパーサに読ませるとか。

URLがあるんなら、そういう時のためのいいやり方が別にあるような気はするけど。

あと、こっちのスレの方が詳しいかもしれない。
 IEコンポーネントを使い倒すスレ Ver.2
 pc11.2ch.net/test/read.cgi/tech/1145189322/

149 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 02:24:06 ]
>>147
用途が分からないから判断が難しいけど、

IHTMLDocument2だとブラウザは開くねぇ。隠したとしても音が残る。
XMLパーサーだと規約に沿ってないとエラーになる。

簡単なのはWinInetを使って、正規表現を使って解析することかなぁ。



150 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 03:14:42 ]
>>149
APIフックして音を消せば?ってのがこのスレ的な回答かな

151 名前:デフォルトの名無しさん [2008/06/12(木) 07:03:47 ]
全角半角キーをスイッチのように使いたいのですが
押しても全角モードに切り替わらない良い方法はありませんか

152 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 12:21:13 ]
フック

153 名前:デフォルトの名無しさん [2008/06/12(木) 14:41:05 ]
>>152
詳しく

154 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 14:53:39 ]
クック

155 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 15:06:35 ]
ドゥ

156 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 15:16:20 ]
訳:かまってほしいな

157 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 15:20:03 ]
訳:ググレ

158 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 15:33:13 ]
いちごみるくうめぇ

159 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 15:45:14 ]
ヾ(@⌒¬⌒@)ノ ウマヒィ



160 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 16:49:07 ]
社会から自分が必要とされていないのではないかと思っているから荒らす
少しでも反応があれば自分は必要とされているんだと勝手に勘違いして納得する
それがかまってちゃん

こうして俺たちがかまってあげているうちは街中で無差別殺人なんてしないだろうから
人助けの一つだと考えて適当に相手してあげておいた方がいいかもな

161 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 16:54:19 ]
>>160
こうですか!わかりません><

162 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 16:55:35 ]
探すのが面倒だから荒らすんですね(>ω<

163 名前:デフォルトの名無しさん [2008/06/12(木) 18:52:04 ]
フックについてググってもvbやらdelphiやらc++やらapiやら混在してる割に
ヒット数が意外と少ないんですがとりあえず
SetWindowsHookEx WH_KEYBOARD WM_INITDIALOG
あたりを使う方法でいいのでしょうか?

164 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 18:53:22 ]
最後は関係ない希ガス

165 名前:デフォルトの名無しさん [2008/06/12(木) 19:20:16 ]
>>164
どうもです。そのものずばりの情報はなかなか見つかりませんね。
範囲があまりにも広いのですが絞るとほとんどhitせず・・・もう少し調べてみます

166 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 21:02:18 ]
動的に追加したリストボックスをDestroyWindow()する時に予めLB_RESETCONTENTする必要はありますか?

167 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 21:14:24 ]
>>166
deleteする時に予めデストラクタを呼んでおく必要はありますか?
って聞いてるようなモンだぞ

168 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 21:26:55 ]
>>167
DestroyWindow()するだけで良いのですね。
ありがとうございました。

169 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 21:52:18 ]
スレ違いのような気もするけど、気にせず教えてください。

kbdacc とか 秀Caps のようなキーリピートの高速化ってどうやって実現してるんでしょうか?
SystemParametersInfo で設定できる値よりずっと速くできるようですが。




170 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 22:15:27 ]
>>165
自プロセスへのフックは簡単だと思うけど‥‥他プロセスやグローバルフックになると共有メモリとかの処理が必要になってくるけど

171 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 22:17:16 ]
>>169
気にせず教えてください…?頭わいてんのか?

172 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 22:29:33 ]
お忙しい中すみませんが、気にせず教えてください。

173 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 22:33:16 ]
教えを乞う言葉じゃない気がしますが、気にせず教えてください。

174 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 22:54:35 ]
>>169
ずっと速くできるようですが気にせず設定してください

175 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 23:12:31 ]
流れがおかしいようですが気にせず質問してください

176 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 23:15:39 ]
ツールバーの表示位置を変えたいのですが、どのようにすればいいですか?

177 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 23:21:10 ]
movewindow

178 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 00:14:46 ]
>>177
レスありがとうございます。
後一つわからないことがありまして、
ツールバーの高さを変えるにはどうすればいいですか?

179 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 00:15:13 ]
>>177
APIの大文字小文字は区別されます。嘘を書くのをやめましょう。



180 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 00:16:35 ]
>>178
ボタンを大きくする

181 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 00:28:58 ]
>>180
ありがとうございます。
御礼に私の集めた女子高生画像10枚ほどぅpしようと思うのですが

182 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 00:33:42 ]
>>181
早く汁
ttp://www.uploda.org/

183 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 01:00:03 ]
>>181-182
偽者&自作自演乙

184 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 01:10:32 ]
↑はずれ

185 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 01:13:02 ]
mbup.net/p.php?p=44502.jpg
mbup.net/p.php?p=44503.jpg
こんな感じのでよいでしょうか?

186 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 01:36:20 ]
訳:かまってほしいな

187 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 02:35:45 ]
>>186
かまってほしいです。
実のところMoveWindowでツールバーの移動が出来ませんでした。

188 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 02:55:07 ]
自プロセスのUIスレッドのIDを取得したいのですが、方法はありますかね?

189 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 03:12:29 ]
>>188
ググッたらその辺のサンプルは、見つかると思うよ



190 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 05:09:14 ]
ツールバー移動出来ない……
クローズボタンなんかだと移動出来てるぽいから出来ると思うのですが…

191 名前:デフォルトの名無しさん [2008/06/13(金) 10:24:01 ]
Windows Media Playerの埋め込みについて質問させてください。

親ウィンドウ(レイヤードウィンドウ)にメディアプレイヤーを埋め込んでいるのですが、
WS_EX_Layeredで親ウィンドウを生成し、SetLayeredWindowAttributesで透明度を設定すると、
メディアプレイヤーの動画部分が黒く表示されます(再生はされているみたいです)
親ウィンドウを動かしてみると、一瞬だけ動画が表示され、動かすのをやめるとまた消えてしまいます。
これはどういった原因があるでしょうか。
親ウィンドウをレイヤードウィンドウにしなかった場合は、そのまま表示されます。

192 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 11:24:59 ]
WS_CLIPCHILDRENとかその辺?

193 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 11:28:43 ]
タブのグレイ表示ってできないんですか?

194 名前:デフォルトの名無しさん [2008/06/13(金) 13:57:22 ]
>>190
>>190
>>190
>>190
>>190
>>190
>>190

195 名前:デフォルトの名無しさん [2008/06/13(金) 14:12:25 ]
聞きたいのは、何故ツールバーをMoveWindowで移動出来ないのか
です。

196 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 15:19:53 ]
最近、いろいろなサイトでTEXT("aaa");見たいなの見かけますが
文字型charには代入できなくなったのですか?新しい型?

197 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 15:21:14 ]
意味不明

198 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 15:27:26 ]
TEXT("aaa")とか_T("aaa")は、ユニコード対応だったけか?
ググれば、その辺はすぐ見つかるよー

199 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 15:28:16 ]
最近のVC++はデフォがUnicode版API使うようにマクロ定義さてるんじゃなかったっけ?
2003で止まってるから知らんが。



200 名前:デフォルトの名無しさん [2008/06/13(金) 15:39:25 ]
WM_KEYUPでwParamと数値を比較すると警告メッセージがでるのですが
wParamをintでキャストするような方法でいいのでしょうか

201 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 15:40:25 ]
おk

202 名前:デフォルトの名無しさん [2008/06/13(金) 15:41:20 ]
>>201
秒殺レスさんくす

203 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 16:05:45 ]
>>191
WMPが動画をオーバーレイで表示してるなら、不思議な挙動ではないな。
ビデオオーバーレイは画面上のビデオ表示領域にあるピクセルが特定の色だった場合に、そのピクセルに動画を表示する。
よって半透明にした結果、そのピクセルの色が変わってしまえば動画が表示されなくてもおかしくはない

204 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 16:20:56 ]
なかなか深い読みだな

205 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 16:27:34 ]
>>203
アプリの背景色をその色にすると面白い事になるよね

206 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 16:32:23 ]
自己解決しちゃったぜ!!?
気分がいいので
今から写メを20枚ぅpしてやんよ!!!

207 名前:デフォルトの名無しさん [2008/06/13(金) 16:50:01 ]
mbup.net/d/44545.jpg
mbup.net/d/44547.jpg
mbup.net/d/44549.jpg
mbup.net/d/44552.jpg
mbup.net/d/44554.jpg

208 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 16:54:40 ]
基地外が沸いてるな

209 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 17:53:16 ]
>>191
WMPでオーバーレイを使わない設定にすれば見えなくなることはなくなるけど、透けないしちらつくんだよな。



210 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 20:52:48 ]
ツールチップをCreateWindowEx()してTOOLINFO構造体のlpszTextにLPSTR_TEXTCALLBACKを指定した後、

case WM_NOTIFY:
switch (((LPNMHDR)lp)->code)
{
case TTN_NEEDTEXT:
LPTOOLTIPTEXT ptt = (LPTOOLTIPTEXT)lp;
lstrcpy(ptt->lpszText, 表示するテキスト);
break;

default:
return FALSE;
}

とすると、数十字程度の場合は正常に動作しますが、300文字等文字数を増やすとデバッグ実行時でもエラーが出ずに突然落ちてしまいます。
原因は何でしょうか。
因みにTTM_UPDATETIPTEXTでは正常に動作しました。

>>196
所謂TCHAR型だから、プロパティでマルチバイトを選択すればchar、Unicodeを選べばwchar_tとコンパイラは解釈する。

211 名前:デフォルトの名無しさん mailto:sage [2008/06/13(金) 21:18:19 ]
TTN_NEEDTEXT 通知メッセージを処理する場合は、表示する文字列を次のいずれかの方法で指定します。

szText メンバで指定したバッファにテキストをコピーする。

テキストが入っているバッファのアドレスを lpszText メンバにコピーする。

文字列リソースの識別子を lpszText メンバにコピーし、そのリソースが入っているインスタンスのハンドルを hinst メンバにコピーする。

MSDNくらいちゃんと確認汁






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<81KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef