Win32API 質問箱 Build5
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
NGNGやさしいお兄さんたちが答えてくれるかも。
でも、最低限Web検索ぐらいはしてね。
前スレ
Win32API 質問箱
http://pc.2ch.net/tech/kako/991/991576947.html
Win32API【2】
http://pc.2ch.net/tech/kako/1006/10067/1006783012.html
Win32API 質問箱 Build3
http://pc.2ch.net/tech/kako/1006/10067/1006783012.html
Win32API 質問箱 Build4
http://pc3.2ch.net/test/read.cgi/tech/1023361418/
参考
MSDN Online
http://www.microsoft.com/japan/msdn/default.asp
猫でもわかるプログラミング
ttp://www.kumei.ne.jp/c_lang/index.html
0893デフォルトの名無しさん
NGNG無事表示できました
ありがとう
0894891
NGNGありがとうございます。
その方法で解決できました。
プロジェクトの上の方で
#define _WIN32_WINNT 0x0400
って決定がされていたので
#pragma pack( push, 1 )
typedef struct tagOFN2000 {
DWORD lStructSize;
(中略)
void * pvReserved;
DWORD dwReserved;
DWORD FlagsEx;
} OPENFILENAME2000;
#pragma pack( pop )
と途中で宣言し、
(必要ないかもしれませんが)次のように場合分けしておきました。
ofn.lStructSize = ( bWin2000MeLater ? sizeof(OPENFILENAME2000) : sizeof(OPENFILENAME) );
GetSaveFileName( (OPENFILENAME *)&ofn );
0895デフォルトの名無しさん
NGNGこれってどうやったら出来るんだろう?
SDKでやってるのかな?
0896デフォルトの名無しさん
NGNG対象 URL
http://sakashita.strangeworld.org/source/up0768.jpg
--------------------------------------------------------------------------------
mailto ストーム
アンカータグではないタグで mailto: の記述が見つかりました。
メール作成ウィンドウがたぁっくさん出てきてしまうかもしれません。
パワーのないマシンでは,ブラウザがフリーズする可能性があります。
--------------------------------------------------------------------------------
FDD アタック / concon クラッシャー等 [img タグ等]
IMG タグや JavaScript 等により file スキーマを参照します。
ブラウザの設定によってはフロッピーディスクドライブに不要なアクセスが続いたり, OS がクラッシュする可能性があります。
0897デフォルトの名無しさん
NGNGム板に、しかも今時こんなブラクラ貼るなんて(・∀・)イイセンスしてるな。
0898デフォルトの名無しさん
NGNG0899デフォルトの名無しさん
NGNGグローバル変数とメッセージ、どちらで伝えるべきですか?
0901デフォルトの名無しさん
NGNGCreateWindowの引数という手もあり
0902デフォルトの名無しさん
NGNGどうやらこれがよさそうですね、ありがとうございます。
0903デフォルトの名無しさん
NGNGそんなことってできるのでしょうか?
0904デフォルトの名無しさん
NGNGGetDlgItem(IDCANCEL)でキャンセルボタンのCWnd*とれたかも
0905904
NGNGCPropertySheetの派生クラスを作ってOnInitDialog()をオーバーライドして
CPropertySheet::OnInitDialog() ;
CWnd *pwndCancel = GetDlgItem(IDCANCEL) ;
pwndCancel->ShowWindow(SW_HIDE) ;
こんな感じか(あってるかどうかしらん)
0906デフォルトの名無しさん
NGNGスレ違い。
0907904
NGNG904,905はMFCの場合
0911デフォルトの名無しさん
NGNG0912デフォルトの名無しさん
NGNG0913デフォルトの名無しさん
NGNG0914デフォルトの名無しさん
NGNG0915903
NGNG「戻る」「次へ」に対してキャンセルができないのは確かにダメダメだと思いますが、
「完了」があるなら「キャンセル」は要らないと思うのですけれども
どんなもんでしょうか?
んで、やっぱり GetDlgItem() しないとダメなのですかね?
あんまり美しくねーなー…
0916デフォルトの名無しさん
NGNG凡人には理解できません。
どういう論理ですか?
0917デフォルトの名無しさん
NGNGあなたの作るソフトは一生使わないと心に固く誓いますた。
0918デフォルトの名無しさん
NGNG0919デフォルトの名無しさん
NGNG殆どのPCでは印刷に成功するのですが、中には印刷出来ないPCがあります。
印刷まで行かないPCの失敗箇所は、
CreateCompatibleBitmapで作ったビットマップを
SelectObjectで選択するところでNULLが返却されています。
機種またはPCごとの設定で何か違いがあるのでしょうか?
私自身まだ詳しくないので、わかりづらい説明で申し訳ありません。
0920デフォルトの名無しさん
NGNGそれに対して、つまりキャンセルしたいんですよ。何の動作も行わせたくなかったり、設定内容を保存したくなかったり。
0921デフォルトの名無しさん
NGNGネタか?
0922デフォルトの名無しさん
NGNG0923デフォルトの名無しさん
NGNGネタにしたいから焦ってるのか?
どうして、920が903=915と同一人物だと
思っているのか小一時間問い詰めたい
0924デフォルトの名無しさん
NGNG0925デフォルトの名無しさん
NGNG0926デフォルトの名無しさん
NGNG0927903
NGNG�@何とかウィザードにようこそ!(戻る|次へ|キャンセル)
�A条件1設定(戻る|次へ|キャンセル)
�B条件2設定(戻る|次へ|キャンセル)
�C次へを押すと実行します(戻る|次へ|キャンセル)
〜ここで実行〜
�D実行しますた(戻る|完了)
だと思ってたけど違うの?ひょっとして
�@何とかウィザードにようこそ!(戻る|次へ|キャンセル)
�A条件1設定(戻る|次へ|キャンセル)
�B条件2設定(戻る|次へ|キャンセル)
�C完了を押すと実行します(戻る|完了|キャンセル)
〜ここで実行(ウィザード閉じる)〜
�D実行しますた(メッセージボックス)
だったりする?
0928デフォルトの名無しさん
NGNGアタマだいじょうぶ?ぼく
0929デフォルトの名無しさん
NGNG0930デフォルトの名無しさん
NGNG実行した後で戻れるプログラムって、怖いけど見てみたい。
0931デフォルトの名無しさん
NGNGhttp://pc3.2ch.net/test/read.cgi/software/1032017120/
このスレから飛んできたのですが、教えて下さい。
IEの起動がMozillaよりも速いのは、MSが隠しAPIを使っているからだと
言っているのですが、そんなことってあり得るんですか?
勿論、隠しAPI使うことは否定しませんが、それで速度にものすごく差が出るんですか?
0932903
NGNG前者の�@と�Dには「戻る」はないです。
そういうのってなかったっけ?
0933デフォルトの名無しさん
NGNGそれなら最初からそう説明しないと、ずっとキャンセルボタンが無いのかと思われるよ。
そういうウィザードはある。もしくはキャンセルボタンなどの使わないボタンを使用不可にするとか。
0934デフォルトの名無しさん
NGNGどのようにすればよいのでしょうか?
0935デフォルトの名無しさん
NGNGReadFileEx, WriteFileEx使えばええんでわ?
0936デフォルトの名無しさん
NGNG単にIEがOSの一部だから、起動時にロードされてるんだろ
隠しAPIの10や20使ってるとは思うが・・・
0937771
NGNG亀レスでスマソ
CreateProcessするところを、別スレッドを起こして
その中でやっていたためにうまく行かなかったようです。
ソケットは、プロセスセーフではない、だけでなく、
スレッドセーフではない、ということでしょうか?
0938デフォルトの名無しさん
NGNG隠しAPIごときで差が出ることほとんど考えられないな。
0939903
NGNG言葉足らずでスマソン。
でも後者のスタイルが一般的なのならそっちにしようかと思います。
後学のために使わないボタンを使用不可にする方法も
一応知っておきたいのですが、やっぱ GetDlgItem() なんでしょうか。
0940デフォルトの名無しさん
NGNGスレッドセーフの意味がわかっているのかと小一時間・・・(略
0941デフォルトの名無しさん
NGNGとりあえずGetLastError()でも見てみたら
0942デフォルトの名無しさん
NGNGPropSheet_SetWizButtons()とか。あと MFCの CPropertySheet あたりを参考に汁!
キャンセルボタンは、ずーと表示で、「次へ」を「完了」ボタンに変えるのが標準っぽいよ。
0944デフォルトの名無しさん
NGNGそんなに非表示にしたいなら、実際にやってみりゃいいのに。
::ShowWindow( ::GetDlgItem( hWizDlg , IDCANCEL ) , SW_HIDE );
でできたよ。
0945デフォルトの名無しさん
NGNG0946デフォルトの名無しさん
NGNGビットが立っていないのですが、これはXP/2000でも同様でしょうか?
NT4.0以降でファイルをオープンせずに、デバイスかどうかの判別をするには
どうしたらいいのでしょうか?
0947デフォルトの名無しさん
NGNGCreateFileMapping -> MapViewOfFile -> GetMappedFileName
の3段攻撃で。
0948945
NGNGTHX。E:\test.txt を試したら、"\Device\HarddiskVolume4\test.txt" と
返ってきて面食らいましたが。
//うーん、でも、GetMappedFileName が 9xでは使えないのか...
0950デフォルトの名無しさん
NGNG0951デフォルトの名無しさん
NGNG因みにフレームとはウインドウを仕切るフレームのバーの事を指しています。
0952デフォルトの名無しさん
NGNGAPIでアルファブレンディングを実装するにはどうしたらいいのでしょうか?
ピクセル単位でブレンドしたい画像それぞれのRGBを取得して
計算を行えばいいのでしょうか?
計算の方程式は簡単に思いつくのですが、それでは恐ろしく遅いと思うので
一応ゲームに使う予定なので、もっと早い方法はないのか……と
思っているところです。
0953デフォルトの名無しさん
NGNGスプリッタのこと?
完全に自分で実装するしかないよ。
WM_LBUTTONDOWNが来たときにSetCaptureして〜てな感じで。
>>952
AlphaBlend(
HDC hdcDest,
int nXOriginDest, int nYOriginDest,
int nWidthDest, int hHeightDest,
HDC hdcSrc,
int nXOriginSrc, int nYOriginSrc,
int nWidthSrc, int nHeightSrc,
BLENDFUNCTION blendFunction
);
0954デフォルトの名無しさん
NGNG構造体のリファレンスが載ってる本もしくはHPってしりませんか?
0955デフォルトの名無しさん
NGNGお前は
今朝までに作った構造体の数をおぼえているのか?
0956デフォルトの名無しさん
NGNG英語版のMSDNへ逝けよ。
0957あ
NGNGお前は今まで食べたパ(以下略
0958デフォルトの名無しさん
NGNG0959デフォルトの名無しさん
NGNG例えばどんなフォントでも12ptならば高さ0〜X以内におさまる、と言えるのでしょうか?
言えるのならばXの値を取得する方法を教えてください。
0960デフォルトの名無しさん
NGNGフォントサイズが12ptなら高さ上限は12ptだと思うが?
0961デフォルトの名無しさん
NGNG>>950 次スレは?
0962デフォルトの名無しさん
NGNGスプリッタと言うんですか。
http://www.kumei.ne.jp/c_lang/sdk2/sdk_117.htm
こういうやつです。
しかしこのやりかたでは、3つ以上に分割できない。
どうやって実装するのかイメージが掴めません。
もうすこしヒントを頂けないでしょうか?
0963デフォルトの名無しさん
NGNG0964デフォルトの名無しさん
NGNG楽をしたいのならスプリッタ専門のウインドウを作るといいよ
勿論、その分リソース消費することになるけど。
それがイヤなら実装でがんばるしかない。
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNG文字ってなんだよボケナス。
SJISの上位バイト判定ならIsDBCSLeadByteでも使っとけ。
0967デフォルトの名無しさん
NGNGネタで言ってんのかマジで言ってんのかわからん。
0970デフォルトの名無しさん
NGNG勿論固定ピッチのフォントです
>>966
文字コードとかに依存しない方法が知りたいんです。
たとえば、昔PC98であった2バイト半角文字とか、UNICODEのキャラクタとかのように、
文字列のバイト数で簡単に判別出来ない事があるので
指定のグリフの属性がhalf-widthかfull-widthか知りたいのです。
勿論、そんなAPIが無いので困っているのですが…
http://www.microsoft.com/japan/developer/windows/techart/FixedPitchFont.asp
ここで明らかにされたようにXP以外の環境だと、
固定ピッチでも全角が常に半角の2倍の幅になるとは限らないので
GetCharWidth32()で得た値を信じて文字を描画していくことが出来ないのです。
今まではSJISだったので単純に(文字列のバイト数*半角文字の幅)で幅が計算
出来たのですが、UNICODE化するとそうも行かず困ってます。
0971デフォルトの名無しさん
NGNG例の和解で公開されたものから1つ例を挙げるとShowJavaConsoleか。
これのおかげで速くなってるとはまったくもって思えないけど
0972959
NGNGおなじ12ptでもフォントによってTEXTMETRICのtm.tmHeightは異なるので
上限があるのかなと思ったのですが…
0973デフォルトの名無しさん
NGNGふつーGetTextExtentPoint32()で一々数えると思うが。
0974デフォルトの名無しさん
NGNG0975デフォルトの名無しさん
NGNGhttp://pc3.2ch.net/test/read.cgi/tech/1032548635/
0976デフォルトの名無しさん
NGNGUnicodeか・・・ちなみにギリシア文字(アルファとかベータとか)は全角だと思いますか?半角だと思いますか?
0977デフォルトの名無しさん
NGNGんなVB厨みたいなこと言うなよ。
全角に決まってるじゃん
固定ピッチフォントで確かめれば一発でわかるじゃん。
ちったー自分で試してみろよ
0978デフォルトの名無しさん
NGNGぎゃはは! マヌケなDel厨発見。
コードページって知ってるか?
それ以前にUnicodeって知ってるか?
けっこう笑えたんで晒しとくね。
0979デフォルトの名無しさん
NGNG固定ピッチのCourier Newで試してみたところ、半角ですた。
0980デフォルトの名無しさん
NGNG実は自分がVB厨?
( ´,_ゝ`) プッ
0981デフォルトの名無しさん
NGNG0982デフォルトの名無しさん
NGNG> ちったー自分で試してみろよ
( ´,_ゝ`) プッ
0983デフォルトの名無しさん
NGNG自分が限られた環境の中で生きていることを忘れているらしい…
0984デフォルトの名無しさん
NGNGV B 厨 必 死 だ な (藁
くらいが関の山だろな。
自業自得なんで同情はできんが。
0985デフォルトの名無しさん
NGNG「俺がやったときはそうだった」とかな。
0986デフォルトの名無しさん
NGNGMSDNのヘルプに
> C ランタイムライブラリの関数を使うスレッドは、CreateThread 関数と ExitThread 関数ではなく、
> _beginthread 関数と _endthread 関数を使うようにしてください。
と書いてあったのですが、これは何故ですか?
言われたとおり_beginthread/_endthreadを使いましたが、気になったんで…
0987デフォルトの名無しさん
NGNG0988デフォルトの名無しさん
NGNGただし、すべてのランタイム関数で必要なわけではない。
0989デフォルトの名無しさん
NGNGライブラリの内部変数排他処理絡みじゃないの?
_beginthreadで、排他処理用mutexの初期化とかやったりとか
考えられる。(合ってるかどうかわからないけど)
0990デフォルトの名無しさん
NGNG0991デフォルトの名無しさん
NGNGレス数が950を超えています。1000を超えると書き込みができなくなります。