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


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

Win32API質問箱 Build55



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

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

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


83 名前:デフォルトの名無しさん [2007/07/22(日) 18:01:49 ]
スクロールバーのバーの大きさが大きくて滑らかにスクロールさせる方法教えてください
SetScrollRangeで幅を0〜100にすると滑らかにスクロールするけどバーがかなり小さくなってしまいます
助けてください!

84 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:05:05 ]
>>83
EscapeTemporaryJobではけんを辞めると解決できますよ。


85 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:09:08 ]
まだ小学生なんですけど

86 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:11:37 ]
>>83
小学校の算数ができない人か?
バーのドラッグできる部分と全体のサイズの比率が、
ドキュメントの可視部分と全体の比率と違ってたら困ることになるとは思わない?

87 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:12:25 ]
ああリアル小学生だったのかそりゃすまんかった

88 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:13:28 ]
思いません、見かけ上のサイズと内部の比率が違ってたらいい話

89 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:17:53 ]
そんな直感的じゃないUIは嫌だな

90 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:20:57 ]
もちろん設定で変更可能です

91 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:39:00 ]
あの掴む部分の最小値はもっと大きいほうがいいな



92 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 18:44:22 ]
EscapeTemporaryJob
そんなAPIがあったらいいのにね

93 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 19:51:38 ]
>>91
Vistaだと小さくなりすぎないようになってる。
正方形以上にはつぶれないみたい。

94 名前:デフォルトの名無しさん [2007/07/22(日) 20:02:52 ]
フリーが稼げるとか騙されて結局派遣やってるバカ

元々は正社員だったのに取引先にフリーのほうが稼げるとか騙されて
結局派遣やってるバカがいるんだけどw
なんか派遣先といい関係、とか言ってたから思わず吹き出しちゃったよw
最近はマネージャーもやってるとか寝言言ってるし、派遣がまねぇじゃぁ?はあ!?w

そもそも信頼されてるなら直接契約するか正社員にするはずだが、
いつでも切れる派遣会社経由って舐められてんだよ

派遣期間が長くならないうちに早く就職しろ、と忠告したら、ウッキー!って逆ギレw
バカで頑固だから何度言っても理解できない
騙されたとはいえ結局は自分で決めて派遣やってる癖に逆ギレしちゃってまぁ
人間として本当に恥ずかしい


95 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 20:07:57 ]
というコピペを見た

96 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 20:16:35 ]
おれおれ

97 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 20:20:45 ]
一応数少ない有用なスレなので...

スルー力 >> ALL

98 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 20:27:02 ]
>>94
>元々は正社員だったのに取引先にフリーのほうが稼げるとか騙されて

取引先の正社員に会社辞めさせて、一般派遣にさせたってこと?
これ相当ヤバくね?

99 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 20:33:43 ]
>>97の直後にこの体たらく

100 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 21:17:55 ]
>>94=>>98
コイツどのスレにもいるなw
派遣派遣うっせーんだよ黙れや

101 名前:デフォルトの名無しさん [2007/07/22(日) 21:22:14 ]
>>100
テメーが2ちゃんを見なきゃいいんだよ
まあ、せいぜいムカついてろや



102 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 21:30:28 ]
なんでチームミンスがム板に…

103 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 21:41:25 ]
>>99
奴らの夏は、まだ始まったばかりだ!

104 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 21:45:39 BE:297910962-2BP(5)]
邪魔

105 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 22:06:28 ]
マジ小学生なの?
おじちゃんと一緒にHビデオみようぜ

106 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 22:23:19 ]
あの、RealGetWindowClassとRealChildWindowFromPointは何なんですか?
それぞれ一見GetClassNameとChildWindowFromPointで十分に思えるんですけど。

107 名前:デフォルトの名無しさん mailto:sage [2007/07/22(日) 22:39:34 ]
ニート対策

108 名前:デフォルトの名無しさん [2007/07/23(月) 01:32:57 ]
1つのアプリで2つのウィンドウを出す方法を教えてください。
ヒントだけでもかまいません。
お願いします。

109 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 01:38:05 ]
1つのウィンドウを出す方法を2回書く

110 名前:デフォルトの名無しさん [2007/07/23(月) 01:43:15 ]
>>109
ありがとうございます。
そんな感じ書いています。メッセージループは、

