Win32API質問箱 Build122 at TECH
Win32API質問箱 Build122 - 暇つぶし2ch624:デフォルトの名無しさん
16/07/14 17:19:24.24 B29KeyPb.net
>>606
だから「発音としてはトアを繋げるが」って言っただろ?
今は表記の話をしてるんだから発音を持ち出すのは論外
脳が腐ってるとでも言えばいいのか

625:デフォルトの名無しさん
16/07/14 18:16:03.32 SkoSK+Cn.net
>>607
トの方が近いのは認めるわけね。耳が腐ってないようで何よりだ
トアを繋げる? 繋げて読んでもtaにはならんよ? カタカナの読み方を知らないのか? 母音を抜いて読むって意味か?
俺は日本語文書なら矩形と書くから正直どうでも良いのだが、
>>607は日本語文書でレクトアングルと書いてそれを読むときにどう発音するのか少し興味があるわ

626:片山博文MZ ◆T6xkBnTXz7B0
16/07/14 18:24:20.97 MWHMm7Lx.net
質問です。
無効なウィンドウの子ウィンドウへアクセスできるようにしたい
URLリンク(teratail.com)

627:デフォルトの名無しさん
16/07/14 18:28:15.19 B29KeyPb.net
>>608
発端は発音の話でもないし発音の話するにしてもtaでもないんだが・・・
発音記号調べてみろ
トは実際にはtoじゃなくtの無声音、アはaじゃなく「ae」を1文字にしたような発音
can Iをキャナイと書かずにキャンアイと書くのと一緒

628:デフォルトの名無しさん
16/07/14 18:46:20.12 NIa9yA68.net
ワンナウトはワンアウト?

629:デフォルトの名無しさん
16/07/14 19:01:59.45 QNDyLPqn.net
ラインナップ
サインナップ
クレラップ

630:片山博文MZ ◆T6xkBnTXz7B0
16/07/14 19:40:30.77 5AZo8uCy.net
disabledなウィンドウで子ウィンドウをマウス操作をできるようにするには
どうしたらいいんだよーーー。IME完成のために是非ともだれか協力して下さいよ。

631:デフォルトの名無しさん
16/07/14 19:59:28.71 4EAHdFnp.net
汎用機->ぼんようき
改竄->かいチュウ

632:デフォルトの名無しさん
16/07/14 20:07:48.69 xdDz/Zrt.net
enableにすればいいだろ。
それで外見をdisabledな感じにしてやればいいだろ。

633:片山博文MZ ◆T6xkBnTXz7B0
16/07/14 20:10:29.52 5AZo8uCy.net
>>615
IMEのUIはWS_DISABLED | WS_POPUPスタイルじゃないといけないって、
IME開発の文書に書いてあるんだよー。

634:片山博文MZ ◆T6xkBnTXz7B0
16/07/14 20:16:18.16 5AZo8uCy.net
MSIMEは確かにWS_DISABLED | WS_POPUPが付いていた。
特殊なスタイルだから、子ウィンドウ操作を可能にするには、特殊な技術が必要みたい。

635:片山博文MZ ◆T6xkBnTXz7B0
16/07/14 20:33:23.84 5AZo8uCy.net
ATOKさん、僕にこっそり教えてくれないかなあ

636:デフォルトの名無しさん
16/07/14 20:38:10.27 SkoSK+Cn.net
>>610
カタカナは表音文字なのだから表記を問題にしたら発音が問題になるのは当たり前
カタカナのトの発音はtの無声音ではないしアの発音は発音記号のaeでもない
1語なのだから元の発音に近いレクタングルの方がしっくり来る人の方が多いのは>>602を見ても分かる

637:デフォルトの名無しさん
16/07/14 20:43:48.54 B29KeyPb.net
>>619
主語入れ替えてややこしくすんな
お前が「発音聞いて~」って話しだしたんだろw
実際の発音ではトは母音まで発音しない
しっくり来てるって勘違いしてる人が多いのは>>605を見ても分かる

638:デフォルトの名無しさん
16/07/14 20:48:13.59 4Ps/X1K6.net
あ・す・ぺ

639:デフォルトの名無しさん
16/07/14 21:16:12.02 SkoSK+Cn.net
>>620
おまえが先にトアを繋げるがタではないとか発音の話を始めたのだが?

640:デフォルトの名無しさん
16/07/14 21:21:29.74 B29KeyPb.net
>>622
実際の発音に近づけるためにタを使ってるんだろうから説明したまでで
表記としてタを使うのはおかしいって指摘なんだが

641:デフォルトの名無しさん
16/07/14 21:32:17.14 SkoSK+Cn.net
>>623
うん、「決してタではない」ってのはrectangleのtaの部分は日本語のタの発音ではないから表記としてタを使うのはおかしいって意味だよね?
俺はその理屈だと日本語のトタを繋げたものの発音とも違うから表記としてトタを使うのはおかしいって理屈になっちまうのでは?
と言ってるだけなのだが
>>605の辞書表記あたりを掘り下げた方が説得力があると思うよ
何度も言うが俺はカタカナで書かないからどちらでもいい

642:デフォルトの名無しさん
16/07/14 21:36:07.21 SkoSK+Cn.net
トタじゃないトアだw

