[表示 : 全て 最新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などの質問はそれぞれの言語や開発環境スレで


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 ]
え、言わんとすることは分かるって



184 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 09:24:05 ]
え、そんなんできるんですか

185 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 09:36:01 ]
無圧縮PCMなら、ヘッダさえ正しければどんな出鱈目なデータでも再生はできるから、
くっつけたヘッダが間違ってるんでないの。

186 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 10:04:43 ]
え、?

187 名前:179 mailto:sage [2007/07/25(水) 10:44:19 ]
>>180
vfwを使ってオーディオストリームは取り出せるのですが、
常に無圧縮のデータを吐き出してくれるわけではないみたいで、
ReadFormatで得られたPCMWAVEFORMATとRIFFなどの
決まり文句をくっつけただけじゃだめみたいなので、
どのようにしたら無圧縮の状態で取り出せるようになるのかなと
思い質問させていただきました。
圧縮されたまま書き出せばwavファイルには出来るみたいなのですが、
それだと次の編集が出来なくなるので…

188 名前:179 mailto:sage [2007/07/25(水) 10:45:41 ]
>>187
圧縮されたまま書き出せば   → ×
取り出したデータをいじらずに → ○

189 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 10:59:24 ]
ここの第4章は?
www.ecoop.net/coop/vfw/avi.html

190 名前:179 mailto:sage [2007/07/25(水) 11:44:34 ]
>>189
そんな方法が…
ありがとうございます。

//ただ解凍するだけなのになんかものすごいことに…

191 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 14:48:49 ]
自分のウインドウがアクティブじゃなくても
ボタン入力を受け取る方法ってありますか?
ブラウジングなどで大量にできたウインドウを
マウス真ん中クリックで次々消したいなと思いまして

192 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 14:50:46 ]
便乗ですが、WMVファイルやMPGファイル(要はWMPで再生できる形式)でAVIStreamGetFrameと同じようなことがしたい場合、
どんなAPIを使えばいいのでしょうか。
それらしきものが探しても見つからず、キーワードだけでも頂ければあとは調査したいと思います。

193 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 14:51:11 ]
>>191
ジャーナルフック



194 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 14:56:58 ]
>>192
DirectShow

195 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 14:58:15 ]
とうとうフックに手を出さないといけないのか・・・難しそう
グローバルな感じのlParamだかなんだかに
格納されたりしてすぐに取り出せたりとかは不可能でしょうか?

196 名前:192 mailto:sage [2007/07/25(水) 15:03:36 ]
まいどどうもです。
調べた結果このへん参考になりそう。
ttp://www.geekpage.jp/programming/directshow/samplegrabber.php

197 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 15:03:38 ]
フックほど簡単なものはない

198 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 15:08:47 ]
グローバルフックでHHOOKの保持にハマることが多かったが、最近はそれも無いみたいだしなぁ

199 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 15:21:19 ]
グローバルフックでHHOOKの保持にハマるなんて都市伝説

200 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 15:25:30 ]
しかしフックというのは
チートだのキーロガーだの悪の技術
手を出してはいけないと教わりました

201 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 16:01:41 ]
まあいつでもマウスで呼び出したいというのなら、タスクトレイに入れとくと言う手もあるしなあ

202 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:03:47 ]
ごめん。
悪の技術に関する質問です。
Office 2003でImm*を使ったグローバルフックが問題なく動いてたんだが、
Office 2003 sp2にしたところ動かなくなりました。
原因分かる人いますか。

Office2003_SP2Changes(英語)に該当する情報ってありますか?
support.microsoft.com/default.aspx?scid=kb;ja;887616

203 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:06:46 ]
Office2003_SP2Changes(英語)



204 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:13:10 ]
>>203
ありますか?
すんません、英語じゃなくてもいいです。
っていうか、英語じゃないほうがいいです。


205 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:18:25 ]
英語じゃないとダメです。
英語を勉強して下さい。

206 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:26:54 ]
じゃあ、英語でも良いです。
「Office 2003 Service Pack 2 - Changes」
の原文のほうに目を通しましたが、、、




207 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:27:11 ]
一番の近道は留学だな

208 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:31:18 ]

           /.n l  /⌒ヽ
             | l l | ,' /7 ,'
        , '' ` ー ' '-' /
       /  、_,       `ヽ  
         l   , .-. 、`´    l
         ヽ  ヽ ̄フ     /
        丶、 ̄____,/
         /  ,. - 、  )
      (( ( n ([N],ハ_う
         ゝ)ノ  ̄   ヽ
            /   _   l ))
            〈__ノ´   `(_ノ

209 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:41:00 ]
セキュリティレベルが上がったから!?

210 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 18:10:12 ]
単にImm32が呼ばれてなかっただけだったりして。
TSF経由とか。

211 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:01:45 ]
WM_CREATEでウィンドウ位置を変更してから
タブコントロールを作るとタブコントロールが正しく表示されないんですが
ヒントでいいので何かもえませんか?

ウィンドウ位置変更を抜いたり、WM_SIZE後は正しく表示されるので
何かサイズ関係なんだと思って
SendとかPostとかしてみたんですがどうも上手くいきません

212 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:18:04 ]
何も萌えません

213 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:51:20 ]
>>210
とりあえず、回避方法は分かった。
ありがとう。
210は良い奴。




214 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:57:01 ]
213は悪い奴。

215 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:57:41 ]
214 は普通の奴。

216 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 20:02:32 ]
普通の奴です、すいません。

217 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 20:08:44 ]
普通のヤツの反応じゃねぇ....

218 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 21:45:12 ]
>>211
「正しく表示されない」とは?

219 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 21:56:06 ]
>>212
orz もらえませんかでお願いします

>>218
クリックで反応するので
多分タブコントロールの一部分だけ描画されてるみたいです

220 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 22:14:36 ]
VIP uploaderという所にプリントスクリーンしたのをあげてみました
4M(Nullpo)のga7919こんなのですっていうのです

221 名前:デフォルトの名無しさん [2007/07/25(水) 22:21:11 ]
nullpo.vip2ch.com/ga7919.bmp

222 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 23:19:53 ]
コマンドプロンプトが対応しているロケールは、日本語圏の環境だ
とJapanese_Japan.932ですが、これをプロンプト上で実行したアプ
リの方で取得する術を探しています。
ご存知の方はいらっしゃいませんか?

223 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 00:21:50 ]
プロセスの現在値ならGetThreadLocaleかな
システム全体ならGetSystemDefault***系



224 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 08:34:48 ]
APIじゃないんだけどWin限定だしMFCじゃないのでここに質問してみる。

ttp://www2s.biglobe.ne.jp/~ragnarok/program/win32/class_of_cpp_in_dll.htm

ここを見ながら、簡単なサンプルを作っていろいろ試してみたのだけど、

1. Exportクラスを純粋仮想クラスにした場合、dllexport無しでも正常に動作するっぽい。
(ヘッダはどのみち必要なので、どの関数が存在しているかはわかっている
& virtual ついてれば exportされてない関数もちゃんと呼んでくれる)

2. Exportのデストラクタをちゃんとvirtualで宣言しておけば、exe側でdeleteしても
dll側のデストラクタおよびdeleteが呼ばれるっぽい。
(virtual無しだとexe側が呼ばれてしまいクラッシュ)

という2つの考察結果を得ました。

これがどちらもOKなら、DLL越しにクラス使うのがかなり気楽になるんだけど、
潜在的なトラブルの可能性とかあったら教えてくださいエロい方々。

225 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 08:42:17 ]
C言語の方から使っても大丈夫か

226 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 09:03:30 ]
すいません。またvfw関係なんですが…
AVIStreamRead(pstm, i, AVISTREAMREAD_CONVENIENT, NULL, 0, &lLength, &lSample)
としてストリームのサンプル数を取得しようとしたのですが、AVIERR_ERROR
が発生してサンプル数が取得できません。
どこか間違っている場所があれば教えていただきたいのですが…

227 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 09:44:52 ]
>>226
エスパーが必要そうですね


228 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 09:51:57 ]
>>226
どこと指摘できるほど十分な情報を提示してないのに
その質問文でわかってもらえると思ってる所を間違えてる。
もっと広範囲のソース晒すとかすれば?

229 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 10:09:37 ]
>>221
タブコントロールのサイズがおかしくなってるとか
WS_CLIPCHILDREN付けてないからタブの領域塗りつぶしちゃってるとか

230 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 10:18:15 ]
もしかして、AVIStreamRead後のlLengthとlSampleは変化してる?


231 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 10:22:25 ]
ほかのウィンドウにCtrlやAltといったModifierKeyと通常のキーを
同時に送信するにはどうすればいいのでしょうか?
試しにWM_KEYDOWNを送信してみたのですが
Ctrl+Vのイベントは起こりませんでした。

232 名前:226 mailto:sage [2007/07/26(木) 10:37:48 ]
>>228
>>189のTEST05.Cのコードとほぼ同じで、
int WINAPI WinMain()のところをwchar_t*型の引数2つ(入力avi名、出力wav名)の
関数に変更して、AVIFileOpenのファイル名の部分を先の引数に変更、
ビデオ部分の出力処理をまるまるカットしただけです。

>>230
本当なら変化しているはずらしい(上記リンク先TEST04.CのCopyStream内
の条件より)のですが、全く変化なしです。

233 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 11:01:00 ]
_tWinMainとかwWinMain とかあったなー
(某



234 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 11:28:21 ]
>>224
君の考察結果は間違ってないと思うが(とは言ってもVC++とかの話な。
DLL絡みは結局処理系に依存するところが多いだろ)、果たして
「気楽」かね?

要は必ずインタフェースクラスとファクトリを作らなきゃいかん、
それは面倒だし、全てが仮想関数呼び出しになることで効率も犠牲になる、
そこまで頑張ってもABIが処理系依存なせいで、昔ながらのCのDLLとは違って
他の言語どころか他のコンパイラからさえ利用できない、
テンプレートはどのみちDLL化できない(特殊化バージョンを入れることは
出来るが)、バージョンコントロールを厳密に意識するなら
引数や戻り値にも気楽にクラスを使えない(std::basic_string<>とか
使えないのは結構致命的では?)、といった問題があるだろう。