while( msg.message!=WM_QUIT ) {
if(PeekMessage(&msg, hwnd, 0, 0, PM_REMOVE) > 0 || PeekMessage(&msg, hwnd2, 0, 0, PM_REMOVE) > 0) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}

のようにして。
これで、実際、ウィンドウが2つ出るのですが、そのウィンドウを破棄しても、
プロセスが死なずに残るんです。ちなみに片方のウィンドウを別のウィンドウの
子ウィンドウにし、子ウィンドウではWM_DESTROYではなにせず、親ウィンドウの
WM_DESTROYでPostQuitMessageをしています。
どうでしょうか?


111 名前:デフォルトの名無しさん [2007/07/23(月) 02:11:40 ]
RGB16,RGB24,RGB32のフォーマットを持つデバイスコンテキストに対して
モノクロのフォーマットを持つデバイスコンテキストからBitBltは可能ですか?

このときにモノクロの黒の部分は透明色として、また白の部分は任意の色に変換してBltしたいです。
どうすればよいのでしょうか?

先生方!よろしくお願いしますっ!!芭(_ _;)mガン!ガン!





112 名前:デフォルトの名無しさん [2007/07/23(月) 02:53:31 ]
>>110
普通にこれじゃ駄目なの?
MSG Msg;
while(GetMessage(&Msg, NULL, 0, 0))
{
   TranslateMessage(&Msg);
   DispatchMessage(&Msg);
}

>>111
出来ると思う。ゲームとかで使うの?
モノクロdcをSRCANDでbitbltしてから元のdcをSRCPAINTでbitbltすれば
黒の部分が透過されるはず

113 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 03:01:21 ]
>>112
ありがとうございます。
黒は透過しますが、白が任意の色に変わるところが難しそうですね。。
質問してからアレコレ考えたのですが
CreatePatternBrushを使ってモノクロビットマップからブラシをつくり、
SetTextColorとSetBkModeを駆使すれば出来そうな気がしてきました。
もし出来なかったらまたここに逃げ帰ってくるかも(^^;)
そんときはまたよろしくお願いします〜m(_ _)m

失礼します

114 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 04:08:10 ]
EscapeTemporaryJobを使えばできます。

115 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 04:31:37 ]
ツマンネ

116 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 05:32:27 ]
>>114
kwsk

117 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 05:36:11 ]
ひどい自演を見た

118 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 05:40:54 ]
来週までこんなかんじなんかな

119 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 06:12:11 ]
API呼び出しで派遣地獄から抜け出せるなら誰も苦労しない

120 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 08:17:25 ]
『API呼び出しで派遣地獄質問箱』スレができそうな話だな。

121 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 08:44:45 ]
もうある



122 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 09:24:44 ]
チェックが2つ以下になると派遣地獄から抜け出すことができます。

□派遣先正社員の作った糞開発ツールはたとえ腐っててもマンセーして使う
□派遣先の人事権のある社員の意見はたとえ間違っていてもマンセーする
□仕様とは正社員から口伝されるものだ
□耳で聞いた仕様を正確に覚えていないのは自分の責任だ
□昼食は必ず派遣先の社員と行くべきだ
□自分の仕事で問題が発生しても解決するのは派遣の仕事ではない
□派遣先から「いつまでもここで仕事してくださいね(安い金でw)」と言われて嬉しい
□自社で仕事なんてできるわけがない
□派遣労働の問題点の話題が出ると感情剥き出しにして反論する
□派遣労働の問題を指摘する人は嫌いだ
□派遣先には仕事だけでなくプライベートについてもグイグイ引っ張って欲しい
□奢ってくれる派遣先正社員を尊敬する
□自分の月額金額を知らないのは当然だ、単金を聞いてはいけない
□派遣先正社員より自分の生涯収入が低いのは当然だ
□チビは派遣先にかわいがってもらいやすいから派遣には有利だ


123 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 10:23:38 ]
モニタが省電力モードかどうか確認する方法を教えて下さい。

124 名前:デフォルトの名無しさん [2007/07/23(月) 12:50:52 ]
SC_MONITORPOWER

125 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 13:05:51 ]
派遣に惑いし哀れな影よ
人に使われ搾取され
デスマに溺れし業の魂
イッペン、死ンデミル?

126 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 13:12:31 ]
>>123
目視