643:575
16/07/14 21:51:08.02 DIavJ9e4.net
あの後、自鯖がリモートで操作できなくなってたので遅くなりましたが、復旧したので続きです。
(ルーターが死んでいた)
結論から言うと、あれから特に何をした記憶はないのですが、何も修正しないままステータス"302"が
返ってくるようになりました。(´・ω・`)
誠にお騒がせしました。
>>579
テストしてみましたが、結果的にHttpSendRequestは使わなくても問題なかったようです。
>>582
ファイル・データの種別を埋め込んだり取り除いたりするのが手間なので、
そこまでする場合はカスタムヘッダーで対応しようと思います。
>>583-586
鯖知識がそう豊富ではないのでよく分かりませんが、結果的にはステータスが取れました。
鯖の設定方法なのかなんなの分かりませんが、たまたまかも知れませんしそもそも
DNS鯖が本当にリダイレクトしているたのかは分からないので、今回はとりあえず切り上げて
この辺にしておきます。
みなさんありがとうございました。

644:デフォルトの名無しさん
16/07/14 23:25:53.49 oNKBkesI.net
日本語ではシラブル(音節)とモーラ(拍)は一致しない場合がある
Rectangleを片仮名で扱うと
シラブルは レク-タン-グル
モーラは レクト-アングル

645:デフォルトの名無しさん
16/07/14 23:28:12.97 3206dNVB.net
鯖って呼ぶな。ハゲ。

646:デフォルトの名無しさん
16/07/15 00:47:48.70 eggGPVMd.net
ID:B29KeyPbはknowとかstructureをクノウとかストルクツレとか表記すんの?

647:デフォルトの名無しさん
16/07/15 00:58:01.91 b9s190if.net
Virusをウィルスって詠んでるのがいちばん気になる
ヴァイラスだろって

648:デフォルトの名無しさん
16/07/15 05:29:34.42 QotUx/3n.net
>>630
医学の本場ドイツ語読みか,片田舎の米国訛りかの違いというだけだ

649:デフォルトの名無しさん
16/07/15 06:00:42.34 b9s190if.net
いや、ドイツ語詠みはヴィールスでしょ?

650:デフォルトの名無しさん
16/07/15 07:09:41.56 QVui+Lon.net
ウイルス
ウィルス

651:デフォルトの名無しさん
16/07/15 08:43:40.33 Rb/RCJew.net
>>624
「トアを繋げる」って部分がうまく伝わっていないって事はわかったけど
どう言い換えればいいのかわからんからお手上げ
Rect の t無声音とAngle の A有声音を繋げるがいいのか
もういいけどw
>>629
なんでw
発音しない部分はカタカナでも表記する必要ないし
そう表記するならRectangleはレクタングレになってしまわないか?
>>630
zeroはどうなるんだろ

652:デフォルトの名無しさん
16/07/15 09:58:27.87 usIPH4QF.net
トビマストビマス

653:デフォルトの名無しさん
16/07/15 12:54:00.11 Eu6FxgWv.net
レクトアングル
これ以外は俺が気に入らないから認めない(キリッ
って事だよね?
結局のところ。

654:デフォルトの名無しさん
16/07/15 13:05:07.34 ru6AcSPK.net
ルーター

655:デフォルトの名無しさん
16/07/15 14:17:59.85 8P+uiz2j.net
DLLがexeから利用されたときに
DLLファイルが置かれている場所のpathを
DLL内の関数自身で調べる方法はありますか?
GetModuleなんとかだとexeのpathになってしまうみたいで

656:デフォルトの名無しさん
16/07/15 14:23:09.69 8P+uiz2j.net
>>630
Windowsはどうみてもウィンドウズなのに
ほとんどの出版物ではウインドウズになってる不思議

657:デフォルトの名無しさん
16/07/15 14:25:09.57 orjbVXED.net
うぃんどぅず

658:デフォルトの名無しさん
16/07/15 14:29:37.06 orjbVXED.net
>>638
DLLにはDllMainがあり、そこでインスタンスハンドルを受け取るでしょ?
このハンドルをゲッツモデュールなんとかに渡せばいい。
試してないけど。

659:デフォルトの名無しさん
16/07/15 14:35:14.90 8pBeZ5fQ.net
char lpHoge[MAX_PATH];
GetModuleFilename(GetModuleHandle("dll名(フルパスを書かない&拡張子なし)"), lpHoge, sizeof(lpHoge));

660:デフォルトの名無しさん
16/07/16 11:22:44.34 Tq5Mh+3Z.net
>>618
IMEは全然知らないけどMozcはソース公開されているから見てみれば?

661:片山博文MZ ◆T6xkBnTXz7B0
16/07/16 15:54:44.86 DpW5llC4.net
>>618 >>643
別のアプローチで解決しました。

662:デフォルトの名無しさん
16/07/16 16:50:52.70 nf9EfIu5.net
>>644
どうやったの?

663:片山博文MZ ◆T6xkBnTXz7B0
16/07/16 17:01:30.11 DpW5llC4.net
>>645
IMEパッドをIMEに組み込まず、別プロセスにしました。
実装方法はソフトキーボードのサンプルを参考にしました。

664:デフォルトの名無しさん
16/07/17 23:10:46.10 RtgpWl6x.net
質問
Win32 APIに1:1の片方向で良いのでスレッドAからスレッドBに確実にデータを渡すしくみで軽量なやつって何か無い?
イメージとしてはITRONのメールボックスとかメッセージキューみたいなやつキボン
軽量さの比較対象としては、イベントとCRITICAL_SECTIONとstd::queue<T>を組み合わせた手製ロジックでデータ渡すのと同等の速度でおk
名前が似てるという意味ではMail slotというのがあったけどもメッセージの到達が保障されない。
パイプはプロセス間通信にも使えるということは何か重いイメージがある
スレッドをGUIスレッドにしてデータをウィンドウメッセージに乗せる手も考えられるが、遅そうなのはパイプと同じで
特に理由無く移植性の無い手段をとるのも嫌

665:デフォルトの名無しさん
16/07/17 23:21:22.75 DWSurOc6.net
メモリマップトファイル
軽量かどうかは知らない

666:デフォルトの名無しさん
16/07/17 23:29:01.11 OO2CesJE.net
いや意味わからないし
上の説明読んで、なんでそれになるの?
なんで?

667:デフォルトの名無しさん
16/07/17 23:31:10.32 OO2CesJE.net
俺が読んだ限りでは、同一プロセス内で他のスレッドにデータ渡すだけみたいだぞ
それも、キューのようなものがお望みと読み取れる
なんで???

668:デフォルトの名無しさん
16/07/17 23:42:12.52 SSOeGMhs.net
>>647
GUIにしなくてもメッセージ使えるぞ

669:デフォルトの名無しさん
16/07/17 23:46:33.31 RtgpWl6x.net
希望としてはメッセージキューみたいなやつなんですが、
「1:1の片方向で良いのでスレッドAからスレッドBに確実にデータを渡すしくみで」ときの
定番手段だったり
スゲーすっきり書けるとかチョー軽量であるとかいった圧倒的なアドバンテージがあるやり方なら
キューでなくてもおk

670:デフォルトの名無しさん
16/07/17 23:48:46.90 SSOeGMhs.net
そもそもWin32 APIと言ってながら移植性の無い手段をとるのも嫌ってどういうことだよ?

671:デフォルトの名無しさん
16/07/17 23:49:52.72 RtgpWl6x.net
いやスマン
「スレッドAからスレッドBに確実にデータを渡す」というのを
スレッドを極力待たせずに(軽量に)やるには
結局キューしか有り得ないのかorz

672:デフォルトの名無しさん
16/07/17 23:52:23.11 wQIeqVrk.net
data_seg

673:デフォルトの名無しさん
16/07/18 00:00:01.33 7oHxM0p4.net
定番は自分で書いたような手製ロジックなんじゃないか?
あとはSendMessageでWM_COPYDATA とかClipboardとかPostThreadMessage使うとか
だってさ、Win32 APIに軽量確実簡単なAPIがあるなら普通誰でも使うだろ?
でもそうではなく定番とも言える方法が別にあるってことは、
Win32 APIにはそういうものがないか、使い勝手が悪いとかってことだろ

674:デフォルトの名無しさん
16/07/18 02:07:44.74 0GzfAsTo.net
>>650
確実に渡したいと読んだからキュー形式を無視してそう書いただけ
何ならグローバル変数でも使っとけば()

675:デフォルトの名無しさん
16/07/18 05:44:07.83 GAeyefCK.net
>>656
同一プロセスならヒープでも大丈夫だろ?
後はアドレスを渡すだけだから、WM_USERで充分な気が。

676:デフォルトの名無しさん
16/07/18 12:04:45.51 DGcnITue.net
>>657
いやそこじゃなくて、どうして「メモリマップトファイル」なの?
同一プロセスの他スレッドにデータ渡すだけなのに?
確実さと軽量さをとるなら、>>657も書いている通り
ヒープでも十分だし、君の書いているグローバル変数の配列でもよいだろう
どこからメモリマップトファイルが出てきたの?

677:デフォルトの名無しさん
16/07/18 12:15:54.77 0GzfAsTo.net
適当に思いつきで書いたものに必死に噛みつかれてもな
使えない訳でもなし

678:デフォルトの名無しさん
16/07/18 12:42:39.25 zK0e5um3.net
無責任過ぎワロタ
思いつきの適当な回答を教えんなよ

679:デフォルトの名無しさん
16/07/18 12:46:38.94 DeXLreOM.net
>>647
DLLで共有したらいかんのか

680:デフォルトの名無しさん
16/07/18 12:47:34.09 DeXLreOM.net
ああ >>655 で出てるな

681:デフォルトの名無しさん
16/07/18 12:50:40.83 DeXLreOM.net
>>661
いや擁護する訳じゃないが
メモリマップトゥファイルは誰でも真っ先に思いつく罠
それが重いか重くないか吟味するのは君の責任だ
思いついたことを書いて何が悪い

682:デフォルトの名無しさん
16/07/18 13:02:11.38 5MTfu7xY.net
分かりやすい自演だなぁ

683:デフォルトの名無しさん
16/07/18 13:05:40.41 DeXLreOM.net
>>648 は漏れじゃないよ
割とマジで

684:デフォルトの名無しさん
16/07/18 13:10:52.35 GAeyefCK.net
>>664
お題がスレッド間通信なのに、プロセス間通信に使うための機能の使用を思いついたとして、
一瞬でも考えればそれは違うって分かるだろう?重いかどうかじゃない、お題に合ってないんだよ。

685:デフォルトの名無しさん
16/07/18 13:21:41.19 0GzfAsTo.net
割とマジで自演じゃないなw
一瞬で分かるなら、なおさら必死に噛みつく理由が分からん
メモリマップトファイルを使っちゃいけない呪いにかかった�


686:フか、親でもころされたのか



687:デフォルトの名無しさん
16/07/18 13:23:17.31 rCzir4eP.net
>>664
何で家の中で受け渡しするだけなのに郵便使うんだよ

688:デフォルトの名無しさん
16/07/18 13:38:42.97 9GbCcHr5.net
隣に居る人間に対してでも口頭ではなくメール使ったりするし。。。
メモリマップトファイルが適切かどうかは別として、グローバル変数だって
プロセス間スレッド間通信で使うためのものじゃなくても使える訳だから、
メモリマップトファイルを使っちゃいけないルールじみた言動は宗教じみてもいるね。
つか、グローバル変数だって絶対禁止教の人がいる訳で。

689:デフォルトの名無しさん
16/07/18 13:45:48.44 rCzir4eP.net
>>670
隣にいる人間に対してでもメールってのは後々読み返せるようにだから

690:デフォルトの名無しさん
16/07/18 14:04:51.83 9GbCcHr5.net
>>671
そこマジレス!?ジョークやシャレに軽く乗っかっただけのつもりだったのだが・・・
別に暑中見舞いでも不幸の手紙でも不倫密告でも送ってもよかろ?
目的や理由とその手段なんて、その人の自由だろって話なんだけどね。

691:デフォルトの名無しさん
16/07/18 14:18:12.67 rCzir4eP.net
>>672
使いたければ使えばいいが
人に勧めるのは違う

692:デフォルトの名無しさん
16/07/18 14:26:50.11 GAeyefCK.net
>>670
使っちゃいけないなんて誰が言い出した?
的外れなものを持ち出してくるから、アホか、と言われてるだけなのに、
なんでそんなに必死に擁護するんだろう。

693:デフォルトの名無しさん
16/07/18 14:53:25.84 0GzfAsTo.net
なんか色々スマンが、俺は最初から最後まで一貫して勧めてるわけではないぞ?思いつきの押しつけなんてしてないぞ?
思いつきとか不適切だっ許せないっ(キリッ つーなら、これにいつまでも構って駄レス伸ばすのに荷担するなよ
え?叩きたいだけ?
なら仕方ない、どんどんやれ

694:デフォルトの名無しさん
16/07/18 16:24:53.06 9GbCcHr5.net
>>673
さすがにアレがお勧めされているとは読めなかったよ。
>>674
的外れかどうかの判断を含め、取捨選択は人の自由だよって話の本質は分かって貰えないのだろうか。
ぶっちゃけ、個人的にはグローバル変数を使うのは宗教上NGなので、それも的外れなんだよね。
宗教戦争したい?

695:デフォルトの名無しさん
16/07/18 16:37:48.59 GAeyefCK.net
不適切な例を出すからバカにされただけなのに、
宗教戦争始めるとか、芯からバカなんだろうなorz

696:デフォルトの名無しさん
16/07/18 16:41:08.98 9NIJsINm.net
clipboard とか言ってる奴までいるのにメモリーマップトファイルに噛みついてる奴ってなんなんだろう...

697:デフォルトの名無しさん
16/07/18 17:37:38.75 +UjiZUGj.net
lock free queueを一発で回答出来ないボンクラ揃いだからしょうがない

698:デフォルトの名無しさん
16/07/18 20:07:57.95 pMx2hk2n.net
lock free queueって。。。
受け側はどうするんだよ?ビジーループでもさせる気か?

699:デフォルトの名無しさん
16/07/18 20:58:21.67 RVsoZVBC.net
お隣なのになぜメールか、というと送りっぱなしにしたいからなんじゃわ?
メールボックスとかメッセージキューとかはそのためのしくみやし…
一方、グローバル変数とか共有メモリとかヒープとかいうのは
データの置き場所のお勧めかもしれんが
その場所をどう管理するのかについて情報が無い、

700:デフォルトの名無しさん
16/07/18 21:26:03.86 DGcnITue.net
メールのたとえは、同一プロセスの他スレッドにデータを渡すのに
メモリマップトファイルを使うという、回りくどさの例えなんだけど
>その場所をどう管理するのかについて情報が無い、
その意味では、メモリーマップトファイルも同じで
キューのような仕組みはない
君の言い方で言えば、
(同一プロセスの他スレッドにデータを渡すのに)データの置き場所としてお勧めではないし
その場所をどう管理するかについて(キュー的な)情報も無い
だから謎なんだよ
仮に、メモリーマップトファイルがキューのような仕組みを持っていたとしたら
パフォーマンスのことは置いておいたとして、今回の案件の解決策として
選択肢に挙がるのもわかるんだよ
だけど、そんな仕組みはない

701:デフォルトの名無しさん
16/07/18 21:28:11.14 8aWrqcHl.net
なんか一�


702:l必死な奴がいるな割とマジで



703:デフォルトの名無しさん
16/07/18 21:47:02.19 +UjiZUGj.net
>>680
空だったら、スピンロックでもセマフォでも好きな方法で待てば良い

704:デフォルトの名無しさん
16/07/18 22:13:32.46 8ajA/NS2.net
言い負かされちゃったからIDころころしてまで
なんか一人必死な奴がいるな割とマジで

705:デフォルトの名無しさん
16/07/18 22:24:50.75 AmMtLZjt.net
分かるわ

706:デフォルトの名無しさん
16/07/18 22:26:35.28 CLkpKdHA.net
lock free queueはWin32APIじゃないし

707:デフォルトの名無しさん
16/07/18 22:42:43.29 pMx2hk2n.net
indowsメッセージ使わないんだったら、結局質問者自身が書いてる
>イベントとCRITICAL_SECTIONとstd::queue<T>を組み合わせた
が一番いいと思うよ
イベントやミューテックスはstd::なんとかを使うようにすればポータビリティ
も確保できるし

708:デフォルトの名無しさん
16/07/18 23:42:13.68 7oHxM0p4.net
>>679
それはWin32 APIなんですか?

709:デフォルトの名無しさん
16/07/19 00:04:11.91 HAy25S1i.net
このスレはたとえ標準ライブラリで出来ることでも
あえてwin32apiの使用を勧めなきゃいけないのか…

710:デフォルトの名無しさん
16/07/19 00:20:14.62 hDS08Rg2.net
>>690
もとの質問者>>647が「Win32 APIに」と聞いているのに?

711:デフォルトの名無しさん
16/07/19 00:27:33.24 bXwBBqWV.net
にもかかわらずその質問内で「移植性の無い手段は嫌」とか書いちゃってるからそのツッコミはノーカウント

712:デフォルトの名無しさん
16/07/19 01:12:28.51 VCiUgk/F.net
質問が狂ってると全てが狂うってことで終了にしないか

713:デフォルトの名無しさん
16/07/19 01:21:12.76 Y9D4yCz+.net
移植性はwineとReactOSを考慮してるに違いない!

714:デフォルトの名無しさん
16/07/19 01:50:01.67 LK/xSzTK.net
メモリマップトファイルを親の敵として粘着するスレはここですか?

715:デフォルトの名無しさん
16/07/19 02:35:45.78 mO5KAczv.net
>>695
もういいよ。しつこい奴だな。

716:デフォルトの名無しさん
16/07/19 08:10:41.83 pfxIVr9e.net
>>695
周回遅れダサすぎ

717:デフォルトの名無しさん
16/07/19 09:44:02.26 CF9LWmZW.net
恥ずかしいやつ

718:デフォルトの名無しさん
16/07/19 14:29:43.40 fscdSyYa.net
祖父母の敵め

719:デフォルトの名無しさん
16/07/19 18:08:41.69 opFqbMDR.net
真の名の宿敵

720:デフォルトの名無しさん
16/07/21 19:39:03.26 X6luDWDm.net
今の僕になら本当の敵を倒せるかもしれないはずだ

721:デフォルトの名無しさん
16/07/21 19:45:32.55 zIfC/0DQ.net
すみません、どなたかご存知でしたら教えて下さい。
HSPでリッチエディットコントロールを使用していて、
[CTRL]+[V]のキーイベントを捕まえたいのですが、
ENM_KEYEVENTS を EM_SETEVENTMASK で処理して、
WM_notify で EN_MSGFILTER をキャッチし、
MSGFILTER の msg メンバ に仮想キーコードが入っている事まで確認しました。
この時、[CTRL]キーが押されているかどうかは
どのように判断するのでしょうか?
よろしくお願いします。

722:デフォルトの名無しさん
16/07/21 20:00:09.42 X6luDWDm.net
普通にキーが押されたときのイベントを
WM_KEYDOWNとかWM_CHARとかWM_SYSKEYDOWNとかで
捕まえれば良い。

723:片山博文MZ ◆T6xkBnTXz7B0
16/07/21 20:16:33.27 2kJQMeni.net
GetAsyncKeyState(VK_CONTROL) < 0

724:デフォルトの名無しさん
16/07/21 20:17:01.59 UZ6ROzEF.net
>>702
GetAsyncKeyState

725:デフォルトの名無しさん
16/07/21 20:42:52.77 zIfC/0DQ.net
>>703
>>704
>>705
ありがとうございます。不慣れなもので、
WM_KEYDOWN とかは理解できていないのですが、
GetAsyncKeyState という手がありましたね。
EN_MSGFILTER にこだわりすぎていたようです。
ありがとうございました。

726:701
16/07/23 00:50:48.55 CpwLUyh1.net
連続で聞いてばかりで申し訳ないのですが、
hspでプログラムしています。
タスクバー(リバーコントロール)の中にある
言語バーのハンドルを取りたいのですが、
lpClassName = "Shell_TrayWnd"
hTSKB = FindWindow ( lpClassName, 0 )
lpClassName = "ReBarWindow32"
hREBR = FindWindowEx ( hTSKB, NULL, lpClassName, NULL )
lpClassName = "CiceroUIWndFrame"
hIME = FindWindowEx ( hREBR, NULL, lpClassName, NULL )
と記述しているところ、最後の hIME だけゼロになります。
クラス名は間違いないはずなのですが、
何かアドバイスを頂けないでしょうか?
よろしくお願いします。

727:701
16/07/23 01:01:49.74 CpwLUyh1.net
書き忘れていました。
ちなみにOSはWindows7です。

728:デフォルトの名無しさん
16/07/23 11:33:28.94 6lYjBmg5.net
>>707
言語バーは特殊な取り方しないと取れなかったはず
言語バーとハンドルでググれば出てくると思う

729:デフォルトの名無しさん
16/07/23 11:55:38.92 +Jc7SqHC.net
cn = 'CiceroUIWndFrame'
wn = 'TF_FloatingLangBar_WndTitle'
ctypes.windll.user32.FindWindowExA(0, 0, cn, 0)
ctypes.windll.user32.FindWindowExA(0, 0, cn, wn)
ctypes.windll.user32.FindWindowExA(0, 0, 0, wn)
ctypes.windll.user32.FindWindowA(cn, 0)
ctypes.windll.user32.FindWindowA(cn, wn)
ctypes.windll.user32.FindWindowA(0, wn)
どれでも取れるな

730:706
16/07/23 14:35:08.46 CpwLUyh1.net
取れない・・・。
でもありがとうございました。

731:デフォルトの名無しさん
16/07/23 14:37:37.61 6lYjBmg5.net
TF_FloatingLangBar_WndTitle はタスクバーの中にいるときは消える

732:デフォルトの名無しさん
16/07/23 14:40:17.78 6lYjBmg5.net
URLリンク(msdn.microsoft.com)

733:デフォルトの名無しさん
16/07/24 11:42:42.44 gb9BDOha.net
一方ロシアは、鉛筆を使った

734:デフォルトの名無しさん
16/07/24 12:09:19.84 wdZTIji9.net
>>711
割とマジでレスすると
FindWindowExW な関数に char * 渡してたり
FindWindowExA な関数に wchar_t * 渡してたり
すると取れない
実際に char * か wchar_t * かじゃなくて中身の文字列が

735:710
16/07/25 23:42:36.18 1XHx40P1.net
>>715
ありがとうございました。
ご助言の通りでした。お恥ずかしい。
初心者ですみませんでした。

736:デフォルトの名無しさん
16/07/26 11:41:35.07 As2nHGxN.net
>>707
このコードでどうやって >>715-716 みたいな状況が生まれたのか気になるところである

737:デフォルトの名無しさん
16/07/26 12:55:37.89 88gPJO4Y.net
>>717
× lpClassName = "Shell_TrayWnd"
○ lpClassName = L"Shell_TrayWnd"
って事じゃないの
FindWindowEx使うならTCHARだろとは思うが

738:デフォルトの名無しさん
16/07/26 15:24:12.33 As2nHGxN.net
>>718
>最後の hIME だけゼロになります。
ってことだから上の2つはなんで成功してるんだろ

739:デフォルトの名無しさん
16/07/26 16:01:28.49 88gPJO4Y.net
>>719
最小構成にしたのが>>707で実際のコードとは違うんじゃ?

740:デフォルトの名無しさん
16/07/26 16:22:18.83 As2nHGxN.net
ひとに物尋ねておいて再現しないコード貼るなってことだ罠

741:デフォルトの名無しさん
16/07/26 16:29:34.64 88gPJO4Y.net
そういう意味か
そうだな

742:デフォルトの名無しさん
16/07/26 16:40:25.26 SrQVLHqo.net
自演が強く疑われますね

743:デフォルトの名無しさん
16/07/27 04:24:40.28 AcRDCNCg.net
以下でつまっています。教えてください。
2つウインドウ作っておいて、
2つ目のウインドウの子ウインドウとしてリストボックスを作りました。
この2つ目のウインドウのリストボックスのどれが選択されているかによって、一つ目のウインドウの左クリックの動作を変えたいので、
リストのインデックスを得るために、1つ目のウインドウのプロシージャの case WM_LBUTTONDOWN:  の所に、
index=SendMessage(hWnd3,LB_GETCURSEL,NULL,NULL);

と書きましたが、リスト内の何を選択しても、indexになぜか値が入りません。
(たぶん初期値の0のまま?)
hWnd3は2つ目のウインドウ内にあるリルトボックスのハンドルです。
コンパイルエラーは無いです。
何かやり方が間違っているのでしょうか?
それっぽいワードでググってもよくわかりませんでした。
お願いします。
 

744:デフォルトの名無しさん
16/07/27 06:59:54.52 uZQmv6/V.net
>>724
sendmessageでいいのか?

745:デフォルトの名無しさん
16/07/27 07:09:55.44 8bp4Q/I5.net
>>724
hWnd3 はリストボックスを指しているかな?
親なら、GetDlgItem で取得するべし

746:723
16/07/27 09:02:22.97 AcRDCNCg.net
勘違いに気づきました!
本当にごめんなさい・・・
LB_GETCURSEL と CB_GETCURSEL を勘違いしていました。
自分が作っていたのはリストではなくコンボボックスでした。
お騒がせしました。
>>725
sendmessageは合ってました。
>>726
そんな方法もあるんですね。
それでやってもたしかに動きました。
勉強になりました。

747:デフォルトの名無しさん
16/07/27 15:00:16.07 nl1cCFz0.net
>自分が作っていたのはリストではなくコンボボックスでした。

病院池

748:デフォルトの名無しさん
16/07/28 06:23:06.44 17Ger5zU.net
>>706
WM_KEYDOWN の処理とかで使うなら Async無しの GetKeyState の方が玄人感が出ていいぞ。
違いは今のキーボードの状態を返すか(Asyncあり)、イベントメッセージが生成された時の状態を返すか(Async無し)。
ソースはms
An application calls GetKeyState in response to a keyboard-input message. This function retrieves the state of the key when the input message was generated.

749:デフォルトの名無しさん
16/07/28 19:08:46.10 O8Vfrh0P.net
相対論的手法での時間差の検出ですねわかります

750:デフォルトの名無しさん
16/07/28 20:36:50.94 svsTqv0A.net
Ctrl+マウスボタンとかの同時押しが妙に反応悪くて
心持ちグッとしっかり押さないと誤爆する
こういうアプリはたいていGetKsyState使うべきところでAsync使ってる

751:デフォルトの名無しさん
16/07/30 06:12:19.39 OSfj7rnr.net
質問ですが、
Win32 APIがスレッドセーフかそうでないかって何見ればわかりますか

例えば、同一のPTP_TIMERオブジェクトに対して
複数スレッドからSetThreadpoolTimer()を呼ぶのは安全なのか
どうなのか、とか
(PTP_TIMERオブジェクトをスレッドごとに持たせれば気にしなくて良い問題でつが

752:デフォルトの名無しさん
16/07/30 08:35:21.11 /DtHQMWG.net
同一の資源を別スレッドからアクセスして大丈夫なんてケースあるの?

753:デフォルトの名無しさん
16/07/30 08:52:51.28 9HEOOrL7.net
そのAPIのリファレンスに特別に書かれているもの以外は
基本全部スレッドセーフじゃなかったかな

754:デフォルトの名無しさん
16/07/30 09:14:23.59 RbMYjVy2.net
>>732
スレッドセーフと言う用語を誤解してると思うが、Win32 APIは全部スレッドセーフ
但し、CreateWindowしたスレッドでなければGetMessage出来ない、と言ったように制限のあるリソースもある

755:デフォルトの名無しさん
16/07/30 09:21:37.15 M4L+hnKH.net
>>733
例えば CRITICAL_SECTION は大丈夫でないと意味ないだろ

756:デフォルトの名無しさん
16/07/30 19:35:42.57 qgpylzNJ.net
>>735
どえらい勘違い野郎だなwww

757:デフォルトの名無しさん
16/07/30 19:41:09.46 +Mfyjjwe.net
どの変が勘違いか指摘できないと無意味

758:デフォルトの名無しさん
16/08/01 07:11:12.23 ZUhN/k0j.net
あれに分かるように指摘するのは壮大すぎて難しいし、他の人は分かってるから指摘する必要がない

759:デフォルトの名無しさん
16/08/01 07:54:22.07 bxVY0FqG.net
2日間必死で検索したけど、見つからなかったんだね。

760:デフォルトの名無しさん
16/08/01 08:09:40.24 ZUhN/k0j.net
いや俺は他人だが
comっぽい実装を持つapiは自前でCoMarshalなんちゃらかんちゃしてあげるか、
排他して用いる�


761:謔、に気をつけるかしないとならないじゃん。shell関連とかね。



762:デフォルトの名無しさん
16/08/01 08:19:17.96 rR9gK78k.net
他人ならそんな必死になることも無い
むしろ他人に説明できて初めて理解できていると言える

763:デフォルトの名無しさん
16/08/01 08:40:04.34 uRXdR+1Y.net
>>741
API がスレッドセーフかどうかと
その API が使うリソースを排他制御しないといけないかどうかは別の話

764:デフォルトの名無しさん
16/08/01 09:05:44.58 ZUhN/k0j.net
リソースの話ではない。
メソッド呼び出しを同期化するための手段。
>>742
必死になってるわけではなくて「Win32は全てスレッドセーフ」はあまりにも乱暴だからついて。

765:デフォルトの名無しさん
16/08/01 12:55:43.69 +SXwg/r8.net
>>744
>>741 はどう見てもリソースの話だが?
> 「Win32は全てスレッドセーフ」はあまりにも乱暴だから
ならスレッドセーフでない API を示せばすむ話

766:デフォルトの名無しさん
16/08/01 13:47:23.41 lahy9Ajd.net
ここなら分かる人がいると思うので質問させて頂きたいのですが、
例えば
WinApp1.exe
WinApp2.exe
の二つのWindows上のアプリがあり、WinApp1.exeのウインドウを
WinApp2.exeのウインドウに埋め込む事は可能ですか?
要するにhtmlのiframeで他のページを埋め込む感じです。
ただしソースコードがあるのはWinApp2.exeのみです。1のほうはバイナリのみ
です。

767:デフォルトの名無しさん
16/08/01 13:56:59.55 TMg9tIFo.net
・App1のウィンドウスタイルを変更し、タイトルバーなどを除去する。
・App1のウィンドウハンドルを取得し、App2上にSetWindowPosを使って張り付かせ続ける。

App1側にタイトルバーを表示したり、それを考慮したウィンドウサイズやクライアントサイズを
使って何か描画したり、ウィンドウ位置やサイズを変更するような機構がないなら、比較的すんなり実現できそうな気はする。

768:デフォルトの名無しさん
16/08/01 14:25:13.31 U+4K15gc.net
>>746
昔SetParentを使ってやったことあるけど
親になる側のソースしかない場合は???だね
>>747のようなやり方しかないかも

769:デフォルトの名無しさん
16/08/01 15:52:53.92 lahy9Ajd.net
>>761>>762
ありがとうございました。
とても参考になりました。
やはりWin32スレの人はレベルが高いですね。
またよろしくお願いします。

770:デフォルトの名無しさん
16/08/01 16:30:19.20 JXVULl1x.net
クライアントのHDC取得して
そっから逐次BMPまるごと転送してくればいい

771:デフォルトの名無しさん
16/08/01 16:34:37.67 3q+qs35i.net
マルウェアか? マルウェアだな?

772:デフォルトの名無しさん
16/08/01 18:28:24.75 rR9gK78k.net
>>750
それはApp1のコントロールアクセスを工夫しないとな

773:デフォルトの名無しさん
16/08/01 18:52:10.28 JXVULl1x.net
位置だけシフトしたマウスメッセージ送るだけじゃだめなん?
どうせ >>747 でもキーボードショートカットとかダメそうやし

774:デフォルトの名無しさん
16/08/01 21:29:20.71 YSAWLf5L.net
ウインドウをまとめてタブ化するアプリがこんなことしてた気がする

775:デフォルトの名無しさん
16/08/01 22:00:15.22 3lZxdv2C.net
>>745
素直に教えてくださいって言えよw

776:デフォルトの名無しさん
16/08/01 22:27:18.04 G87zOVs3.net
>>755
言えないなら無理しなくていいぞ w

777:デフォルトの名無しさん
16/08/02 00:17:55.32 JwW5OeU6.net
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
dbghelpとかだな

778:デフォルトの名無しさん
16/08/02 07:23:52.61 FJZ4hdRz.net
>>757
なるほど、あるもんなんだな

779:デフォルトの名無しさん
16/08/02 08:49:44.46 qrxCcvlk.net
>>741
それは自分のコードが作成し管理してるオブジェクトを、作成スレッド以外に触らせるためのAPI
理解せずにおまじないのごとく使ってたんだろうな
あわれな底辺

780:uy ◆e6.oHu1j.o
16/08/07 09:45:06.38 PWyfS198.net
WinAPIの


781:知識量で底辺どうの言ってる奴までいるとか大丈夫かよ ロートルなもの使わざるを得ない時点で負けてんのに



782:デフォルトの名無しさん
16/08/07 10:13:14.64 bbyjljOW.net
底辺なんて表現が日常的に出てくる職場って、かわいそう

783:デフォルトの名無しさん
16/08/07 10:27:49.88 zBYc/KkC.net
数学教師激怒

784:デフォルトの名無しさん
16/08/07 13:05:30.15 sg2m+nAp.net
それを言うなら算数教諭だろうな

785:デフォルトの名無しさん
16/08/09 08:38:11.99 7b7VJDdn.net
江戸っ子激怒

786:デフォルトの名無しさん
16/08/09 14:34:00.24 n5pitoha.net
質問です
DirectXとかOpenGLとかのライブラリって
いちいちステートマシンの状態セットみたいなのがずらずら並ぶんですが
ハードウェアにレジスタセットするみたいなドライバばかりなんですか?

787:デフォルトの名無しさん
16/08/09 19:58:47.64 GFJow9Sf.net
一昔前に流行った
オブジェクト指向というやつです

788:デフォルトの名無しさん
16/08/10 19:36:30.32 IsHQZY3F.net
GPU にプログラム的な指示して後はお任せ という方向にばかり進化してるから

789:デフォルトの名無しさん
16/08/11 11:56:33.25 v2n9djjr.net
object指向じゃなくてvertex指向だな

790:デフォルトの名無しさん
16/08/14 03:26:23.22 MmvWSAs3.net
>>766
今時のナウなヤングはどんな感じなの?

791:デフォルトの名無しさん
16/08/14 17:49:29.23 j6bpKiBS.net
VRAMに直接書き込み

792:デフォルトの名無しさん
16/08/15 22:57:42.57 wycrF0RU.net
win8.1/win10で動作するもので、管理者権限で実行を必要とするものを
(Windowsのサービスを停止、再開)を作りたいのですが、うまく動きません。
sc.exeとnet.exeを呼び出して、
SellExecuteExでコマンドを送っているのですが、うごく動いていません。

環境はvs2015です。ビルドオプションかなにかが必要でしょうか?

SHELLEXECUTEINFO info;
memset(&info, 0, sizeof(info));
info.cbSize = sizeof(info);
info.lpVerb = L"open";info.lpFile = L"net.exe";
info.lpParameters = L"stop 停止させたいサービス名";
info.nShow = SW_SHOWNORMAL;
info.fMask = SEE_MASK_NOCLOSEPROCESS;
ShellExecuteEx(&info);
WaitForSingleObject(info.hProcess, INFINITE);
info.lpFile = L"sc.exe";
info.lpParameters = L"config 停止させたいサービス名 start = disabled";

バッチファイル形式で管理者権限を設定して実行すればうまく動くのですが、
呼び出すAPIが間違っているのでしょうか?
こっちだとうまく動きます。
停止.bat
net stop サービス名
sc config サービス名 start= disabled

ご教授お願いします。

793:デフォルトの名無しさん
16/08/15 23:01:49.24 iamh6a7h.net
info.lpVerb = L゙runas゙ ;

794:デフォルトの名無しさん
16/08/15 23:16:47.36 wycrF0RU.net
>>772
回答ありがとうございます。
ビルドして試しましたが、実機では、サービスが停止していないようでした。
コンソール画面では停止したとは出ていました。
外部呼出しでうまくいけばよかったのですが、これからOpenSCManagerあたり調べてみます。
UAC周りで悪さしているのかなぁ。

795:デフォルトの名無しさん
16/08/16 00:48:14.20 Zc5ax7h8.net
ShellExecuteExでファイルのプロパティダイアログを出すのですが
今どきの広いモニタですと、呼び出したウインドウの上に重なるような位置に表示してくれないと面倒です
引数として親ウインドウのハンドルを渡しているので、
そのくらいやってくれそうな気がするのですが
SHELLEXECUTEINFOに設定できるパラメータを見渡しても、それらしいものは無いよ


796:うなので 自前でダイアログを動かそうかと考えていますが 本当にShellExecuteExの機能として、プロパティダイアログを親ウインドウの上に出すことはできないのでしょうか?



797:デフォルトの名無しさん
16/08/16 09:55:10.07 lvyZIFRY.net
Window の機能じゃなくて Shell の機能だからそういう細かいのは無い

798:デフォルトの名無しさん
16/08/16 11:24:39.96 Zc5ax7h8.net
そうですか
ありがとうございました!

799:デフォルトの名無しさん
16/08/25 13:01:13.59 HVWLzPcg.net
プロセスハンドルからプロセスIDを取得するのってどうやるん?
ハンドル得る時に使ったidを覚えておくしかない?

800:デフォルトの名無しさん
16/08/25 13:12:40.83 EwnmxDlV.net
ハンドルからIDならGetProcessIdが使えるだろ?

801:デフォルトの名無しさん
16/08/25 15:14:16.99 HVWLzPcg.net
OpenProcess関連ばっかり調べてたごめんありがとう

802:デフォルトの名無しさん
16/08/29 18:06:09.51 zb9cEIRR.net
C++初心者スレから紹介されてやってきました。
よろしくお願いします。

その再掲です。

1つのフォームウィンドウをメインフォームとし、
他のフォームはWndParentをそのメインフォームとして子フォームを作成するアプリを作っています。

いま、メインフォームを含めた全フォームをEnableWindowでDisableにし、
新しい子フォームを1つだけ表示させます。要するにモーダルなフォームです。

この状態でアプリケーションを非アクティブにします。
そして、メインフォームをクリックします。
すると、WM_ACTIVATEAPPが送られ、モーダルな子フォームがアクティブになります。
ここまではいいのですが

アプリケーションが非アクティブで、Enableでない別の子フォームをクリックしても
WM_ACTIVATEAPPや、WM_WINDOWPOSCHANGINGが送られてこず
まったくアクティブになりません。Spy++で見たところ、WM_SERCURSORしか
送られてきてませんでした。子フォームのクリックではメインフォームにも何も届きません。

どうやったらDisableされた子フォームをクリックするとアプリケーションが
アクティブになるようになるのでしょうか。

よろしくお願いします。

803:デフォルトの名無しさん
16/08/29 18:26:20.41 sMQdCbqN.net
クリックしても反応しなくなるようにするためのEnableWindowなのよモルダー
フォームそのものはクリックに反応して欲しければ、フォームにEnableWindowを
使わず、フォーム内の操作して欲しくないコントロールをEnableWindowするか
他の工夫をする必要があるわね

804:デフォルトの名無しさん
16/08/29 18:33:18.40 zb9cEIRR.net
そうですか・・・

でも、これでちゃんとアクティブにできるプログラムもあるんです。

エンバカデロのC++ BuilderやDelphiです。
やつらはサイズ0のTApplicationの見えないウィンドウを親ウィンドウとして
同様のコードでちゃんと動作します。

実はソースコードを他の人と共有する必要があって
Delphiじゃまずいかなと、VC++にまるごと移植したんです。

そのときにTApplicationだと、最小化したときにタスクバーにいれられないため
Hideする仕様になってたのがちょっといやで、
メインフォームを本当のメインフォームにするようにしたんですが、
それが原因か、それとも少し省略したせいか、細かいところで挙動が違います。

TApplicationはRestoreTopMostsとかいう関数で常にトップにあったから
そのへんかなと思うのですが・・・・
まあ仕方ないのかなぁ。

805:デフォルトの名無しさん
16/08/29 19:30:24.87 NKz4PvZo.net
>それが原因か、それとも少し省略したせいか、細かいところで挙動が違います。

そりゃかわるわな

806:デフォルトの名無しさん
16/08/29 19:40:13.25 553LWAbc.net
>>782
それは同様のコードでちゃんと動作するとは言わんだろ
VC++でもダミーウインドウを作成するか
EnableWindowで無効にするのではなくて
専用のウインドウプロシージャ(特定の動作しか受け付けない)を作ってそれに切り替える仕様にするとか

807:デフォルトの名無しさん
16/08/29 20:10:51.60 zb9cEIRR.net
突っ込むのはそこ!?

そうじゃなくて、同じようにEnableWindowでDisableしても
なにかしらの方法でアクティブにできるプログラムもあるよっていいたかったんだ。
私がもっと詳しくて、TApplicationの挙動をわかってれば
不具合部分を実装しなおすんだけど、いまいち何をやってるのかわからなくて
直しようがない・・・てのが本当のところです。

なにせ、ダミーウィンドウを作ったところで、どうやったらそいつからウィンドウを
アクティブにできるかわからないので。。。
最悪、メインフォームからも(子フォームになるから)アクティブにできなくなるかもしれない。
TApplicationのWndProcを見ても、DisableされたWindowにWM_WINDOWPOSCHANGINGとWM_ACTIVATEAPPをポストしてる部分がわからない。さっぱりです。

808:デフォルトの名無しさん
16/08/29 20:11:19.06 HNdG8txv.net
WM_SERCURSORが送られて来るんなら
そのメッセージハンドルする時に
EnableWindowすればいいんでは?
マウスのボタンの状態を取得して押されている時は
クリックしたとか判断するフラグ立てて。

809:デフォルトの名無しさん
16/08/29 20:26:10.03 zb9cEIRR.net
やっぱそうだよね。WM_SETCURSORが
WM_LBUTTONDOWNとかもパラメータに持ってるみたいなんで
そこでWM_ACTIVATEAPPを現在のモーダルウィンドウに送ってやるのがいいかと思いました。動くかわからないけど。

TCustomFormのShowModalでは
WindowList := DisableTaskWindows(0);
全ウィンドウを無効化。TApplicationウィンドウを含めて。
で Show;
だから、DelphiのVCLのやり方はやっぱりわからない。
とりあえずWM_SETCURSORで、WM_LBUTTONDOWNみたいなのがきたら
自身がDisableされてたらモーダルウィンドウにポストする、でやってみます。

810:デフォルトの名無しさん
16/08/29 20:31:57.49 sMQdCbqN.net
TApplicationやTCustomFormの実装がどうなってるのか知らないけど、
EnableWindowするとそのウィンドウは操作不能になるのはWin32APIの仕様。
そこんとこUI的に不細工だから、TApplicationとかでは何らかの工夫をしてるんじゃないかしら?

811:デフォルトの名無しさん
16/08/29 20:33:41.85 zb9cEIRR.net
そうだね、きっとうまいことやってるんだと思う。

とりあえず、この方法でアクティブにならなければ、
最悪アクティブなスレッドにアタッチして無理やり入力フォーカスを奪うという
手段も用意されている(この前知った)のでこれでいきます。

812:デフォルトの名無しさん
16/08/29 22:35:39.79 zb9cEIRR.net
WM_SETCURSORで無事うまくいきました。

ありがとうございました。

813:デフォルトの名無しさん
16/08/29 22:48:55.90 zcllQv4V.net
EnableWindowしてもリターンキーやエスケープキー押すときいてしまう不思議

814:デフォルトの名無しさん
16/08/30 11:13:59.38 wDZo+k9K.net
thread の一時停止ってどうやるん?

815:片山博文MZ ◆T6xkBnTXz7B0
16/08/30 12:23:52.68 38hwA1kK.net
>>792
SuspendThread

816:デフォルトの名無しさん
16/08/30 14:53:56.50 XkAkY/BL.net
SuperHawkIII

817:デフォルトの名無しさん
16/08/30 15:10:19.20 8eGP8u09.net
スローなブギにしてくれ

818:デフォルトの名無しさん
16/08/30 23:43:32.45 Un8GLDK5.net
遠い地平線が消えて、 ふかぶかとした夜の闇に心を休める時、
はるか雲海の上を音もなく流れ去る気流は、 たゆみない宇宙の営みを告げています。
満天の星をいただく、はてしない光の海を ゆたかに流れゆく風に心を開けば、
きらめく星座の物語も聞こえてくる、 夜の静寂の、なんと饒舌なことでしょうか。
光と影の境に消えていったはるかな地平線も 瞼に浮かんでまいります。
日本航空があなたにお送りする音楽の定期便 ジェットストリーム
皆様の夜間飛行のお供をするパイロットは私、城達也です

819:デフォルトの名無しさん
16/08/31 01:28:30.78 5rt51UxE.net
>>793
みんなー、世界初!!「体液取引所」ができたお [転載禁止]c2ch.net
スレリンク(news4viptasu板)

1 :片山博文MZ ◆T6xkBnTXz7B0 @転載は禁止:2015/04/27(月) 15:25:59.04 ID:VhXmVBOx0
「体液取引所」
URLリンク(katahiromz.esy.es)

試してみてね。。。ご感


820:想などよろしく。。。 3 :片山博文MZ ◆T6xkBnTXz7B0 @転載は禁止:2015/04/27(月) 15:28:32.37 ID:VhXmVBOx0 男汁、女汁、唾液、おしっこなどの体液を取引できるサイトが できたんだよーーー。 利用者登録すれば使える。使ってみてね。。。 13 :テューンタン ◆msxA1lIh7Ei2 @転載は禁止:2015/04/27(月) 16:43:12.16 ID:h2ozZyBy0 このスレみて昔あった体液フェチの友人がなんたらってスレ思い出した 20 :片山博文MZ ◆T6xkBnTXz7B0 @転載は禁止:2015/04/28(火) 12:30:57.13 ID:kCLcZkq+O 体液取引所は、非技術的問題で閉鎖しました。大変申し訳ありません。



821:デフォルトの名無しさん
16/08/31 03:49:27.75 2/Bxm7SJ.net
【社会】キリン、「氷結」発売中止 原料果汁に偽装の可能性 [無断転載禁止]・2ch.net

822:デフォルトの名無しさん
16/08/31 03:55:15.79 2/Bxm7SJ.net
うーたん @xuph933v 1分
食べすぎ注意!
8/31 3:52 Re RT ☆ 詳細

823:デフォルトの名無しさん
16/08/31 04:02:01.47 2/Bxm7SJ.net
THE BEATLES LYRICS
"Please Mister Postman"

Wait, oh yes wait a minute mister postman
Wait, wait mister postman

Mister postman look and see
Is there a letter in your bag for me
I been waiting a long long time
Since I heard from that girl of mine

824:デフォルトの名無しさん
16/08/31 04:11:06.94 2/Bxm7SJ.net
┌─────────┐
│                              │
│    しばらく空腹のまま お待ち下さい。 .... │
│                 ノ⌒ヽ          │
│             (( (  ○ ), ))       │
│      (⌒⌒)       ヽ__メ´           │
│       |__|   _____ 彡"         │
│       (^ω^)ノ━ヽ___ノ'''゙ ッパ..     │
│       ノ/ :/                     │
│       ノ ̄ゝ                    │
│        Now Cooking ...        │
└─────────┘

825:デフォルトの名無しさん
16/08/31 10:09:26.11 aGvvWmav.net
>>797
保健所からガサ入れ来たか

826:デフォルトの名無しさん
16/08/31 17:22:43.45 ZZEqTkFc.net
URLリンク(detail.chiebukuro.yahoo.co.jp)
↑このコードだとウィンドウが応答なしになってしまいます
どうすればいいでしょうか
よろしくお願いします。

827:デフォルトの名無しさん
16/08/31 18:07:41.76 JrJNK2gn.net
>>803
ループ判定に使ってるフラグにvolatileつけてみて
volatile bool ・・・ね

828:デフォルトの名無しさん
16/08/31 18:18:36.04 ZZEqTkFc.net
>>804
特に変わりないです

829:デフォルトの名無しさん
16/08/31 18:27:20.50 4tIFiDjY.net
ShowWindowじゃなくてShowWindowAsyncだとどう?

830:デフォルトの名無しさん
16/08/31 18:34:13.09 ZZEqTkFc.net
>>806
ちゃんと終了しました
ありがとうございます

831:デフォルトの名無しさん
16/09/01 06:39:35.08 NXhRk3Fv.net
if (GetAsyncKeyState(VK_ESCAPE) & 0x8000)
を削除してTerminateThreadだけにすればいい。

832:デフォルトの名無しさん
16/09/01 18:54:39.95 fjADWK/0.net
CreateWindow で SysDateTimePick32 と DTS_TIMEFORMAT を指定して時間コントロールを作成、
DTM_SETFORMAT で "hh:mm" を指定して時分のみ(秒は表示しない)スタイルで時間指定できるようにしています。

このコントロールをカーソルキーの上下や、スピンコントロールの上下の操作で分の操作をする際は
+10ずつ増減させたいのですが、どうすれば実現できるでしょうか?

833:デフォルトの名無しさん
16/09/02 22:11:24.25 U/mvZpMk.net
矢印キーを押したら+10して表示を更新するようにすればよい。
スピンコントロールも同様。

834:808
16/09/03 19:09:55.84 EfpbXZif.net
>>810
できましあ。
感謝

835:デフォルトの名無しさん
16/09/05 11:33:40.30 mpmtDfhF.net
私ならこうする、という話で詳しい手順は省きますが、
問題の調査をするならこんな感じでしょう。
Windows Sysinternals から Process Monitor を入手します
URLリンク(technet.microsoft.com)
Process Monitor を起動し、Boot Logging を有効にします
Windows を再起動し、問題のメッセージが出るのを確認します
Process Monitor を起動し、ログを保存します
保存したログを Process Monitor で開き、
%userprofile%\AppData\Local\Microsoft\Windows\Burn
以下にどのようなファイル アクセスが行われているのか調べます
Process Monitor についての詳細は、Windows Sysinternals のサイトや
「Windows Sysinternals 徹底解説」
URLリンク(ec.nikkeibp.co.jp)
をご覧ください。

836:デフォルトの名無しさん
16/09/06 20:34:00.68 4l7E9vnw.net
FreeResourceやUnLockResource見たら必要無いって出てくるけど
リソース読み込んだらプロセスが終了するまで占領し続けたりしないん?

837:デフォルトの名無しさん
16/09/07 14:56:31.98 8SeVjemL.net
そうだけどそのリソースはexeファイル内の特定の部分指してるだけだからなあ

838:デフォルトの名無しさん
16/09/07 15:03:50.90 YSZpbVen.net
Lockって名前付いててもロックしてる訳じゃなくてマウントしてるだけみたいな

839:デフォルトの名無しさん
16/09/07 15:03:53.47 zaGYBHu2.net
Win16の頃はメモリを有効活用するためにリソースは移動可能としていた
固定するのがLockResource、使い終わったらアンロックする事でメモリを有効に使える

840:デフォルトの名無しさん
16/09/10 13:11:49.37 Jm2YrF8N.net
20年以上前の古い制約の残骸やで

841:デフォルトの名無しさん
16/09/10 13:20:40.85 TxiqjBPh.net
今WIN16で動いているアプリってあるんですか?

842:デフォルトの名無しさん
16/09/10 13:42:10.96 3gGPay5O.net
windows7以降もしくは、windows8.1以降をターゲットとしたフォントをきれいに見せる方法って
GetGlyphOutlineで自前描画と、DirectWrite使うのどっちが良いでしょうか?

CreateCustomRenderingParamsで、
DWRITE_RENDERING_MODE_DEFAULTとDWRITE_RENDERING_MODE_OUTLINEを試しましたが、
ちょっとボケた感じで、アンチエイリアスのかけすぎな気がする。
DWRITE_RENDERING_MODE_CLEARTYPE_NATURALはちょっと線がいまいち。

CreateCustomRenderingParamsの第三パラメーターのFLOAT clearTypeLevel って数値何を入れればいいんでしょうか?
0-1.0fの範囲? 変化がよくわかりません。
どなたかご存知の方いましたら教えてください。
msdn.microsoft.com/ja-jp/library/windows/desktop/dd368190(v=vs.85).aspxを見ても大雑把な説明でさっぱりです;;

843:デフォルトの名無しさん
16/09/10 13:48:41.54 QUVRyXDh.net
>>818
MonaOS

844:デフォルトの名無しさん
16/09/10 13:49:11.68 QUVRyXDh.net
>>819
FreeType2

845:818
16/09/11 00:52:31.20 80N4ZclY.net
>>821
ありがとです。GPLなどの縛りがないなら検討してみます。

846:デフォルトの名無しさん
16/09/11 15:50:50.25 +/tFZym3.net
すいません。
アプリケーションが落ちたことを知るメッセージか何かあったと思うのですが
教えていただけないでしょうか。

847:デフォルトの名無しさん
16/09/11 16:09:52.36 zF4qt1T7.net
>>823
プロセスバンドル持ってるなら WaitForSingleObject でいいかと
URLリンク(msdn.microsoft.com)


848:429427.aspx



849:デフォルトの名無しさん
16/09/11 18:45:58.69 +/tFZym3.net
>>824
なるほど。
ちょっと調べてみます。
ありがとです。

850:デフォルトの名無しさん
16/09/12 13:43:51.12 uadDl1bC.net
atexit() は呼ばれないのかな

851:デフォルトの名無しさん
16/09/12 23:11:45.62 01Pz4EoL.net
>>826
いきなり落ちるような状況だと呼ばれないでしょ

852:デフォルトの名無しさん
16/09/12 23:26:49.38 Gdi/DDue.net
そんなものはバンドルされてないよ

853:デフォルトの名無しさん
16/09/13 21:38:12.97 zadSVrtv.net
Windows10上でVisual Studio 2015でWin32アプリを作っているんだけど、
SetWindowRgn()を呼ぶと、タイトルバーや最大最小化ボタンなんかの
ウインドウの外見がWindowsXPみたいになるんだけど、これって仕様?
SetWindowRgn()をコメントアウトすると、他のアプリと同様にフラット
なビジュアルになるんだけど、なぜそうなるのかが良くわからない。
解決方法とかあるのかな?

854:デフォルトの名無しさん
16/09/13 21:44:09.67 zadSVrtv.net
XPじゃなくて、Windows95だった。訂正します。

855:デフォルトの名無しさん
16/09/13 22:11:22.82 ATVfKx2c.net
Windows2000だろ

856:デフォルトの名無しさん
16/09/14 08:45:47.11 7JW5y0cu.net
2000といえばそうかな。どうもこれはGDIとDWMが絡む問題っぽい。
リージョンを設定すると、内部的にGDIに強制されてしまうようだ。
それに伴って、ビジュアルも変わるみたい。解決策はなさそう
なので、透明色とかで対応するか・・・。

857:デフォルトの名無しさん
16/09/14 09:10:14.24 XNSEb5OG.net
リージョンなんか忘れろ。
2000以降はlayered windowを使う。

858:デフォルトの名無しさん
16/09/14 10:25:53.22 hCerG0dU.net
8.x以降はDirect Compositionやね

859:デフォルトの名無しさん
16/09/14 14:22:37.20 iWIT7eZb.net
>>829
visualstyleなんたらとか言う属性を
設定するんじゃあないか?

860:デフォルトの名無しさん
16/09/14 18:34:58.98 XNPp97JV.net
manife

861:デフォルトの名無しさん
16/09/16 03:00:17.08 lT9MgRBJ.net
今日も雑魚しかいねーな

862:デフォルトの名無しさん
16/09/17 14:46:30.83 maY60Dp3.net
クラシックスタイル対策

#pragma comment(linker,"/manifestdependency:\"type='win32' \
name='Microsoft.Windows.Common-Controls' \
version='6.0.0.0' \
processorArchitecture='x86' \
publicKeyToken='6595b64144ccf1df' \
language='*'\"")

863:デフォルトの名無しさん
16/09/17 15:12:59.91 UZZ3Nfx8.net
#defineでも使ってprocessorArchitectureを変えたら対応できるな
x86 = 32BitのX86系CPU
ia64 = Intel64BitのIA64系CPU
amd64 = AMD64BitのX64系CPU
* = その他のCPU

864:デフォルトの名無しさん
16/09/17 22:23:10.28 dDTyJFeK.net
>>837
その日の書き込みはあなただけなのでそういうことです

865:デフォルトの名無しさん
16/09/18 20:23:43.58 epT5qit0.net
RichEditコントロールにユニコード文字を含んだ文字列をEM_SETTEXTEXで追加したら文字のフォントが変わってしまう
EM_STREAMINでも同じ現象が起こる
これってどうやったらフォントがRichEditに設定したフォント(等幅フォント)のまま追加できる?
追加した文字列(仮にTest ? Test)だけフォントが変わる ?はハートとかね

追加後にフォントを再設定してもハートだけ文字幅が他とは違


866:うし UNDOにフォント設定も含まれるから今度はそれを防ぐ方法が無くて詰んでる ここの人ならどうやって解決する? ちなみにRichEdit内で「Test ? Test」を入力してそれをコピペ(WM_COPY WM_PASTE)した時の動作が理想



867:デフォルトの名無しさん
16/09/18 23:37:11.23 1b9LKm5P.net
>>841
馬鹿には無理

868:デフォルトの名無しさん
16/09/19 00:31:56.15 pgxpd79F.net
コピペシミュ

869:デフォルトの名無しさん
16/09/19 00:35:10.37 pgxpd79F.net
入力しみゅ

870:デフォルトの名無しさん
16/09/19 08:45:50.92 nr8fG4n4.net
>>843-844
そういうのしかないんかな
ありがとう

871:デフォルトの名無しさん
16/09/19 11:14:17.03 d/dsjAXw.net
>>841
俺も少し困ってるけど長らく放置してる 多分同じ現象だろう
EM_SETLANGOPTIONS と IMF_DUALFONT を使って直せるらしいんだが
俺のは上手く行かなかった

872:デフォルトの名無しさん
16/09/19 11:17:24.74 d/dsjAXw.net
いや違うのか
最初からその文字を持ってるフォントを選んでおけばそれで済むんじゃないの?

873:デフォルトの名無しさん
16/09/19 11:59:01.12 nr8fG4n4.net
>>847
1, 手入力
2, 同じコントロール内でWM_COPY, WM_PASTE
3, SETTEXTEX, EM_STREAMIN

等幅フォントに一番最初に設定
→ 1, 問題無い (この時点でフォント設定も問題無い)
→ 2, 問題無い
→ 3, フォントがおかしくなる (UNICODE指定もしてある)

同じフォント設定にしたメモ張で同じ文字列を入力してCtrl+C
→RichEditへCtrl+V 3と同じ問題発生

こんな感じ
URLリンク(i.imgur.com)

874:デフォルトの名無しさん
16/09/19 12:01:55.23 nr8fG4n4.net
あぁごめん
フォント再指定後ってのは
SETTEXTEX, EM_STREAMINでおかしくなった奴に対して指定したらこうなるって意味ね

875:デフォルトの名無しさん
16/09/19 17:04:20.90 zU29XWLW.net
2、3年前は荒らしも多かったけど、まだまともな回答者も多かった。
今は荒らしもまともな回答者もいなくなって、
>>843,>>846みたいな気色の悪い奴が自己顕示欲を満たすだけの場になってしまった。
どうしてこうなった。

876:デフォルトの名無しさん
16/09/19 17:17:06.88 K5hghQdn.net
>>850
>どうしてこうなった。
自己顕示欲を満たすだけの気色の悪い>>850みたいなのがいるからじゃね

877:デフォルトの名無しさん
16/09/19 17:26:33.45 x6oYh1MF.net
じゃあウザいだけです時代に戻そうか

878:デフォルトの名無しさん
16/09/19 17:43:22.23 VrFlYlJN.net
Win32APIが枯れていて、不具合が発生していない。
使用ユーザーも熟知していて、質問する必要がない。

理想的な状態?

879:デフォルトの名無しさん
16/09/19 18:57:36.68 4df2MR9Z.net
倦怠期

880:デフォルトの名無しさん
16/09/20 01:18:12.66 0Myqw3Nm.net
>>852
そこだけ戻したところでまともな回答者はもう戻ってこないだろw

881:デフォルトの名無しさん
16/09/20 08:34:28.90 KnjyA1F8.net
>>849
こっちでも再現できたわ
Terminal 14が画像と同じになった
他の等幅フォントでも再現されたけど
MS ゴシック、MS 明朝なら大丈夫みたい

メモ帳では再現されないのは謎だけどな

882:デフォルトの名無しさん
16/09/21 18:38:12.75 2/iKekT4.net
>メモ帳では再現されないのは謎だけどな
メモ帳のソースコードに書いてある

883:デフォルトの名無しさん
16/09/21 20:53:42.44 WRzjrZbQ.net
>>841
c#使い始めたら便利なのでもうwin32でgui作成する気にはなれないんですが今でもwin32使う理由は何?

884:デフォルトの名無しさん
16/09/21 21:03:14.46 O8zsEtDk.net
GetMessageループで小細工をしたい時など
C#でGetMessageループにフック噛ます方法があるなら教えてよ
とても興味深い

885:デフォルトの名無しさん
16/09/21 22:56:28.21 SIQDhLUp.net
>>859
小細工って、ウインドウププロージャの書き換えで


886:はできないこと?



887:デフォルトの名無しさん
16/09/21 23:19:35.96 O8zsEtDk.net
GetMessageじゃなくてPeekMessageにするとか
TranslateMessageの呼び出しを止めるとかはウィンドウプロシージャからでは不可能

888:デフォルトの名無しさん
16/09/21 23:43:59.21 VY6IcR6g.net
>>861
そういうのって、どういう時に使うの。

889:デフォルトの名無しさん
16/09/21 23:46:34.12 YZL270gC.net
メインとループなんて毎回コピペだが、
いざとなったら書き換えられるという安心感がある
そして永遠に書き換えない

890:デフォルトの名無しさん
16/09/22 02:22:17.57 BRx1Bv8g.net
win32でGuiが大変とか言ってる人ってリソースファイル使わずに作ろうとしてるとか?

891:デフォルトの名無しさん
16/09/22 02:24:52.16 ds9UeOri.net
>>864
ばーか

892:デフォルトの名無しさん
16/09/22 02:30:08.84 saKRBDTg.net
>>864
誰が大変なんて言った?
情報が多い分、楽だよな

893:デフォルトの名無しさん
16/09/22 02:39:21.74 mitwVgUL.net
C#が便利でwin32に戻れないって、かつてVBやMFC使いも言ってましたね

894:デフォルトの名無しさん
16/09/22 05:33:10.99 gyLxLatL.net
かつてのVBはおまじない宣言してAPI叩かないと使い物にならなかったわけだが

895:デフォルトの名無しさん
16/09/22 06:00:54.98 saKRBDTg.net
>>867
そうか?
お前さんだけじゃね?

c#の何が便利なの

896:デフォルトの名無しさん
16/09/22 09:08:20.92 enqfOrPh.net
>>858
win32使ってないのにこのスレにいる理由は何?
便利(win32は難しすぎた)だろw

897:デフォルトの名無しさん
16/09/22 11:54:27.95 wKjxcHVF.net
>c#使い始めたら便利なのでも
使い始める前まではWin32API使っていたんだろ

>今でもwin32使う理由は何?
C#を使い始めていないということだ

898:デフォルトの名無しさん
16/09/22 12:50:29.63 ad+iWZXx.net
>>858
Win32でリソーススクリプトを直叩きしてGUIを作るの楽しいよ
あとWin32API使える俺スゲーと思えるとかしょーもないアホな理由

と言いつつ最近はGUIのアプリやツールの制作ではC#ばかり使ってるわ
やっぱ動けばいいものをサクッと手早く作りたいときはC#だな

899:デフォルトの名無しさん
16/09/22 13:06:17.33 enqfOrPh.net
メインとループ毎回コピペって
プロジェクト作成時に最少構成自動で作成するようにしてないんか?
VC++Expressですらできるのに

900:デフォルトの名無しさん
16/09/22 13:36:00.69 ad+iWZXx.net
>>873
俺は.NETのFormクラス風のWndクラス作ってあるからそれ使う
そのほかバージョン情報クラスとかいろいろ簡単に使えるクラスを作って置いてる

901:デフォルトの名無しさん
16/09/22 14:14:25.34 sh3eyHdy.net
俺はむしろ反対で
中途半端なラップなぞ要らないという判断

定型文を登録しておいて
いつでもクリップボードに転送できる系のアプリ
とか使うとよいと思うよ

902:デフォルトの名無しさん
16/09/22 15:03:14.08 Ob4qBdWH.net
>プロジェクト作成時に最少構成自動で作成

コピペでも対して手間変わらんし
VS/VC++でGUIからlibpathとかいじるの面倒だし

903:デフォルトの名無しさん
16/09/22 15:17:17.17 enqfOrPh.net
>>876
いやプロジェクト作成時に選択するテンプレート自体を自分で作るから
path変更すらいらん

904:デフォルトの名無しさん
16/09/22 16:40:58.43 c0uylKlH.net
>>871
C#でもクラスライブラリが用意されていない機能で必要ならWin32API使うぞ。
GUI作るだけならほとんど出番はないけど。

905:デフォルトの名無しさん
16/09/22 19:59:29.23 jmlT4pdX.net
カスタムウィザードって作れなかったか?

906:デフォルトの名無しさん
16/09/23 08:44:30.83 hdVg5emL.net
>>879
それはExpressじゃ無理だな
Expressは自分でフォルダ構成してテンプレート保存場所に配置する必要がある
言い換えればExpressでも自分でやれば後はカスタムウィザードみたいな事ができる

907:デフォルトの名無しさん
16/09/23 11:49:16.53 Bla+oVr/.net
>>862
俺の質問に答


908:えたら答えてやるよ C#でできるのか?できないのか?



909:デフォルトの名無しさん
16/09/23 11:51:09.00 Bla+oVr/.net
Pythonスレにも書いたけど、リモートプロセスに侵入してウィンドウをサブクラス化するなんてのも
C#ではやれない芸当でしょうね

910:デフォルトの名無しさん
16/09/23 13:08:18.98 rYmTtd8q.net
>>881
それ(>>861)は出来ないかな。


>>882
出来るけど。

Cross Process Subclassing
URLリンク(www.codeproject.com)

911:デフォルトの名無しさん
16/09/23 13:28:57.30 cTcmD9zg.net
C#ちゅーかどのGUIフレームワーク使うのかにもよるんじゃね
WinFormsならMFCライクな挙動のApplication.Idleがあるからその中で
PeekMessage呼び出しつつアクティブなゲームループ回したりとか

912:デフォルトの名無しさん
16/09/23 14:32:50.11 1AYxo37g.net
>>883

他人が作ったものをドヤ顔で「出来るけど」ってwwww

913:デフォルトの名無しさん
16/09/23 14:39:27.60 laz5P8lZ.net
Cross Process Subclassing
URLリンク(www.codeproject.com)

これ見えてるコードはC#に見えないけど、C#のプロジェクトなのか?

914:デフォルトの名無しさん
16/09/23 14:50:27.96 e3KOFFwu.net
>>886
どうしてC#だと思った?

915:デフォルトの名無しさん
16/09/23 15:23:09.32 laz5P8lZ.net
>C#ではやれない芸当でしょうね
と言ってる>>882に対してドヤ顔で
>出来るけど。
ってるじゃん

916:デフォルトの名無しさん
16/09/23 18:14:16.83 MUYZ+xZC.net
なんだ?
Win32板がC#板になってる。

まあいいけど。

917:デフォルトの名無しさん
16/09/23 18:14:40.82 MUYZ+xZC.net
板じゃなくってスレだった、すまん。

918:デフォルトの名無しさん
16/09/23 20:00:27.86 laz5P8lZ.net
ID:rYmTtd8qは逃亡?

919:デフォルトの名無しさん
16/09/23 20:03:46.92 GYZZDVTI.net
>>881
WinFormsのメッセージループはそもそもC#で実装されてるので、同じことを実装すればできるはず
それをやる意味があるかは知らん

>>882
C#だけではおそらくできない(プロセスメモリに直に機械語を書き込むとかならできるかもしれんが・・・)
C++/CLIを経由するか、C言語でDLLを書けばできる

C#は高レイヤー用だから、低レイヤーな部分はC言語が必要になってくる
ただ、低レイヤーを扱うソフトでもGUI部分はC#を使ったほうが楽な場合も多いと思う

920:デフォルトの名無しさん
16/09/23 21:06:06.73 rYmTtd8q.net
>>886,887
ご指摘通り、それ全部Nativeだった。orz

C#で直接他プロセスをフックするコードは書けないので、Nativeコードを経由する必要があるけど(>>892)、
その部分で上記サンプルコードで作るDLLが使用できるよ。

C#側はこんな感じ。(フックされる側もする側も、32bitじゃないと多分動かない)
URLリンク(ideone.com)

921:デフォルトの名無しさん
16/09/23 21:14:04.51 laz5P8lZ.net
>>893
3行目以降はみんなわかってるから書かないで良いよ

922:デフォルトの名無しさん
16/09/24 21:52:53.12 M/J9F64h.net
まあまあ、そこまで書かなくても・・・

923:デフォルトの名無しさん
16/09/26 14:31:52.90 OBYZqfWW.net
IPAddressコントロールのメニューってどうやったら消せる?
サブクラス化してもWM_CONTEXTMENUが来ない

924:デフォルトの名無しさん
16/09/26 22:48:08.03 TukXLw2X.net
つDisappearMenu()

925:デフォルトの名無しさん
16/09/27 00:13:33.87 /Yg2QTqO.net
>>896
Spy++

926:デフォルトの名無しさん
16/09/27 12:46:31.44 uV/py0I0.net
win32apiはCで使うもの、それともC++でやってる?

猫レベルなので、次が不明でさまよっています。

927:デフォルトの名無しさん
16/09/27 12:53:47.21 lZ2V1Ihe.net
>>899
CでやってるとC++のクラスを使いたくなるけど
レールに沿ってやるより自分がやってみたい事を実現するために必要な事を1つ1つやっていった方がいい気もする

928:デフォルトの名無しさん
16/09/27 13:09:24.50 8ZLpHgGV.net
>>899
C++でやんなきゃCOMでウザい事になるぞ

929:デフォルトの名無しさん
16/09/27 13:10:17.87 pAYH5Jb4.net
ならないよ

930:デフォルトの名無しさん
16/09/27 13:48:32.20 cO8I5ivP.net
C++をBetter Cとして使ってりゃそのうち使い分ける

931:デフォルトの名無しさん
16/09/27 17:00:00.51 JUhPFI9j.net
>>902
俺もなると思うが?
生のCはやっちゃダメせいぜい教育用くらい

932:デフォルトの名無しさん
16/09/27 17:37:41.25 lPJarC9l.net
C++なんてウンコ言語はCOM使う時くらいだな
何通りも初期化記法があったり黒魔術が多過ぎる

933:デフォルトの名無しさん
16/09/27 17:37:44.77 PAHsg1th.net
C#のが楽 Win32で十分

くらいの差であって、ウザいかどうかはその人と仕事内容次第

934:デフォルトの名無しさん
16/09/27 18:29:05.45 bFdF3zA0.net
>>906
COM は C# の方が面倒だわ
microsoft.office.interop.* をもっと真面目に作ってくれ

935:デフォルトの名無しさん
16/09/27 18:30:49.38 uV/py0I0.net
898です。
独学で猫の本程度、作れるようになりました。

生産性を考え、C#,C++,Java,python,rubyとかを次に考えています。

拡張子がcppで、comも少しやっています。

おすすめ言語ありますか?
ついでに本も。

ソフト屋じゃないのに、やっつけデータ処理が、必要なんです。

936:デフォルトの名無しさん
16/09/27 18:34:20.96 uV/py0I0.net
日本語変ですね。

お礼もない。

若くないので、コストを考えました。

937:デフォルトの名無しさん
16/09/27 18:41:58.58 w5gpFchP.net
Win32APIについて聞きたいならこのスレでいいが
やっつけ仕事に適した言語が知りたいならこのスレより
スレ立てるまでもない質問はここで~
の方が適切

938:デフォルトの名無しさん
16/09/27 18:48:19.76 uV/py0I0.net
ホントですね。
失礼しました。

win32apiから、C++なら便利?と考えておるうちにずれていました。

939:デフォルトの名無しさん
16/09/27 19:17:10.39 +Hq6Z55/.net
>>905
バカ

940:デフォルトの名無しさん
16/09/27 20:18:13.60 lCQO94l1.net
Win32は修羅の道
思いとどまれ踏み込むな
迷い込んだら覚悟を決めろ

941:デフォルトの名無しさん
16/09/27 21:33:50.34 w5gpFchP.net
覚悟完了

942:デフォルトの名無しさん
16/09/27 22:01:03.88 G7SFDpUA.net
戦略的撤退

943:デフォルトの名無しさん
16/09/29 01:56:16.40 JU45VBWv.net
>>905
GDI+「私を忘れてないかな?」

944:デフォルトの名無しさん
16/09/29 18:41:10.44 M0rjTDUo.net
win32apiならC++よりCからの方が使い易い

945:デフォルトの名無しさん
16/09/29 19:45:58.02 LDkzfJUX.net
SkyTelコワイ

946:デフォルトの名無しさん
16/10/01 08:23:59.69 LRewiCIS.net
>>916 ラッパ

947:デフォルトの名無しさん
16/10/02 13:09:10.02 4o4y3Pue.net
のマークの

948:デフォルトの名無しさん
16/10/02 13:29:05.78 GxRMdu/c.net
まさつゆまる

949:デフォルトの名無しさん
16/10/02 13:59:01.98 GX41vvMR.net
虫歯に効くのは木クレオソートが強い防腐作用や殺菌作用があるため
神経に対して初めは少し刺激が起こりますが次第に知覚麻痺して痛みを感じなくなっていきます

950:デフォルトの名無しさん
16/10/02 17:17:41.77 2/1u9rrl.net
隠しAPIのDwmGetDxSharedSurface()ってGetDesktopWindow()のハンドル指定してもテクスチャ取得できないのかな?
例えばIEとかのハンドル指定すれば問題なくテクスチャ取得まで行けるんだが・・・

951:デフォルトの名無しさん
16/10/02 17:52:00.53 GX41vvMR.net
DwmGetDxSharedSurface(NULL)

952:デフォルトの名無しさん
16/10/06 08:03:39.04 2kYP0kDB.net
.NETは.NET Frameworkがいる上に起動が遅いのが難点
特に頻繁に起動・終了するツールの開発には向かない

953:デフォルトの名無しさん
16/10/06 08:13:43.59 y1wzqO45.net
20年近く前はそう言われてたな

954:デフォルトの名無しさん
16/10/06 08:44:16.97 LW7zvFbD.net
>>925
よお老害

955:デフォルトの名無しさん
16/10/06 09:53:11.69 BiGan9Dw.net
>>925
Windows Updateをきちんと適用していれば、.Net Frameworkはインストールされてるぞ。
もはや、インストーラーに含める必要もなくなった。
起動時間は、事前コンパイルしとけば大幅に改善される。

956:デフォルトの名無しさん
16/10/06 10:01:20.19 BiGan9Dw.net
>>928の起動時間は1回目のね
元々2回目以降の起動はコンパイル結果がキャッシュされてるからそんなに遅くない。

957:デフォルトの名無しさん
16/10/06 10:33:07.96 kdCvlbXg.net
なんで急にこんな話になったのか分からんが、とりま20年近くも歴史ないわ。
あと、.NETがうんこじゃなくなったのはWin8に搭載された4.5から。
ここ4年の話で、それ以前はクソ&クソ。

958:デフォルトの名無しさん
16/10/06 12:27:21.91 LW7zvFbD.net
>>930
具体的によろしく

959:デフォルトの名無しさん
16/10/06 12:53:11.51 +tO9yjwe.net
.NETの思想って、利用者の端末機に負担をかけない様に
サービス可能なサーバーに情報を渡して、答えを貰うんだった。
回線の高速化や端末機の普及で、ローカルホスト通信で済ませる様になり
現在に至っている。

もう少しマイクロソフトがIISに力を入れてくれれば
ローカルホスト通信を使わなくなるのだろうね。

960:デフォルトの名無しさん
16/10/06 19:11:09.40 2kYP0kDB.net
>>929
ネイティブなら一瞬で起動するようなアプリでも.NETだとNgen使っても体感できるレベルで(数百msec以上)待たされる
起動に数秒かかることが許される規模のアプリであれば.NETでもいいけど
インタプリタでも一瞬で終わるような処理を.NETで実装したら実行時間の無駄
Javaも同じ事が言えるけどね。動き出せば速いけど動くまでが遅い

これは2年ほど前に配布を考慮した気軽に使えるGUIツール開発プラットフォームを探した時に出た結論

961:デフォルトの名無しさん
16/10/06 21:06:40.44 JthKKgNo.net
ふーん
お宅の言う結論ってケツの穴の論理と大差なさそうだね

962:デフォルトの名無しさん
16/10/07 04:23:54.50 HwYDbl3n.net
もう新規案件をWin32ネイティブで開発することは少なくなったな
WTL/ATLを気に入ってよく使ってた

963:デフォルトの名無しさん
16/10/07 17:22:23.22 lKepYBPc.net
#include <ws2tcpip.h>
しても inet_pton が宣言されてねぇと叱られる('⊿`)

