Win32API質問箱 Build67
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2008/06/08(日) 22:20:46やさしいお兄さんやお姉さんたちが答えてくれるかも。
過去スレ、関連リンクは>>2-10くらい。
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(http://msdn2.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- Win32API質問箱 wiki
http://wiki.livedoor.jp/program1/d/FrontPage
Win32API質問箱 Build66
http://pc11.2ch.net/test/read.cgi/tech/1210775622/
0153デフォルトの名無しさん
2008/06/12(木) 14:41:05詳しく
0154デフォルトの名無しさん
2008/06/12(木) 14:53:390155デフォルトの名無しさん
2008/06/12(木) 15:06:350156デフォルトの名無しさん
2008/06/12(木) 15:16:200157デフォルトの名無しさん
2008/06/12(木) 15:20:030158デフォルトの名無しさん
2008/06/12(木) 15:33:130159デフォルトの名無しさん
2008/06/12(木) 15:45:140160デフォルトの名無しさん
2008/06/12(木) 16:49:07少しでも反応があれば自分は必要とされているんだと勝手に勘違いして納得する
それがかまってちゃん
こうして俺たちがかまってあげているうちは街中で無差別殺人なんてしないだろうから
人助けの一つだと考えて適当に相手してあげておいた方がいいかもな
0161デフォルトの名無しさん
2008/06/12(木) 16:54:19こうですか!わかりません><
0162デフォルトの名無しさん
2008/06/12(木) 16:55:350163デフォルトの名無しさん
2008/06/12(木) 18:52:04ヒット数が意外と少ないんですがとりあえず
SetWindowsHookEx WH_KEYBOARD WM_INITDIALOG
あたりを使う方法でいいのでしょうか?
0164デフォルトの名無しさん
2008/06/12(木) 18:53:220165デフォルトの名無しさん
2008/06/12(木) 19:20:16どうもです。そのものずばりの情報はなかなか見つかりませんね。
範囲があまりにも広いのですが絞るとほとんどhitせず・・・もう少し調べてみます
0166デフォルトの名無しさん
2008/06/12(木) 21:02:180167デフォルトの名無しさん
2008/06/12(木) 21:14:24deleteする時に予めデストラクタを呼んでおく必要はありますか?
って聞いてるようなモンだぞ
0168デフォルトの名無しさん
2008/06/12(木) 21:26:55DestroyWindow()するだけで良いのですね。
ありがとうございました。
0169デフォルトの名無しさん
2008/06/12(木) 21:52:18kbdacc とか 秀Caps のようなキーリピートの高速化ってどうやって実現してるんでしょうか?
SystemParametersInfo で設定できる値よりずっと速くできるようですが。
0170デフォルトの名無しさん
2008/06/12(木) 22:15:27自プロセスへのフックは簡単だと思うけど‥‥他プロセスやグローバルフックになると共有メモリとかの処理が必要になってくるけど
0171デフォルトの名無しさん
2008/06/12(木) 22:17:16気にせず教えてください…?頭わいてんのか?
0172デフォルトの名無しさん
2008/06/12(木) 22:29:330173デフォルトの名無しさん
2008/06/12(木) 22:33:160174デフォルトの名無しさん
2008/06/12(木) 22:54:35ずっと速くできるようですが気にせず設定してください
0175デフォルトの名無しさん
2008/06/12(木) 23:12:310176デフォルトの名無しさん
2008/06/12(木) 23:15:390177デフォルトの名無しさん
2008/06/12(木) 23:21:100178デフォルトの名無しさん
2008/06/13(金) 00:14:46レスありがとうございます。
後一つわからないことがありまして、
ツールバーの高さを変えるにはどうすればいいですか?
0179デフォルトの名無しさん
2008/06/13(金) 00:15:13APIの大文字小文字は区別されます。嘘を書くのをやめましょう。
0180デフォルトの名無しさん
2008/06/13(金) 00:16:35ボタンを大きくする
0181デフォルトの名無しさん
2008/06/13(金) 00:28:58ありがとうございます。
御礼に私の集めた女子高生画像10枚ほどぅpしようと思うのですが
0182デフォルトの名無しさん
2008/06/13(金) 00:33:42早く汁
ttp://www.uploda.org/
0183デフォルトの名無しさん
2008/06/13(金) 01:00:03偽者&自作自演乙
0184デフォルトの名無しさん
2008/06/13(金) 01:10:320185デフォルトの名無しさん
2008/06/13(金) 01:13:02http://mbup.net/p.php?p=44503.jpg
こんな感じのでよいでしょうか?
0186デフォルトの名無しさん
2008/06/13(金) 01:36:200187デフォルトの名無しさん
2008/06/13(金) 02:35:45かまってほしいです。
実のところMoveWindowでツールバーの移動が出来ませんでした。
0188デフォルトの名無しさん
2008/06/13(金) 02:55:070189デフォルトの名無しさん
2008/06/13(金) 03:12:29ググッたらその辺のサンプルは、見つかると思うよ
0190デフォルトの名無しさん
2008/06/13(金) 05:09:14クローズボタンなんかだと移動出来てるぽいから出来ると思うのですが…
0191デフォルトの名無しさん
2008/06/13(金) 10:24:01親ウィンドウ(レイヤードウィンドウ)にメディアプレイヤーを埋め込んでいるのですが、
WS_EX_Layeredで親ウィンドウを生成し、SetLayeredWindowAttributesで透明度を設定すると、
メディアプレイヤーの動画部分が黒く表示されます(再生はされているみたいです)
親ウィンドウを動かしてみると、一瞬だけ動画が表示され、動かすのをやめるとまた消えてしまいます。
これはどういった原因があるでしょうか。
親ウィンドウをレイヤードウィンドウにしなかった場合は、そのまま表示されます。
0192デフォルトの名無しさん
2008/06/13(金) 11:24:590193デフォルトの名無しさん
2008/06/13(金) 11:28:430195デフォルトの名無しさん
2008/06/13(金) 14:12:25です。
0196デフォルトの名無しさん
2008/06/13(金) 15:19:53文字型charには代入できなくなったのですか?新しい型?
0197デフォルトの名無しさん
2008/06/13(金) 15:21:140198デフォルトの名無しさん
2008/06/13(金) 15:27:26ググれば、その辺はすぐ見つかるよー
0199デフォルトの名無しさん
2008/06/13(金) 15:28:162003で止まってるから知らんが。
0200デフォルトの名無しさん
2008/06/13(金) 15:39:25wParamをintでキャストするような方法でいいのでしょうか
0201デフォルトの名無しさん
2008/06/13(金) 15:40:250202デフォルトの名無しさん
2008/06/13(金) 15:41:20秒殺レスさんくす
0203デフォルトの名無しさん
2008/06/13(金) 16:05:45WMPが動画をオーバーレイで表示してるなら、不思議な挙動ではないな。
ビデオオーバーレイは画面上のビデオ表示領域にあるピクセルが特定の色だった場合に、そのピクセルに動画を表示する。
よって半透明にした結果、そのピクセルの色が変わってしまえば動画が表示されなくてもおかしくはない
0204デフォルトの名無しさん
2008/06/13(金) 16:20:560205デフォルトの名無しさん
2008/06/13(金) 16:27:34アプリの背景色をその色にすると面白い事になるよね
0206デフォルトの名無しさん
2008/06/13(金) 16:32:23気分がいいので
今から写メを20枚ぅpしてやんよ!!!
0207デフォルトの名無しさん
2008/06/13(金) 16:50:01http://mbup.net/d/44547.jpg
http://mbup.net/d/44549.jpg
http://mbup.net/d/44552.jpg
http://mbup.net/d/44554.jpg
0208デフォルトの名無しさん
2008/06/13(金) 16:54:400209デフォルトの名無しさん
2008/06/13(金) 17:53:16WMPでオーバーレイを使わない設定にすれば見えなくなることはなくなるけど、透けないしちらつくんだよな。
0210デフォルトの名無しさん
2008/06/13(金) 20:52:48case 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とコンパイラは解釈する。
0211デフォルトの名無しさん
2008/06/13(金) 21:18:19szText メンバで指定したバッファにテキストをコピーする。
テキストが入っているバッファのアドレスを lpszText メンバにコピーする。
文字列リソースの識別子を lpszText メンバにコピーし、そのリソースが入っているインスタンスのハンドルを hinst メンバにコピーする。
MSDNくらいちゃんと確認汁
0212デフォルトの名無しさん
2008/06/13(金) 21:24:54バッファオーバーラン
今時そんなバグを平気で出しちゃうCプログラマは
偉そうにTCHAR型の講釈している場合じゃないよ
0213デフォルトの名無しさん
2008/06/13(金) 21:25:280214デフォルトの名無しさん
2008/06/13(金) 21:31:45ある条件を満たしたとき、(タスクバーの)(右)隣のウィンドウに切り替えたいんですけど。
Alt+Tabのキーボードエミュレートだと、直前のやつにしか切り替え不可ですよね・・?
Tabの押す回数をうまく制御すればいいんですかね?
他にもっとスマートな方法ありますか??
あと、上記のような不特定多数のタスクがある状況で動くものと、
特定の(例えばWMPとか、決まったアプリをアクティブにする)をアクティブにするものも知りたいです。
ちなみにC++(VC2008ExpressEdition)です。
ご教授のほどお願いします。
0215デフォルトの名無しさん
2008/06/13(金) 21:36:05FindWindow
GetWindowThreadProcessId
SetActiveWindow
SetForegroundWindow
0216デフォルトの名無しさん
2008/06/13(金) 21:36:2880文字分しかないバッファに300文字コピーしたら
バッファオーバーランするに決まってるだろ。
0217デフォルトの名無しさん
2008/06/13(金) 22:08:450218デフォルトの名無しさん
2008/06/13(金) 22:09:500219デフォルトの名無しさん
2008/06/13(金) 22:11:450220デフォルトの名無しさん
2008/06/13(金) 22:31:36単純明快かつわかりやすい回答、ありがとうございます。
0221デフォルトの名無しさん
2008/06/13(金) 22:34:570222デフォルトの名無しさん
2008/06/13(金) 22:39:30騙りウザイ
0223デフォルトの名無しさん
2008/06/13(金) 22:40:53>>203
>>209
埋め込んだメディアプレイヤーを透明にするということは難しいということですね。。
別の方向で検討します。
レスありがとうございました。
0224デフォルトの名無しさん
2008/06/13(金) 22:45:300226デフォルトの名無しさん
2008/06/13(金) 22:49:290227デフォルトの名無しさん
2008/06/13(金) 22:54:070228デフォルトの名無しさん
2008/06/13(金) 22:55:290229デフォルトの名無しさん
2008/06/13(金) 23:10:01> 例えばWMPとか、決まったアプリをアクティブにする
とあったので、特定のアプリをアクティブにするならプロセスIDから逆引きすればいいよってこと。
0230デフォルトの名無しさん
2008/06/13(金) 23:43:22どんな引数を与えられても交差しない図形を描くことは出来ないのでしょうか。
0231デフォルトの名無しさん
2008/06/13(金) 23:56:05交差しない順で自分で頂点を並べればいいだろう。
ちょっと考えれば、順不同で与えられた頂点から、辺が交差しない図形は
一意で求まらないことくらい分かりそうなもんだが。
0232デフォルトの名無しさん
2008/06/13(金) 23:56:42質問の意味はよくわからんが、細かく制御したいなら自分でやれば。
0233デフォルトの名無しさん
2008/06/14(土) 00:10:180234デフォルトの名無しさん
2008/06/14(土) 00:22:140235デフォルトの名無しさん
2008/06/14(土) 00:29:560236デフォルトの名無しさん
2008/06/14(土) 00:36:560237デフォルトの名無しさん
2008/06/14(土) 00:46:13レイヤードウィンドウでもWM_PAINTがほとんど飛んでこなくなるし、DirectXベースっぽいし。
思うに、レイヤードウィンドウがDX7だったのに対してDWMがDX9になっただけな気がする。
もちろん色々と変わってるだろうけど(GDIをソフトレンダラ化とか)、DWMでやってる事って
半分ぐらいはWindows2000で既に実現できていたんじゃないのかなぁ。
0238214
2008/06/14(土) 01:21:17「今アクティブなウィンドウ(アプリ)の、“タスクバーにおける(右)隣”のウィンドウへアクティブを移す」を実現したいのですが、
要はこれって「タスクバーでいうと隣」のウィンドウのハンドルを取得、それを使ってアクティブにすればいいんですよね?
だけど「タスクバーで隣」っていうのをどう条件設定すればよいのかわからず・・・。タスクバーを右に右に推移(+右端だったら左端に動くように)させたいのですが・・。
なんかヒントください!
0239デフォルトの名無しさん
2008/06/14(土) 01:25:08タスクバーをフックする
そして次のバージョンのWindowsで死亡
0240デフォルトの名無しさん
2008/06/14(土) 08:27:48どうかご教授おねがいします
。
FILE* fp;
_tfopen_s( &fp, _T("hoge.txt"), _T("w,ccs=UTF-8"));
fseek(fp, 0, SEEK_SET );
_ftprintf_s( fp, _T("hogehoge"));
_setmode( _fileno( fp ), _O_BINARY );
_ftprintf_s( fp, _T("\n"));
_setmode( _fileno( fp ), _O_TEXT );
_ftprintf_s( fp, _T("あいうえお"));
fclose(fp);
MSDN見る限りではこう作れってかいてあるのですが、どうも_setmodeの挙動がおかしいようで...
0241デフォルトの名無しさん
2008/06/14(土) 09:14:00自分でメモリ上にUTF-8, LF改行のデータを作って、
ただのバイナリモードで一気に書きこんだらどうかと思う。
というかスレ違い。
0242デフォルトの名無しさん
2008/06/14(土) 10:13:39_setmode( _fileno( fp ), _O_U8TEXT);
0243デフォルトの名無しさん
2008/06/14(土) 10:53:27ググってみても背景色の変更はあるのですが背景に画像を埋め込む方法は見つかりません。
0244デフォルトの名無しさん
2008/06/14(土) 10:57:51無理。IEコンポーネントでも使え
0245243
2008/06/14(土) 11:01:490246デフォルトの名無しさん
2008/06/14(土) 11:24:300247デフォルトの名無しさん
2008/06/14(土) 14:21:30エディットコントロールと違って何も表示されないんだけど
どうすればいいんでしょか
0248デフォルトの名無しさん
2008/06/14(土) 14:54:24間違えてここに書いちゃいました。
C++相談室で聞いてきます。
>>242
実はこれはいろいろためしてたときのソースがそのまま残ってました。
_setmode( _fileno( fp ), _O_U8TEXT);
もすでに試してたけど、なぜかCRLFになるので、ダメでした。
0249デフォルトの名無しさん
2008/06/14(土) 15:10:510250デフォルトの名無しさん
2008/06/14(土) 15:20:35・かまってちゃんの煽りにもきちんとかまってくれます。
をテンプレに追記汁
0251デフォルトの名無しさん
2008/06/14(土) 15:45:05WaitForInputIdleのスレッド版、のようなモノです。
自前でフラグでも立てて調べ続けるしかないのでしょうか。
0252デフォルトの名無しさん
2008/06/14(土) 15:50:57■ このスレッドは過去ログ倉庫に格納されています