127 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 13:27:01 ]
ちょw目視ってwAPIでお願いします。

>>124
SC_MONITORPOWERを使用して省電力モードの設定と解除なら分かりますが、
どうやって現在の状態を取得するのでしょうか?

128 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 13:30:16 ]
SystemParametersInfo
SPI_GETLOWPOWERACTIVE

129 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 13:49:17 ]
>>128 は嘘

>>127 メッセージが来たらフラグ立てて覚えておくんだよ


130 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 13:54:27 ]
モニタ省電力モード中に
自動的にプログラムが立ち上がった場合どうすんの?

131 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 16:02:16 ]
サービスとかにすれば?



132 名前:ななしへたぐらま ◆XcB18Bks.Y mailto:sage [2007/07/23(月) 17:15:14 ]
アプリケーションで制限付きユーザーを含むあらゆるユーザーアカウントでも自由に読み書きできる
ファイルを保管するためにはどこのフォルダにおけばよいのでしょうか.

www.microsoft.com/japan/msdn/windows/windowsxp/winxpfus.aspx
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnw2kcli/htm/AppSpecDesk5.asp

これらを見る限り,リムーバブルドライブ(リムーバブルディスク)に保管するしかないようにも見えるのですが.


133 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 17:27:36 ]
CSIDL_COMMON_APPDATAを使い、かつフォルダを作る際に全ユーザーへのアクセス権を
設定する(そのままだと一般ユーザ権限では読み取り専用になる)、が一番かな。
アクセス権設定のためには最低でもインストーラが管理者権限で動ける必要があるけど。

134 名前:ななしへたぐらま ◆XcB18Bks.Y mailto:sage [2007/07/23(月) 17:56:56 ]
なるほど,管理者権限のある人がインストールするときにフォルダを掘ってアクセス権を設定すればよいわけですね.
管理者権限以外でのインストールは考えていないので大丈夫です.
ありがとうございました.


135 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 19:09:05 ]
CreateFileとかで作ったファイルのアクセス権限を設定するAPI
はあるでしょうか?
作成したファイルを特定のユーザーやグループでしか読み書きできない様にしたいのですが。

136 名前:デフォルトの名無しさん [2007/07/23(月) 19:10:08 ]
あるよん

137 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 19:11:14 ]
コマンドでよけりゃcacls

138 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 19:11:58 ]
>>112

時代遅れなのでは?

139 名前:135 mailto:sage [2007/07/23(月) 19:15:11 ]
自己解決しました

140 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 19:18:14 ]
作成と同時でよければ、CreateFileのSECURITY_ATTRIBUTESへのポインタ型の引数で指定できる。
後からなら、SetSecurityInfoやSetNamedSecurityInfoなど。

141 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 19:47:47 ]
>>112
Sleep挟むなりしないとノートPCの寿命縮めたりでえらいことになる



142 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 20:05:23 ]
>>141
112のコードにはSleepは必要ないが。

143 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 21:08:45 ]
ど素人かPeekMessageと間違えてるかのどちらか

144 名前:110 [2007/07/23(月) 21:47:08 ]
>>112さん
遅レスですみません。
ありがとうございます。できました。
(ショックです。でも、本当にありがとうございます。)
DirectXのレンダリングを挟むので、>>112さんのコードをまねて、

ZeroMemory( &msg, sizeof(msg) );
while( msg.message!=WM_QUIT ) {
if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
else {
Render();
}
}

なんて感じにしたうまくいきました。
ただ、>>143さんのコメントが気になります。
PeekMessageはまずいんでしょうか?
教えて君ですみません。

145 名前:110 [2007/07/23(月) 22:00:44 ]
>>141
ど素人の勘違いかもしれないのですが、Sleepを実行しても、CPUは休んでない
のではないでしょうか。すると、PeekMessageでも、Sleepをする意味はないように
思うのですが。どうなんでしょう?

146 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:08:40 ]
睡眠関数入れないと中央演算装置使用率十割になるんじゃ

147 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:15:25 ]
Sleepしたからといって全てのプログラムでCPUが休むわけではない。

148 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:38:50 ]
結論、sleepいれないとノートPCの液晶の寿命が縮む

149 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:39:08 ]
そもそもCPUの使用率が十割になるとまずいの?
ほんとに寿命が縮むの?

150 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:40:42 ]
縮みません