235 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:08:28 ]
>>224
つCOM
www.ascii.co.jp/pb/bookmart/pdf/47561/4756130666.pdf

Windows用の処理系ならまず間違いなくCOMが使えるようなABIになっているため、
多少はCOMでないクラスも結構やり取りできてしまう。

236 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:11:44 ]
>>224
結局、劣化COMを実装しているだけじゃないか。
DirectXのようにCOMの最低限のルールだけ借りて使う方がいいかと。

237 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:15:18 ]
>> 234

それは全部 >>224 の引用元の方法でも同様に抱えている問題。

そうはいってもDLLを使わないわけにはいかないし(COMはもっと遅いし)
すべてをCインターフェイスに書き換える手間をかけても、
得られるのはコンパイラ互換性くらいだろ。
basic_stringはどっちにしてもDLL越しには使えない。

聞きたいのは、>>224 が言ってる2点で、新たに問題が起きるかどうか、じゃないか?

と、偉そうに言うオレはDLLなんかここ3年使ってない。

238 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:22:06 ]
>>237
> と、偉そうに言うオレはDLLなんかここ3年使ってない
ぶっちゃけC++に関してはそれで正解じゃまいか?
COMにいくか、全部ヘッダに入れる/スタティックリンクするの2極だと思う。

COMは遅いだけじゃなくて普通のC++クラスと同じように使えないのも問題だな。
「C++の」ライブラリとして便利なものが欲しいなら、後者にならざるを得ない。

239 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:32:40 ]
Crazy for you.

240 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:37:01 ]
>>238
COMは常に遅いというわけではないだろ。
DLLに実装した場合に限れば、インタフェースメソッド呼出は、
(アパートメント越えのマーシャリングを起こさない限り)
原理的に仮想関数呼出と同じコストしかかからないぞ。

241 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:46:47 ]
>>240
普通にCOMの作法に従うと、文字列受け渡すにもSysAllocString()とか
いちいち使うことになるんで、やはり遅いと思うが

242 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:46:58 ]
>>240
普通のDLL的な使い方をするにはサイドバイサイドの実装が遅すぎた感じだよな。

243 名前:224 mailto:sage [2007/07/26(木) 12:58:02 ]
224です。
>>235のPDF読みますた。
とりあえずCOMの勉強をしてまた出直します。
ありがとうございました。






244 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:09:24 ]
>>241
ああすまん、そういうことか。

例えば文字列ならLPSTR/LPWSTRにすれば対等だしという具合で、
関数呼出自体のコストしか考えていなかった。

245 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:11:28 ]
ちょっとスレ違いかもしれませんがお尋ねします。
Linux とか Mac で Win32API に相当するものは何ですか?
あと、そのスレがあれば教えてください。

246 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:17:03 ]
>>245
system callだな。つまり、manのセクション2。

247 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:21:27 ]
つWine
流石にこれは冗談半分。

LinuxはWin32のkernel関係に当たるのがPOSIX。
GUI系はいろいろラッパがあってよくわからん。
ただ、どいつもX Window Systemが基底になっている。

Mac OS XはCocoaとCarbon。

こうでいいのか?

248 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:23:08 ]
ううん

249 名前:245 mailto:sage [2007/07/26(木) 13:35:49 ]
>>247
ありがとうございます!
主にGUI系が知りたいんですけど、それぞれのOSでウィンドウを表示するコード
(C++などメジャーな言語で)が載っているウェブサイトってないでしょうか…。

250 名前:初めからそう言えやカス mailto:sage [2007/07/26(木) 13:39:54 ]
If you give a mouse a cookie, it's gonna want a glass of milk.

251 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:42:43 ]
So, what's the point?

252 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:45:07 ]
スレ違いとわかってるなら続けんなよ・・・

253 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:45:33 ]
>>249
Unix系のOSに、WinAPIに相当するGUIなんかないぞ。
いずれにしろ、スレ違いだ。



254 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 13:58:46 ]
うそ?

255 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 14:06:12 ]
>>245
ほら、LinuxでもMacでも(恐らく)最小のウインドウを表示するプログラムやるからどっか行け。
--
/// For compile: gcc -std=c99 this.c -lX11 -L/usr/X11R6/lib
#include <X11/Xlib.h>

int main()
{
static const int WinWidth = 100;
static const int WinHeight = 100;
static const int WinBorder = 2;

Display * dpy = XOpenDisplay(NULL);
Window win = XCreateSimpleWindow(dpy, DefaultRootWindow(dpy),
0, 0, WinWidth, WinHeight, WinBorder,
BlackPixel(dpy, DefaultScreen(dpy)), WhitePixel(dpy, DefaultScreen(dpy)));
XSelectInput(dpy, win, KeyPressMask);
XMapWindow(dpy, win);

XEvent event;
do {
XNextEvent(dpy, & event);
} while (event.type != KeyPress);
XDestroyWindow(dpy, win);
XCloseDisplay(dpy);
return 0;
}







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

前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