トップページ⇒tech
1001コメント295KB

Win32API質問箱 Build18

レス数が1000を超えています。これ以上書き込みはできません。
0001 ◆Manna2uCLg NGNG
スレ立てるまでもない、Win32APIについての質問はこちらへどうぞ。
やさしいオジサマ達が、熱く暑く答えてくれよう。
でも最低限、最新スレくらいは質問する前に検索を。
過去スレ・参考は>>2-5くらいを参照するッス!
0951デフォルトの名無しさんNGNG
質問です。
WM_CREATEメッセージのところで、
CreateWindowを用いてボタンを作ったんですが
WM_PAINTメッセージが来たところで一度BeginPaintしないと
表示されません。
また、ボタンをオーナードローで書いてみようと思い、
WM_DRAWITEMメッセージにブレイクポイントを仕掛けても
止まらないんですが、これって何がダメなんでしょうか。
教えて、エロイ人!
0952951NGNG
すんません・・・
激しく自己解決しました・・・・・・
0953デフォルトの名無しさんNGNG
dword型とは?
0954デフォルトの名無しさんNGNG
>>953
謎掛けですか?
0955デフォルトの名無しさんNGNG
Byte型とは?
Word型とは?
DWord型とは?
QWord型とは?
TByte型とは?
0956デフォルトの名無しさんNGNG
>>955
それらは見たことがあります。
0957デフォルトの名無しさんNGNG
俺だって見たことがある。
0958デフォルトの名無しさんNGNG
男とはなんぞや…
0959デフォルトの名無しさんNGNG
ダブルワード型変数によくdwHogeって名前付いてるけど、
バイト型変数には何つけるの?byHogeとか?
0960デフォルトの名無しさんNGNG
http://masafumi-t.cool.ne.jp/ready3.htm
0961デフォルトの名無しさんNGNG
なるほど、変換ミスを放置するような香具師にはハンガリアン記法も必要だと言うことですね。
0962デフォルトの名無しさんNGNG
リソースからBMP表示できるようになったんだけど、
2種類以上のBMPが表示できまへん。
教えてかっこいい人
0963デフォルトの名無しさんNGNG
MessageBox等のOKやキャンセル等のプッシュボタンを
旧来のではなくてXP風のマウスのポインタを合わせるとボタンの周囲がオレンジで
ふちどられるようにするには通常のMessageBox()では実現可能なのでしょうか?
0964デフォルトの名無しさんNGNG
ファイルをバイナリモードで開く方法を教えて下さい
0965デフォルトの名無しさんNGNG
fopen("filename","b");
0966デフォルトの名無しさんNGNG
>>965
いくらなんでもそれはないだろう……
0967デフォルトの名無しさんNGNG
SDKでfopenは互換性があるのですか?
0968デフォルトの名無しさんNGNG
>>964
Windowsには「バイナリモード」などというものは存在しません。
フツーにCreateFileで開いてください。

テキストストリームの行区切りが\nであると定めているのは、あくまで
「C言語の」仕様に過ぎない。それに合わせるために、MS-DOSだのWindowsだの
MacだののCのランタイムでは、わざわざテキストモードだのバイナリモード
なんてのを用意して、改行を\n一文字に見せてるワケ。
0969デフォルトの名無しさんNGNG
\r\n・・・Win
\n・・・Unix
\r・・・Mac
だっけ?
元々印刷の時に復帰、改行の問題があったんだよ。
改行だけでよかったのが復帰がないと間に合わないってだけで作られた過去の遺産。
0970デフォルトの名無しさんNGNG
>>969
OSの改行の扱いの違いと、言語仕様の違いはまた別の話だな。
Cがテキストストリームをタイプライタ式で行区切りを\nと定めてるのは、
単にUNIXがそうだから、と言ってしまえばそれまでだが、
むしろ昔の固定長レコードのデータセットが主流だった計算機への反逆じゃ
ないんかと。FORTRANとかCOBOLとかの入出力仕様はモロにその頃のアレだよね。
そういう時代では、そういう腐った入出力レイヤを抽象化・単純化して
扱いたいという発想は極めて自然なものだったんだろうと思う。
後は、計算機で扱う主要なデータがテキストであったとか、むしろテキストに
したかったとか。
0971デフォルトの名無しさんNGNG
他にも過去のしがらみに縛られてるのがたくさんあるからな。
多少互換性無視してでも断ち切ってもらいたいよ。
0972デフォルトの名無しさんNGNG
>>967
言ってる意味がよくわからんが
いわゆるSDKスタイルで書いてる、WinMain()ではじまるような
ウィンドウアプリケーションでfopen()を使えるんですか?という
意味なら、勿論使えるよ。ただし、Cランタイムをリンクすれば、
という条件つきだが、まあ普通のコンパイラなら何もしなければ
デフォでリンクする。