151 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:41:08 ]
>>148
なぜ液晶が?



152 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:41:40 ]
CPUの使用率10割になると
限界をこえたことによって
CPU内部のトランジスタが痛むって141がいってた

153 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:42:39 ]
言ってません

154 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:52:03 ]
でも常に10割いってたらどっかは痛む罠。電源とか

155 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 22:56:54 ]
レンダーを別スレッドで行うのが定石

156 名前:110 mailto:sage [2007/07/23(月) 23:02:25 ]
みなさん、ありがとうございます。
やってみたら、CPUの使用率は50%ちょいになりました。
確かに、普段と比べると多いかも。
でも、ゲームをやるなら仕方が無いようにも思います。
よくわかりませんが。
いずれにしても、勉強になりました。ありがとうございます。

157 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:09:05 ]
>>144
そういう風にメッセージが来なかったときにやることがあるなど、
必要があってPeekMessageを使うこと自体はまずくはない。

GetMessageはメッセージが来るまでスレッドを休ませる効果があるが、
PeekMessageではそれがないので、メッセージが来ないときに何もやらない場合、
(そのコードで言うとRenderの呼出がなくしたようなコード)
無駄にループが回ってCPUの無駄遣いになるというだけのこと。

それが寿命に悪影響なのかどうかは知らないが、そんなこと気にするなんて話は聞いたことがない。
俺としては寿命よりも他のプログラムがCPUに飢える事態を心配してやれと言いたい。

あと、お前らSleepばっか言ってないでたまにはWaitMessageも思い出してやれ。



158 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:11:56 ]
そういやsleepってミリ秒単位らしいけど1を指定しても一秒近く停止するのはなんで?

159 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:13:13 ]
Sleepの分解能って10msが最小で10ms単位じゃないっけか?

160 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:13:15 ]
君のトロいコードで999ミリ秒掛かってるから

161 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:13:22 ]
WindowsOSの場合




162 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:28:32 ]
WindowSOS

163 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:31:08 ]
リアルタイムOSじゃないから当たり前。


164 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:35:21 ]
>>160 つまらん。おまえのレスはつまらん。

165 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:35:49 ]
WindowsEx

166 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:46:23 ]
Sleep(1);
で普通に1000分の1秒停まるぜ

167 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:48:58 ]
うそぉん

168 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:03:54 ]
>>158
優先度が高いほかのスレッドが1秒近くCPUを使っているとかそういうことはない?

169 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:06:40 ]
>>160-165
つまらん。

170 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:08:22 ]
>>166
あれを呼んでおけば止まるね。あれを。

171 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:12:17 ]
どれ?



172 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:17:07 ]
10ms以上(だっけ)のSleepの場合は気にする必要ないけど
それ以下の精度が必要なら

timeBeginPeriod(1)

以下、検索したらTOPに出た↓サイトの抜粋
Win95,98,Me では、この関数の実行とかかわりなく精度は
1ミリ秒になっている。WinNT,2000,XP では、ちゃんと
精度を設定する必要がある。



173 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:25:34 ]
その手の話ならこれだな
ttp://www.emit.jp/prog/prog_t1.html

174 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 00:56:18 ]
メディアプレイヤーとか動かしながら動かすと動作が変わるソフトはtimeBeginPeriodを使ってないかららしいな。

175 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 06:48:24 ]
木屋さんってバイク好きの木屋さん?

176 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 08:16:57 ]
ドラスレだったりしてw

177 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 08:36:49 ]
ドラスレやんw

178 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 19:22:19 ]
>>173
>ttp://www.emit.jp/prog/prog_t1.html

>>175-177
正解

179 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 02:24:56 ]
質問です。
vfwを使ってaviからビットマップは取り出すことが出来たのですが、
オーディオを無圧縮PCMで取り出すにはどのようにしたらいいでしょうか?
単純にヘッダをくっつけただけだとファイルが壊れてますと言われるのですが…

180 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 08:15:25 ]
>>179
もう一声分の詳しさが欲しいな。

いわんとする事はわかるけど、
もうちょい詳しく書けば、回答が早いと思う。

181 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 08:27:24 ]
え、君が回答すればいいのに



182 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 08:35:10 ]
え、もうちょい詳しく書かないと分からないんだろ

183 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 09:00:15 ]
え、言わんとすることは分かるって






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

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

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