964:デフォルトの名無しさん
16/10/07 17:27:35.32 nw13XKq1.net
ユニコードビルドしてると使えないとか?もしくはInetPton

965:デフォルトの名無しさん
16/10/07 17:51:19.48 ah4nbj/y.net
#include <ws2tcpip>

966:デフォルトの名無しさん
16/10/07 19:03:39.31 lKepYBPc.net
お、反応してくれてありがとう

VC2015 Windows Kit 8.1 デフォルトのままUNICODE使用
#include <winsock2.h>
#include <ws2tcpip>
#include <ws2tcpip.h>
#include <arpa/inet.h>
統合環境のプロジェクトの外部依存関係にある ws2tcpip.h を開くと inet_pton InetPtonW 宣言部分はカラー表示されていて
#if で無効化されてる気配も無い けど
'inet_pton' 識別子が見つかりませんでした
x86 x64 Release Debug 全部
(ってのを最初に書けよって話だな すんません

コンパイラオプション /P でプリプロセス後の状態を見たら inet_pton InetPtonW 宣言部分は無かった

なんでやねんと思ったら

#if 0 //[
#include <windows.h>
  ・・・
#include <ws2tcpip.h> //ここに足してた
#else //][
#include <windows.h>
  ・・・
#endif //]

よそ様のコードの保守は大変ですな
外部依存関係 に表示しないで欲しいのですが

ごめんなさいごめんなさい 吊ってきます

967:デフォルトの名無しさん
16/10/08 12:28:41.20 0jaJMPXG.net
自分の無能をよそ様のせいにすんなボケ

968:デフォルトの名無しさん
16/10/08 12:34:16.03 0jaJMPXG.net
次です

Win32API質問箱 Build123
スレリンク(tech板)

969:デフォルトの名無しさん
16/10/11 16:41:23.69 WucPD6lR.net
縦書きのAPI(CreateFont、GetTextMetrics、GetGlyphOutline)で質問です。

CreateFont第三引数に回転値2700を設定後、
GetGlyphOutlineを使うとき、描画座標位置と、送り幅と送り高さの取得の値はどうなるのでしょうか?
フォントは、"@MS ゴシック"を使っています。

横書き通常だと下記のコードで問題なく値が取得できるのですが、縦書きだとうまく動作しません。
offsetX = gm.gmptGlyphOrigin.x;
offsetY = tm.tmAscent - gm.gmptGlyphOrigin.y;
nextWidth =gm.gmCellIncX;
nextHeight=tm.height;

CreateFont、GetTextMetrics、GetGlyphOutlineを使うコードは次のようにしています。何か設定がおかしいのでしょうか?
hFont = CreateFontW(100,50,2700,0,
FW_REGULAR,FALSE,FALSE,FALSE,SHIFTJIS_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,
PROOF_QUALITY,FIXED_PITCH | FF_MODERN,L"@MS ゴシック");
oFont=(HFONT)SelectObject(hdc,hFont);
GetTextMetrics(hdc, &tm);
CONST MAT2 mat = { { 0,1 },{ 0,0 },{ 0,0 },{ 0,1 } };
GetGlyphOutlineW(hdc, wch, GGO_GRAY4_BITMAP, &gm, 0, NULL, &mat);

970:デフォルトの名無しさん
16/10/11 17:16:34.58 QeFd4z39.net
縦書きだとyが変わるんじゃね

971:デフォルトの名無しさん
16/10/11 18:16:44.11 WucPD6lR.net
フォントサイズ100で"あ"を出力した結果
横0/縦0/縦2700
gmBlackBoxX 90 80 80 *
gmBlackBoxY 80 90 90 *
gmptGlyphOriginX 5 13 -1 *
gmptGlyphOriginY 79 81 -5 *
gmCellIncX 10 100 0 *
gmCellIncY 0 0 100 *
tmHeight 100 100 104 *
tmAscent 86 86 88 *
tmDescent 14 14 16 *
tmInternalLeading 0 0 4 *
tmExternalLeading 0 0 0
tmAveCharWidth 50 50 50
tmMaxCharWidth 197 197 197
tmWeight 400 400 400
tmOverhang 0 0 0
tmDigitizedAspectX 96 96 96
tmDigitizedAspectY 96 96 96
tmItalic 0 0 0
tmUnderlined 0 0 0
tmStruckOut 0 0 0
tmPitchAndFamily 54 54 54
tmCharSet 128 128 128
横0は "MS ゴシック"  CreateFontの第三引数 0  
縦0は "@MS ゴシック" CreateFontの第三引数 0 
縦2700は "@MS ゴシック" CreateFontの第三引数 2700
APIは、ややっこしい出力してますねぇ。。
縦2700でTextOutすると右上が文字の原点に移動するっぽいのでそれ考慮して計算するのかなぁ。

972:デフォルトの名無しさん
16/10/11 20:10:04.56 fRcBIrce.net
>>928
きちんと無駄に.Netは更新しないようにしてるんだよなぁ…

973:デフォルトの名無しさん
16/10/12 11:31:26.15 Gd/C/AAX.net
>>943
縦2700だとtm,gmの概念がわからなかったので、縦0で縦フォント作ってから、画像を270度回転してtm,gm辻褄を合わせて描画したら安定。
XとYの概念が入れ替わって混乱した。

974:デフォルトの名無しさん
16/10/12 13:51:15.72 MITJcbWv.net
>>946
無理矢理つじつま合わせすると(例えば縦横の座標入れ替え)うまくいくのは90度単位の回転のみで、
45度とかの場合は破綻するでしょ。
943 の話はベースライン座標をを270度回転させて求めないとうまくいかないと思う。

975:デフォルトの名無しさん
16/10/12 14:20:20.43 CGbCriuU.net
>MSはこんなのまで用意してくれているからな
>URLリンク(github.com)
>低脳のおもりは大変だ

976:デフォルトの名無しさん
16/10/12 17:31:03.60 Gd/C/AAX.net
>>947
縦読みだけなら90度回転ベースの270度(上下左右入れ替えと、オフセット計算)で仕様は満たされますが、45度とか要求となると別途手間かかりそうですね。
文字列をテクスチャーとかに描画してから回転したほうが簡単そう。

977:デフォルトの名無しさん
16/10/12 17:33:12.25 aj5TKozK.net
ある対象ファイルが他アプリケーションから開かれている否かはどうやって知れますか?

978:デフォルトの名無しさん
16/10/12 17:39:22.99 NnJ6rK8J.net
enumprocess->openprocess->zwqueryobject

979:デフォルトの名無しさん
16/10/12 17:44:09.42 aj5TKozK.net
全プロセス舐めなきゃいけないんですか?

980:デフォルトの名無しさん
16/10/12 17:44:16.63 Gd/C/AAX.net
>>950
この編参考にならない?試してないけどな。

_fsopen(で _SH_DENYRWっていうオプションがあるっぽい
URLリンク(msdn.microsoft.com)

「アプリケーションからファイルの排他オープンが可能かどうかを確認する一番確実な方法は、そのファイルをオープンしてみることです」
と書かれてる
URLリンク(support.microsoft.com)

981:デフォルトの名無しさん
16/10/12 17:45:51.04 bqn+ql9d.net
Win32API質問箱 Build123
スレリンク(tech板)

982:デフォルトの名無しさん
16/10/12 17:47:37.52 bqn+ql9d.net
>>953
>お祝いに参加しましょう

なんだこれω

983:デフォルトの名無しさん
16/10/12 18:03:38.18 g+0wIc73.net
「お誕生日おめでとう」
なんだろうけど、ちょっと恥ずかしい

984:デフォルトの名無しさん
16/10/13 22:45:03.69 pWVjxgqB.net
VK_NUMPAD6とVK_RIGHTなどのキーが同じものとして扱われてしまうのですが
どうすれば使い分けられるのでしょうか

985:デフォルトの名無しさん
16/10/14 09:38:05.35 DLzZN/YU.net
>>957
NumLock ON/OFFは?

986:デフォルトの名無しさん
16/10/15 01:01:26.59 qV7dku2N.net
>>957
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
extended keyの説明見てみ

987:デフォルトの名無しさん
16/10/15 18:25:43.89 NU1xJ4eI.net
>>958
やりましたけど、同じでした

>>959
なんかむずかしいすぎてついていけません。
KEYEVENTF_SCANCODEではなく
KEYEVENTF_EXTENDEDKEYを使うとか?
過去ログも検索で見ましたがむずかしいですね

988:デフォルトの名無しさん
16/10/21 17:44:09.25 KvD6T+Uq.net
コンソールをリサイズした状態でのバッファ表示についての質問です。

COORD wh = {80, 50};
SMALL_RECT area = {0, 0, 79, 49};
SetConsoleScreenBufferSize(GetStdHandle(-11), wh);
SetConsoleWindowInfo(GetStdHandle(-11), TRUE, &area);

で 80x50 のコンソールになるのですが、その後

CHAR_INFO b[50 * 80];
COORD p = {0, 0};
b[(0-79と0-49で行と列を計算)].Char.AsciiChar = '適当';
b[(上と同じ)].Attributes = 適当;
WriteConsoleOutputA(GetStdHandle(-11), b, wh, p, &area);
を何度か繰り返すと、25行以内(0-79と0-24の範囲)だけに書き込んでいるときは表示が正常なのですが、
26行以�


989:�(0-79と25-49の範囲)書き換えると訳の分からない表示になります。 ()の中は (y*80+x) みたいな計算をしています。 ScrollConsoleScreenBuffer(GetStdHandle(-11), &area, NULL, p, b); を入れると多少表示は変化するのですが、期待する結果にはなりませんでした。 何か勘違いしているのかも知れませんが、解決のお手伝いください。



990:デフォルトの名無しさん
16/10/21 19:21:16.29 zTYixhM/.net
>>961
bが自動変数で初期化されていないのでゴミデータが出力されているだけでは?

991:デフォルトの名無しさん
16/10/22 10:46:34.18 O48rD9qT.net
原因が判りました。
50行目以降のアドレスに書き込んでました。
50+n行目に書くとn行目の不特定な列に書き込まれるようです。

992:デフォルトの名無しさん
16/10/23 10:31:21.49 CGzeXgZh.net
馬鹿には無理

993:デフォルトの名無しさん
16/10/23 10:36:05.47 B3h+V7cB.net
>>964
自虐ネタ乙

994:デフォルトの名無しさん
16/10/23 13:06:59.50 Qt7KzQsX.net
>>965
ぐぬぬ

995:デフォルトの名無しさん
16/10/23 14:40:22.78 CpFScuJ1.net
OSのバージョンでビルド番号を調べるAPIはどれですか

996:デフォルトの名無しさん
16/10/23 14:50:12.71 Qt7KzQsX.net
>>967
普通にGetVersionExじゃあかんの?

997:デフォルトの名無しさん
16/10/23 14:54:32.90 CGzeXgZh.net
>>968
最近のOSだと使わない方が良いみたいね

998:デフォルトの名無しさん
16/10/23 21:07:47.59 GtfQU5YV.net
取得はその関数で構造体の変数値を直接比較せず専用関数使えってことでしょ

999:デフォルトの名無しさん
16/10/24 09:04:03.53 fQGKWk+u.net
比較しないでただ取得するだけならそれでいいんじゃね

1000:デフォルトの名無しさん
16/10/24 10:32:35.70 9xygNeDa.net
>>969
manifestを書くと解決するらしいが非推奨

1001:デフォルトの名無しさん
16/10/24 10:53:15.41 RAJtJMqi.net
manifest書いた上でVerifyVersionInfo

1002:デフォルトの名無しさん
16/10/28 06:29:16.08 iv1fMup0.net
今はWin32_OperatingSystem一択

1003:デフォルトの名無しさん
16/10/28 20:48:37.18 71rg+6zF.net
>>974
WMIは初回が遅すぎるんだよなぁ。

1004:デフォルトの名無しさん
16/10/28 21:04:02.29 ceXQtcCi.net
WMIってヘルプが嘘多いのとバージョンアップで変わってるから困る

1005:デフォルトの名無しさん
16/11/02 02:06:35.91 stLp85Rp.net
virtualallocってディスクに予約、確保するの?

1006:デフォルトの名無しさん
16/11/02 03:29:42.91 ttxNZg5R.net
足りないときにやってくれるだけで毎回ディスク使う訳じゃない

1007:デフォルトの名無しさん
16/11/03 17:15:22.49 M9JiIIXY.net
このスレでは興味薄そうだけど

URLリンク(github.com)
これが最初から欲しかった
URLリンク(github.com)
CXの言語仕様策定した連中は無能すぎ

1008:デフォルトの名無しさん
16/11/03 18:06:39.24 KRq5Cur1.net
うんいらない

1009:デフォルトの名無しさん
16/11/03 18:21:49.22 jnPNi8zj.net
> 978
ご苦労であった
下がってよいぞ

1010:sage
16/11/03 19:20:32.95 AWrr+PAw.net
URLリンク(www.youtube.com)

URLリンク(www.youtube.com)

1011:デフォルトの名無しさん
16/11/03 19:24:45.18 KRq5Cur1.net
梅津

1012:デフォルトの名無しさん
16/11/03 19:29:23.50 Vul1aP3I.net
RTってwin32apiの後継?

1013:デフォルトの名無しさん
16/11/03 19:29:39.16 KRq5Cur1.net
全然別物

1014:デフォルトの名無しさん
16/11/03 19:31:46.62 KRq5Cur1.net
Win32
スレリンク(tech板)

WinRT
スレリンク(tech板)

1015:デフォルトの名無しさん
16/11/03 19:33:14.02 Vul1aP3I.net
>>985
じゃあ、なんでここに書き込むの?

1016:デフォルトの名無しさん
16/11/03 19:33:50.89 iYejUQc8.net
IE11 と Edge が同じか?って聞かれたら
ほとんどのひとが違う�


1017:ニ答えるだろ そのくらい違う



1018:デフォルトの名無しさん
16/11/03 19:35:10.91 KRq5Cur1.net
へ?

1019:デフォルトの名無しさん
16/11/04 02:08:02.90 wTo+5XZe.net
いい加減こっち埋めろよ

1020:デフォルトの名無しさん
16/11/04 03:27:27.88 e0uuer+h.net
ふんわりパンク

1021:デフォルトの名無しさん
16/11/04 04:37:04.72 UUBafTaz.net
うめ

1022:デフォルトの名無しさん
16/11/04 05:07:13.26 gpXDTSEe.net
edge ω

1023:デフォルトの名無しさん
16/11/04 07:55:58.21 aR9Unpf6.net


1024:デフォルトの名無しさん
16/11/04 10:23:48.39 eeUHQUQt.net
なぜ sprintf はあるのに sgets が無いのですか?

1025:デフォルトの名無しさん
16/11/04 10:28:47.54 e0uuer+h.net
int readnum = sscanf(src, "%*[^\n]", maxnum, dst);
だったかな
うろ覚え

1026:デフォルトの名無しさん
16/11/04 11:17:17.84 gpXDTSEe.net
これか
URLリンク(www.kijineko.co.jp)
もう忘れた

1027:デフォルトの名無しさん
16/11/04 17:32:12.45 xcPL+uad.net
フォームタイトル左のアイコンを消すAPI教えて下さい。
ちなみに、タイトル右のアイコン化等のボタンは表示したままでお願いします

1028:デフォルトの名無しさん
16/11/04 19:46:41.00 K7hL1M31.net
うめたて

1029:デフォルトの名無しさん
16/11/04 19:59:11.56 22qUZxEG.net
こんにちは

1030:デフォルトの名無しさん
16/11/04 19:59:39.65 22qUZxEG.net
さようなら

1031:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch