Win32API質問箱 Build91
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/11/08(月) 02:01:42やさしいお兄さんやHなお姉さんたちが答えてくれるかも。
「知らないならレスしないで下さい。ウザイだけです。 」なんて言わないでねっ!
■過去スレ
Win32API質問箱 Build90
http://hibari.2ch.net/test/read.cgi/tech/1287205063/
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版( http://msdn.microsoft.com/en-us/library/ )の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- Win32API質問箱 wiki
http://wiki.livedoor.jp/program1/d/FrontPage
過去スレはwikiから探してください。
0784デフォルトの名無しさん
2010/12/14(火) 10:19:300785デフォルトの名無しさん
2010/12/14(火) 10:24:02クズがクズに教えても何も解決しない
もはや存在意義なし
0786デフォルトの名無しさん
2010/12/14(火) 10:32:27結局のところ怠け者の言い訳なんだよね。
0787デフォルトの名無しさん
2010/12/14(火) 10:39:10プログラムの初期化時にCoInitializeかOleInitializeしてるか?
0788デフォルトの名無しさん
2010/12/14(火) 10:39:28それは英語読める方に分類してやってるんだが。それすら出来ないカスは今すぐPGやめろ。
0789デフォルトの名無しさん
2010/12/14(火) 10:41:150790デフォルトの名無しさん
2010/12/14(火) 10:46:20必要な技能 翻訳サイトにコピペしてボタンを押す
0791デフォルトの名無しさん
2010/12/14(火) 10:47:53初歩は頭の良し悪し以前に気合で何とかなる
0792デフォルトの名無しさん
2010/12/14(火) 11:28:470793デフォルトの名無しさん
2010/12/14(火) 11:48:430794デフォルトの名無しさん
2010/12/14(火) 11:50:31海外でも評判よくないw
0795デフォルトの名無しさん
2010/12/14(火) 12:22:49MSDNは名前だけでMSは無関係
0796デフォルトの名無しさん
2010/12/14(火) 12:41:04え?
0797デフォルトの名無しさん
2010/12/14(火) 12:41:460798デフォルトの名無しさん
2010/12/14(火) 12:58:020799デフォルトの名無しさん
2010/12/14(火) 13:13:550800デフォルトの名無しさん
2010/12/14(火) 13:46:200801デフォルトの名無しさん
2010/12/14(火) 13:56:560802デフォルトの名無しさん
2010/12/14(火) 14:00:560803デフォルトの名無しさん
2010/12/14(火) 14:14:260804デフォルトの名無しさん
2010/12/14(火) 14:19:34ConvertStringSecurityDescriptorToSecurityDescriptor
0805デフォルトの名無しさん
2010/12/14(火) 15:51:42MSDNの解説見ると、キューのバッファの処理が違うようなんですけど、
具体的に何が変わって来るのかわかりません。
0806デフォルトの名無しさん
2010/12/14(火) 15:58:440807デフォルトの名無しさん
2010/12/14(火) 16:09:04戻らないと何か不都合があるのか?とか、どう使い分けるのか?とか・・・
具体例を教えて欲しいなあと。
MSDNってほんと解らない。
0808デフォルトの名無しさん
2010/12/14(火) 16:12:06まだ使ってるのに
0809デフォルトの名無しさん
2010/12/14(火) 16:24:07バッファは必ずフリーにしないといけないって決まりなの?
だったらReset使っておけば問題無いのかな?
これってロングメッセージ限定の話だよね?・・・ってそこまで知らないか。
0810デフォルトの名無しさん
2010/12/14(火) 16:34:01バッファに残った未処理のデータをコールバックで通常処理するならReset
ただちに完了マークをつけるならStop
これのどこが理解できない
0811デフォルトの名無しさん
2010/12/14(火) 16:43:180812デフォルトの名無しさん
2010/12/14(火) 16:45:22いやいや、メモリを malloc で確保したら free で解放しなきゃいけないから
malloc でバッファを確保 → midiInAddBufferに渡す → midiInがバッファにデータを書き込む → バッファが戻ってくる → free でバッファを解放
という流れのプログラムを組むことになるだろ
もちろん malloc/free じゃなくて GlobalAlloc/GlobalFree でもなんでもいいが
もちろんグローバル変数を使うのなら解放する必要はない
ロングメッセージ限定の話
ショートメッセージはバッファ使わない
0813デフォルトの名無しさん
2010/12/14(火) 16:58:360814デフォルトの名無しさん
2010/12/14(火) 16:58:500815デフォルトの名無しさん
2010/12/14(火) 17:06:570816デフォルトの名無しさん
2010/12/14(火) 17:21:40なるほど!バッファのルールがまだよく分かってないんだけど、
なんとなく流れが分かった。
MSDNもこういう具体的な解説付けてくれたらいいのにな。
ありがとうございました。
0817デフォルトの名無しさん
2010/12/14(火) 18:08:070818デフォルトの名無しさん
2010/12/15(水) 00:04:35「システム排他メッセージ」ってやめて欲しいな
「システムエクスクルーシブメッセージ」と呼ぶって、MIDIの規格書に書いてあるだろ
MIDI知らないやつが翻訳するからこうなる
0819デフォルトの名無しさん
2010/12/15(水) 00:17:56midiInStop -> midiInPause
midiInReset -> midiInStop
0820デフォルトの名無しさん
2010/12/15(水) 00:19:23ちょっと調べたい時にスパッと出てくるので便利。
ネットワーク経由のMSDNにはあまり価値がない、
ネットで検索するぐらいならMSDNなんて見ない。
0821デフォルトの名無しさん
2010/12/15(水) 00:21:500822デフォルトの名無しさん
2010/12/15(水) 03:07:540823デフォルトの名無しさん
2010/12/15(水) 03:17:060824デフォルトの名無しさん
2010/12/15(水) 03:39:58そんな貧乏くさいもん使うな
0825デフォルトの名無しさん
2010/12/15(水) 03:44:090826デフォルトの名無しさん
2010/12/15(水) 04:39:220827デフォルトの名無しさん
2010/12/15(水) 05:21:530828デフォルトの名無しさん
2010/12/15(水) 07:37:310829デフォルトの名無しさん
2010/12/15(水) 09:12:130830デフォルトの名無しさん
2010/12/15(水) 09:22:44キミが見ているのは偽物のMSDN。本物はsystem-exclusive messagesと書いてある。
0831デフォルトの名無しさん
2010/12/15(水) 09:36:120832デフォルトの名無しさん
2010/12/15(水) 09:39:150833デフォルトの名無しさん
2010/12/15(水) 15:13:00状態取得のみ可能なAPIってありませんでしたっけ?
0834デフォルトの名無しさん
2010/12/15(水) 16:55:13Raw Inputのこと?
0835デフォルトの名無しさん
2010/12/15(水) 17:17:20(。人。)
0836デフォルトの名無しさん
2010/12/15(水) 20:35:54CRT時代だったら需要のないAPIだと思うけど…
0837デフォルトの名無しさん
2010/12/15(水) 20:39:370838デフォルトの名無しさん
2010/12/15(水) 21:16:470839デフォルトの名無しさん
2010/12/15(水) 21:32:21そういう情報がそもそもないから存在しない
0840デフォルトの名無しさん
2010/12/15(水) 21:35:51俺もだいぶ前から探してるんだけど、どうにも見つからない。
Vista以降のMonitor Configuration APIでモニタの種類を取得とかはできるんだが。
ドライバレベルでは取得できてるようなので、その情報にアクセスできる共通のAPIが
あればいいんだが。
0841デフォルトの名無しさん
2010/12/15(水) 21:50:59VIDEOPARAMETERS Structure
DISPLAY_DEVICE Structure
EnumDisplayDevices Function
0842デフォルトの名無しさん
2010/12/15(水) 21:53:06>プログラムがディスプレイの実際の物理サイズを必要とする場合にはどうしたらよいのだろうか?
>おそらく、最良の方法は、ダイアログボックスを使ってユーザに直接入力してもらうことだろう。
0843デフォルトの名無しさん
2010/12/15(水) 21:53:32ずるいよ^^
0844デフォルトの名無しさん
2010/12/15(水) 21:58:390845デフォルトの名無しさん
2010/12/15(水) 22:01:450846デフォルトの名無しさん
2010/12/15(水) 23:05:17どうして
0847デフォルトの名無しさん
2010/12/15(水) 23:11:27自分がペゾルド本をせっせと調べているうちに正解が書きこまれたので^^;
0848デフォルトの名無しさん
2010/12/16(木) 00:04:41ネイティブ解像度のこと?物理的なサイズ?それとも私?
0849デフォルトの名無しさん
2010/12/16(木) 00:23:070850デフォルトの名無しさん
2010/12/16(木) 00:23:32定規持ってインチ数を測ってピクセル数を割る
0851デフォルトの名無しさん
2010/12/16(木) 00:25:03WM_SIZE とか WM_WINDOWPOSCHANGED とかのメッセージを捕まえて
MoveWindow とか SetWindowPos で適宜変えてください
0852デフォルトの名無しさん
2010/12/16(木) 01:19:46それと同じ表示をするコントロールは、何かありますか?
SHBrowseForFolder()を使うと、フォルダーを選択するダイアログを表示できる
ところまでは分かったのですが。それと同じ表示をするものをウィンドウクライアント上に
コントロールとして貼りたいです。
0853デフォルトの名無しさん
2010/12/16(木) 01:22:120854デフォルトの名無しさん
2010/12/16(木) 01:28:460855デフォルトの名無しさん
2010/12/16(木) 01:37:31やはりTreeViewコントロールを利用して、自作するしかない感じですね><;
情報ありがとうございました
0856デフォルトの名無しさん
2010/12/16(木) 02:18:16自分で作る場合はShellAPI関係経由で実装はできると思うけど。
0857デフォルトの名無しさん
2010/12/16(木) 07:53:480858デフォルトの名無しさん
2010/12/16(木) 09:04:030859デフォルトの名無しさん
2010/12/16(木) 12:51:550860デフォルトの名無しさん
2010/12/17(金) 06:38:55だから、APIとATLとCOMについてはかなり詳しく知っている。
0861デフォルトの名無しさん
2010/12/17(金) 07:22:26言うのはこのスレだけにしとけよ。
0862デフォルトの名無しさん
2010/12/17(金) 07:49:09そのわりには、このスレの回答レベルかなり低いけど
0863デフォルトの名無しさん
2010/12/17(金) 07:49:09どうせ匿名だし誰か判らないんだから意味無いよね
0864デフォルトの名無しさん
2010/12/17(金) 10:07:42msdn libraryを見ればわかる質問とスレ違いの質問しか無いから
0865デフォルトの名無しさん
2010/12/17(金) 16:14:350866デフォルトの名無しさん
2010/12/17(金) 17:43:58ナビゲーションバー出る?
0867デフォルトの名無しさん
2010/12/18(土) 00:18:12C++でPlatform SDKとVisualStudio(VS)・そのリソースエディタを使って組んでいるのですが、
Windows7のそれのような見た目を持つコントロール(緑色のプログレスバーなど)を
利用するにはどうすればいいのかヒントを教えていただけないでしょうか。
これまでのアプリをWin7上で実行するとコントロールの見た目が勝手に置き換わる、
と思ったらそうではなかったので
(ウィンドウのタイトルバーの見た目は勝手に置き換わって半透明になってます)。
Win7にインストールしたVSのリソースエディタ上ではWin7の見た目になっているので、
できないことはないと思うのですが。
0868デフォルトの名無しさん
2010/12/18(土) 00:24:280869デフォルトの名無しさん
2010/12/18(土) 00:37:530871デフォルトの名無しさん
2010/12/18(土) 01:04:43>>870
後出しは世界中のどこでも嫌われる
そう思うなら2010でやってみる
0872デフォルトの名無しさん
2010/12/18(土) 01:07:000873デフォルトの名無しさん
2010/12/18(土) 01:10:15いぐらぐらいするんですか?
0874デフォルトの名無しさん
2010/12/18(土) 01:11:040875デフォルトの名無しさん
2010/12/18(土) 01:15:470876デフォルトの名無しさん
2010/12/18(土) 01:20:450877デフォルトの名無しさん
2010/12/18(土) 01:24:29http://www.microsoft.com/japan/visualstudio/
訪問記念で訪れた僕でさえ2010使ってるんですから
0878867
2010/12/18(土) 01:26:50そうですよね、すみません。さらに言うと2008のSP1でした。
2010はexpressだとリソースエディタが使えないのでインストールしてないのですが、
今度インストールして試してみます。
>>872
おおおこんなものが出てたんですね、存在すら知りませんでした、ありがとうございます!
ざっと見たところ、.NET系のプログラミングに使えるものであって、
DialogBox()でダイアログリソースを渡して…という(PlatformSDK的?な)やり方では
利用できないような印象を受けましたが、もうちょっと詳しく調べてみます。
>>875
さらにヒントをありがとうございます。
ちなみに873は俺じゃないです。
みなさんありがとうございました。
0879デフォルトの名無しさん
2010/12/18(土) 01:28:43わざわざそれより古いPlatform SDK使ってるのかよ
0880867
2010/12/18(土) 01:29:260881867
2010/12/18(土) 01:36:35俺がやってるのは新規プロジェクトからWin32アプリケーション(コンソールじゃないほう)を
選んでOKで進めてCreateWindow()やらDialogBox()で書いていくような、
”猫でもわかるプログラミング”のSDK編にリソースエディタを足したようなやりかたです。
てっきりこのやりかた=Platform SDKを利用したやりかただと思ってました。
(というのもVisualStudio2005のexpressを使っていた頃は、VS2005に加えてPlatform SDKを
インストールしないとビルド出来なかったからです。)
0882デフォルトの名無しさん
2010/12/18(土) 01:42:27なんでこんな基本的な事をちゃんと答えてやれないんだ?
0883867
2010/12/18(土) 02:18:32情報ありがとうございます!
manifestってコントロールの外観を変えるのに使えるんですね!
単語は目にしていましたが特に触らなくてもこれまで困らなかったので何に使えるのかも知りませんでした。
ふむ…(一周前になりますが)2000ルックのコントロールをmanifestでXPルックのlunaにできると…。
Windows SDK for Windows7とmanifest、この2つについて調べようと思います。
みなさんレスありがとうございました。
■ このスレッドは過去ログ倉庫に格納されています