ただし、あなたが書こうとしてるのがDLLやインプロセスCOMサーバ
の類なら、使えないことはないけど、いろいろ問題があるからlibcに
依存するのはなるべく避けたほうがいい。
0973デフォルトの名無しさんNGNG
>>972
というか、ここはCスレじゃないからそもそも使えない可能性が・・・
0974デフォルトの名無しさんNGNG
>>964
Open "FileName" For Binary As #1
0975963NGNG
すいません自己解決いたしました_| ̄|○
0976デフォルトの名無しさんNGNG
>>972
ということはWinアプリケーションは
stdioのようなCライブラリもランタイム結合なんですか?
それとも実行ファイルの段階でCライブラリは静的結合されているんですか
0977デフォルトの名無しさんNGNG
>>976
そんなもん処理系次第。VC++なんかはどちらも選べる。
0978デフォルトの名無しさんNGNG
>>977
レスありがとうございます。
ということは
実行ファイル+DLL(Cランタイムライブラリ・WINAPI)
実行ファイル(Cライブラリ)+DLL(WINAPI)
のどちらになるか、またはオプションになるかは
処理系依存ということですね
0979デフォルトの名無しさんNGNG
>>978
「Cランタイム」つーときの「ランタイム」は、別にDLLとは関係のない
概念で、ちょと意味が違う。
言語サポートのために実行時に呼ばれるライブラリ関数群という程度の意味で、
DLLとして実装されてるかスタティックリンクライブラリとして実装されてる
かは問題ではない。
0980デフォルトの名無しさんNGNG
>>979
2chの教えてレスで
ここまで丁寧にレスをもらったのは始めてです
すっきりしました!
0981デフォルトの名無しさんNGNG
またまた質問です
コンパイラはMingwなんですが、MingwがリンクするCランタイムライブラリは
msvcrtとlibcのどちらなんでしょうか?
0982981NGNG
すいませんMingwがリンクするじゃなくて
MingwでコンパイルしたWinアプリがの間違いでした
0983981NGNG
自分で行ってて訳分からないや・・orz
つまり、動的にリンクするライブラリが
コンパイラ付属のlibcとmsvcrtの2つあるのが、なんか?なんです。。。
0984デフォルトの名無しさんNGNG
Mingwで作成したバイナリをDependency Walkerで見れば一目瞭然。
0985デフォルトの名無しさんNGNG
処理系依存な質問ですが
Mingwは独自LIBCをいつ使うんですか?
静的リンクの時ですか
0986デフォルトの名無しさんNGNG
処理系依存だと分かってるなら該当スレで聞け阿呆
0987 ◆Manna2uCLg NGNG
こっそり次スレ立て......
0988 ◆Manna2uCLg NGNG
……規制中だったょ…
だれかよろしこ…

ちなみに、当方 plala でつ…
0989デフォルトの名無しさんNGNG
MinGW は常に msvcrt をダイナミックリンクで使う。
スタティックリンクはできない。独自 libc を持つ予定は
いまのところない。
0990デフォルトの名無しさんNGNG
>>989
gooooooooooooooooooood job!!!!!!!!!!!!
0991デフォルトの名無しさんNGNG
>>989
オプションで crt, VC6, VC7 の DLL にも切りかえれるけどな。
0992デフォルトの名無しさんNGNG
>>955
byte型は分かります
dbyteはdouble byte型ですよね?
dwordはdouble wordで
word型とはナンですか?
0993デフォルトの名無しさんNGNG
>>992
(゚Д゚≡゚Д゚) dbyteはどこからキタ

word は byte 2ヶ
0994デフォルトの名無しさんNGNG
#define DBYTE WORD

0995デフォルトの名無しさんNGNG
case sensitiveな言語の話をしているときに混乱するようなこと書くなよな。
0996デフォルトの名無しさんNGNG
>>993
dbyteなんて書いてありませんでした
有難うございます
0997デフォルトの名無しさんNGNG
DWORD = unsigned long
desuka?
0998デフォルトの名無しさんNGNG
環境依存
0999デフォルトの名無しさんNGNG
Win32API質問箱 Build19
http://pc5.2ch.net/test/read.cgi/tech/1084697545/
1000デフォルトの名無しさんNGNG
↓1001
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。